2 ** filelocStack.h (from slist_templace.h)
5 # ifndef FILELOCSTACK_H
6 # define FILELOCSTACK_H
8 abst_typedef /*@null@*/ struct
12 /*@reldef@*/ /*@relnull@*/ o_fileloc *elements;
15 /*@constant null filelocStack filelocStack_undefined; @*/
16 # define filelocStack_undefined (NULL)
18 extern /*@falsewhennull@*/ bool filelocStack_isDefined (filelocStack p_f) /*@*/ ;
19 # define filelocStack_isDefined(f) ((f) != filelocStack_undefined)
21 extern int filelocStack_size (/*@sef@*/ filelocStack p_s) /*@*/ ;
22 # define filelocStack_size(s) (filelocStack_isDefined (s) ? (s)->nelements : 0)
24 extern int filelocStack_includeDepth (filelocStack p_s);
25 extern void filelocStack_printIncludes (filelocStack p_s) /*@modifies g_warningstream@*/ ;
27 extern void filelocStack_clear (filelocStack p_s) /*@modifies p_s@*/ ;
29 extern /*@only@*/ filelocStack filelocStack_new (void) /*@*/ ;
30 extern /*@observer@*/ fileloc filelocStack_nextTop (filelocStack p_s) /*@*/ ;
33 filelocStack_popPushFile (filelocStack p_s, /*@only@*/ fileloc p_el)
36 extern /*@unused@*/ /*@only@*/ cstring filelocStack_unparse (filelocStack p_s) /*@*/ ;
37 extern void filelocStack_free (/*@only@*/ filelocStack p_s) ;
39 /*@constant int filelocStackBASESIZE;@*/
40 # define filelocStackBASESIZE MIDBASESIZE