]> andersk Git - splint.git/blob - src/Headers/initDeclNodeList.h
71b8c76b128d2625b0981101e94266159f953dae
[splint.git] / src / Headers / initDeclNodeList.h
1 /*
2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001.
3 ** See ../LICENSE for license information.
4 **
5 */
6
7 # ifndef INITDECLNODELIST_H
8 # define INITDECLNODELIST_H
9
10 typedef /*@only@*/ initDeclNode o_initDeclNode;
11
12 abst_typedef struct
13 {
14   int nelements;
15   int nspace;
16   /*@reldef@*/ /*@relnull@*/ o_initDeclNode  *elements;
17 } *initDeclNodeList ;
18
19 /*@iter initDeclNodeList_elements (sef initDeclNodeList x, yield exposed initDeclNode el); @*/
20 # define initDeclNodeList_elements(x, m_el) \
21    { int m_ind; initDeclNode *m_elements = &((x)->elements[0]); \
22        for (m_ind = 0 ; m_ind < (x)->nelements; m_ind++) \
23          { initDeclNode m_el = *(m_elements++); 
24
25 # define end_initDeclNodeList_elements }}
26
27 extern /*@only@*/ initDeclNodeList initDeclNodeList_new(void);
28 extern initDeclNodeList 
29   initDeclNodeList_add (/*@returned@*/ initDeclNodeList p_s, 
30                         /*@only@*/ initDeclNode p_el) ;
31
32 extern /*@only@*/ cstring initDeclNodeList_unparse (initDeclNodeList p_s) ;
33 extern void initDeclNodeList_free (/*@only@*/ initDeclNodeList p_s) ;
34
35 /*@constant int initDeclNodeListBASESIZE;@*/
36 # define initDeclNodeListBASESIZE SMALLBASESIZE
37
38 # else
39 # error "Multiple include"
40 # endif
41
42
43
44
This page took 0.025553 seconds and 3 git commands to generate.