]> andersk Git - splint.git/blob - src/Headers/lclTypeSpecNode.h
Initial revision
[splint.git] / src / Headers / lclTypeSpecNode.h
1 /*
2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2000.
3 ** See ../LICENSE for license information.
4 **
5 */
6
7 typedef enum 
8 {
9   LTS_TYPE, LTS_STRUCTUNION,
10   LTS_ENUM, LTS_CONJ
11 } lclTypeSpecKind;
12
13 typedef lclTypeSpecNode lcltsp;
14
15 typedef struct _lclconj
16 {
17   lcltsp a;
18   lcltsp b;
19 } *lclconj;
20
21 struct _lclTypeSpecNode {
22   lclTypeSpecKind kind;
23   qualList quals;
24   union {
25     /*@null@*/ CTypesNode type;
26     /*@null@*/ strOrUnionNode structorunion;
27     /*@null@*/ enumSpecNode enumspec;
28     lclconj conj;
29   } content;
30   int pointers;
31 } ;
32
33 /*@constant null lclTypeSpecNode lclTypeSpecNode_undefined; @*/
34 # define lclTypeSpecNode_undefined ((lclTypeSpecNode) 0)
35
36 extern /*@falsenull@*/ bool lclTypeSpecNode_isDefined (lclTypeSpecNode p_x) /*@*/ ;
37 # define lclTypeSpecNode_isDefined(x) ((x) != lclTypeSpecNode_undefined)
38
39 extern /*@null@*/ /*@only@*/ lclTypeSpecNode
40   lclTypeSpecNode_copy (/*@null@*/ lclTypeSpecNode p_n) /*@*/ ;
41
42 extern /*@only@*/ cstring 
43   lclTypeSpecNode_unparse (/*@null@*/ lclTypeSpecNode p_n) /*@*/ ;
44
45 extern /*@only@*/ cstring 
46   lclTypeSpecNode_unparseComments (/*@null@*/ lclTypeSpecNode p_typespec) /*@*/ ;
47
48
49
50
51
52
This page took 0.047701 seconds and 5 git commands to generate.