]> andersk Git - splint.git/blob - src/Headers/quantifierNodeList.h
Initial revision
[splint.git] / src / Headers / quantifierNodeList.h
1 /*
2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2000.
3 ** See ../LICENSE for license information.
4 **
5 */
6 # ifndef QUANTIFIERNODELIST_H
7 # define QUANTIFIERNODELIST_H
8
9 typedef /*@only@*/ quantifierNode o_quantifierNode;
10
11 abst_typedef struct _quantifierNodeList
12 {
13   int nelements;
14   int nspace;
15   /*@reldef@*/ /*@relnull@*/ o_quantifierNode  *elements;
16 } *quantifierNodeList ;
17
18 /*@iter quantifierNodeList_elements (sef quantifierNodeList x, yield exposed quantifierNode el); @*/
19 # define quantifierNodeList_elements(x, m_el) \
20    { int m_ind; quantifierNode *m_elements = &((x)->elements[0]); \
21      for (m_ind = 0 ; m_ind < (x)->nelements; m_ind++) \
22        { quantifierNode m_el = *(m_elements++); 
23
24 # define end_quantifierNodeList_elements }}
25
26 extern /*@only@*/ quantifierNodeList quantifierNodeList_new(void);
27
28 extern quantifierNodeList 
29   quantifierNodeList_add (/*@returned@*/ quantifierNodeList p_s, /*@only@*/ quantifierNode p_el);
30
31 extern /*@only@*/ cstring quantifierNodeList_unparse (quantifierNodeList p_s) ;
32 extern /*@unused@*/ void quantifierNodeList_free (/*@only@*/ quantifierNodeList p_s) ;
33
34 extern /*@only@*/ quantifierNodeList quantifierNodeList_copy (quantifierNodeList p_s) ; 
35
36 /*@constant int quantifierNodeListBASESIZE;@*/
37 # define quantifierNodeListBASESIZE SMALLBASESIZE
38
39 # else
40 # error "Multiple include"
41 # endif
42
43
44
45
This page took 0.041675 seconds and 5 git commands to generate.