2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
3 ** See ../LICENSE for license information.
7 # ifndef INITDECLNODELIST_H
8 # define INITDECLNODELIST_H
10 typedef /*@only@*/ initDeclNode o_initDeclNode
;
16 /*@reldef@*/ /*@relnull@*/ o_initDeclNode
*elements
;
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++);
25 # define end_initDeclNodeList_elements }}
27 extern /*@only@*/ initDeclNodeList
initDeclNodeList_new(void);
28 extern initDeclNodeList
29 initDeclNodeList_add (/*@returned@*/ initDeclNodeList p_s
,
30 /*@only@*/ initDeclNode p_el
) ;
32 extern void initDeclNodeList_free (/*@only@*/ initDeclNodeList p_s
) ;
35 # error "Multiple include"