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