]> andersk Git - splint.git/blame - src/Headers/functionConstraint.h
Renamed truenull nullwhentrue and falsenull falsewhennull
[splint.git] / src / Headers / functionConstraint.h
CommitLineData
3814599d 1/*
2** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001.
3** See ../LICENSE for license information.
4*/
5/*
6** functionConstraint.h
7*/
8
9# ifndef FCNCONSTRAINT_H
10# define FcNCONSTRAINT_H
11
12typedef enum
13{
ba45e1e4 14 FCT_BUFFER, FCT_METASTATE, FCT_CONJUNCT
3814599d 15} functionConstraintKind ;
16
17struct s_functionConstraint {
18 functionConstraintKind kind;
19 union {
20 /*@only@*/ constraintList buffer;
21 /*@only@*/ metaStateConstraint metastate;
ba45e1e4 22 struct { functionConstraint op1; functionConstraint op2; } conjunct;
3814599d 23 } constraint;
24} ;
25
26/*@constant null functionConstraint functionConstraint_undefined; @*/
27# define functionConstraint_undefined ((functionConstraint) NULL)
28
0e41eb0e 29extern /*@falsewhennull@*/ bool functionConstraint_isDefined (functionConstraint) /*@*/ ;
3814599d 30# define functionConstraint_isDefined(p_info) ((p_info) != NULL)
31
0e41eb0e 32extern /*@nullwhentrue@*/ bool functionConstraint_isUndefined (functionConstraint) /*@*/ ;
3814599d 33# define functionConstraint_isUndefined(p_info) ((p_info) == NULL)
34
35extern functionConstraint functionConstraint_copy (functionConstraint) /*@*/ ;
36
37extern functionConstraint
38functionConstraint_createBufferConstraint (/*@only@*/ constraintList) ;
39
40extern functionConstraint
41functionConstraint_createMetaStateConstraint (/*@only@*/ metaStateConstraint) ;
42
43extern bool functionConstraint_hasBufferConstraint (functionConstraint) /*@*/ ;
ba45e1e4 44extern bool functionConstraint_hasMetaStateConstraint (functionConstraint) /*@*/ ;
45
46extern functionConstraint
47functionConstraint_conjoin (/*@only@*/ functionConstraint, /*@only@*/ functionConstraint) ;
3814599d 48
ccf0a4a8 49extern /*@only@*/ constraintList functionConstraint_getBufferConstraints (functionConstraint) /*@*/ ;
50extern /*@only@*/ metaStateConstraintList functionConstraint_getMetaStateConstraints (functionConstraint) /*@*/ ;
3814599d 51
52extern cstring functionConstraint_unparse (functionConstraint) /*@*/ ;
53extern void functionConstraint_free (/*@only@*/ functionConstraint) ;
54
55# else
56# error "Multiple include"
57# endif
58
59
60
61
This page took 0.116434 seconds and 5 git commands to generate.