Various minor fixes for compiler/linter (other then splint itself) warnings.
[splint-patched.git] / src / Headers / metaStateExpression.h
blob18523103e7944666dbdb5b3d23ea622db295a27a
1 /*
2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
3 ** See ../LICENSE for license information.
4 */
5 /*
6 ** metaStateExpression.h
7 */
9 # ifndef METASTATEEXPRESSION_H
10 # define METASTATEEXPRESSION_H
12 struct s_metaStateExpression {
13 metaStateSpecifier spec;
14 /*@null@*/ metaStateExpression rest;
15 } ;
17 /*@constant null metaStateExpression metaStateExpression_undefined; @*/
18 # define metaStateExpression_undefined ((metaStateExpression) NULL)
20 extern /*@falsewhennull@*/ bool metaStateExpression_isDefined (metaStateExpression) /*@*/ ;
21 # define metaStateExpression_isDefined(p_info) ((p_info) != NULL)
23 extern /*@nullwhentrue@*/ bool metaStateExpression_isUndefined (metaStateExpression) /*@*/ ;
24 # define metaStateExpression_isUndefined(p_info) ((p_info) == NULL)
26 extern /*@notnull@*/ metaStateExpression
27 metaStateExpression_create (/*@only@*/ metaStateSpecifier) ;
29 extern /*@notnull@*/ metaStateExpression
30 metaStateExpression_createMerge (/*@only@*/ metaStateSpecifier, /*@only@*/ metaStateExpression) ;
32 extern /*@observer@*/ metaStateSpecifier
33 metaStateExpression_getSpecifier (metaStateExpression) /*@*/ ;
35 extern bool metaStateExpression_isMerge (metaStateExpression) /*@*/ ;
36 extern /*@observer@*/ metaStateExpression metaStateExpression_getRest (metaStateExpression) /*@*/ ;
38 extern metaStateExpression metaStateExpression_copy (metaStateExpression) ;
40 extern cstring metaStateExpression_unparse (metaStateExpression) /*@*/ ;
42 extern void metaStateExpression_free (/*@only@*/ metaStateExpression) ;
44 # else
45 # error "Multiple include"
46 # endif