]> andersk Git - splint.git/blob - src/Headers/pointers.h
Updated copyrights
[splint.git] / src / Headers / pointers.h
1 /*
2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
3 ** See ../LICENSE for license information.
4 */
5 # ifndef POINTERS_H
6 # define POINTERS_H
7
8 struct s_pointers {
9   qualList quals;
10   /*@null@*/ pointers rest;
11 } ;
12
13 /*@constant null pointers pointers_undefined; @*/
14 # define pointers_undefined ((pointers) NULL)
15
16 extern /*@nullwhentrue@*/ bool pointers_isUndefined (/*@special@*/ pointers p_e) /*@*/ ;
17 extern /*@falsewhennull@*/ bool pointers_isDefined (/*@special@*/ pointers p_e) /*@*/ ;
18
19 # define pointers_isUndefined(e) ((e) == pointers_undefined)
20 # define pointers_isDefined(e)   ((e) != pointers_undefined)
21
22 extern pointers pointers_create (lltok p_tok) /*@*/ ;
23 extern pointers pointers_createMods (lltok p_tok, /*@only@*/ qualList p_quals) /*@*/ ;
24 extern pointers pointers_createMt (mttok p_tok) /*@*/ ;
25 extern pointers pointers_createLt (ltoken p_tok) /*@*/ ;
26 extern pointers pointers_createModsLt (ltoken p_tok, /*@only@*/ qualList p_quals) /*@*/ ;
27 extern pointers pointers_createModsMt (mttok p_tok, /*@only@*/ qualList p_quals) /*@*/ ;
28 extern pointers pointers_extend (/*@returned@*/ pointers p_p1, /*@only@*/ pointers p_p2) /*@modifies p_p1@*/ ;
29 extern /*@observer@*/ pointers pointers_getRest (pointers) /*@*/ ;
30
31 extern int pointers_depth (pointers p_p) /*@*/ ;
32 extern cstring pointers_unparse (pointers) /*@*/ ;
33 extern void pointers_free (/*@only@*/ pointers) ;
34
35 # else
36 # error "Multiple include"
37 # endif
38
39
40
This page took 0.044431 seconds and 5 git commands to generate.