]> andersk Git - splint.git/blame - src/Headers/idDecl.h
Created html faq file to replace the faq.txt
[splint.git] / src / Headers / idDecl.h
CommitLineData
885824d3 1/*
c0de361f 2** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
885824d3 3** See ../LICENSE for license information.
4**
5*/
6/*
7** idDecl.h
8*/
9
10# ifndef idDecl_H
11# define idDecl_H
12
28bf4b0b 13struct s_idDecl
885824d3 14{
15 cstring id;
16 qtype typ;
28bf4b0b 17 functionClauseList clauses;
885824d3 18} ;
19
20/*@constant null idDecl idDecl_undefined; @*/
21# define idDecl_undefined ((idDecl) NULL)
22
0e41eb0e 23extern /*@falsewhennull@*/ bool idDecl_isDefined (idDecl p_t) /*@*/ ;
885824d3 24# define idDecl_isDefined(t) ((t) != idDecl_undefined)
25
26extern void idDecl_free (/*@only@*/ idDecl p_t);
27extern /*@only@*/ idDecl
15b3d2b2 28 idDecl_create (/*@only@*/ cstring p_s, /*@only@*/ qtype p_t);
28bf4b0b 29
30extern /*@only@*/ idDecl
31 idDecl_createClauses (/*@only@*/ cstring p_s, /*@only@*/ qtype p_t,
32 /*@only@*/ functionClauseList p_clauses);
33
01a8227e 34extern /*@only@*/ cstring idDecl_unparse (idDecl p_d) /*@*/ ;
35extern /*@only@*/ cstring idDecl_unparseC (idDecl p_d) /*@*/ ;
36extern /*@exposed@*/ qtype idDecl_getTyp (idDecl p_d) /*@*/ ;
37extern void idDecl_setTyp (idDecl p_d, /*@only@*/ qtype p_c) /*@modifies p_d@*/ ;
38extern idDecl idDecl_expectFunction (/*@returned@*/ idDecl p_d) /*@*/ ;
e8b84478 39extern void idDecl_notExpectingFunction (idDecl p_d) /*@modifies p_d@*/ ;
01a8227e 40extern idDecl idDecl_replaceCtype (/*@returned@*/ idDecl p_d, ctype p_c) /*@modifies p_d@*/ ;
41extern idDecl idDecl_fixBase (/*@returned@*/ idDecl p_t, qtype p_b) /*@modifies p_t@*/ ;
42extern idDecl idDecl_fixParamBase (/*@returned@*/ idDecl p_t, qtype p_b) /*@modifies p_t@*/ ;
28bf4b0b 43
44extern void idDecl_addClauses (idDecl p_d, /*@only@*/ functionClauseList) /*@modifies p_d@*/ ;
45
885824d3 46extern ctype idDecl_getCtype (idDecl p_d) /*@*/ ;
47extern /*@exposed@*/ qualList idDecl_getQuals (idDecl p_d) /*@*/ ;
28bf4b0b 48extern /*@exposed@*/ functionClauseList idDecl_getClauses (idDecl p_d) /*@*/ ;
885824d3 49
50extern /*@dependent@*/ /*@observer@*/ cstring idDecl_getName (idDecl p_t) /*@*/ ;
51extern /*@observer@*/ cstring idDecl_observeId (idDecl p_d) /*@*/ ;
52extern void idDecl_addQual (idDecl p_d, qual p_q);
53
54# define idDecl_getName(t) idDecl_observeId(t)
55
56# else
57# error "Multiple include"
58# endif
59
60
This page took 0.070103 seconds and 5 git commands to generate.