2 ** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001.
3 ** See ../LICENSE for license information.
8 int wrapped; /* the number of matched parentheses around this term */
11 /*@reldef@*/ sort given; /* if term has a given sort */
12 sortSet possibleSorts;
13 bool error_reported; /* to prevent multiple sort checking error messages */
14 lslOpSet possibleOps; /* only for TRM_ZEROARY and TRM_APPLICATION */
15 /* should make a union but skip this for now */
16 /*@null@*/ nameNode name;
17 termNodeList args; /* in order */
18 /*@reldef@*/ ltoken literal; /* for TRM_LITERAL, TRM_UNCHANGEDALL,
19 TRM_SIZEOF, LCLvariableKIND,
20 TRM_CONST, TRM_ZEROARY */
21 /*@reldef@*/ storeRefNodeList unchanged; /* only for TRM_UNCHANGEDOTHERS */
22 /*@reldef@*/ quantifiedTermNode quantified; /* only for TRM_QUANTIFIER */
23 /*@reldef@*/ lclTypeSpecNode sizeofField; /* only for TRM_SIZEOF */
26 extern /*@falsenull@*/ bool termNode_isDefined (/*@null@*/ termNode p_t) /*@*/ ;
27 # define termNode_isDefined(t) ((t) != NULL)
29 extern termNode termNode_copySafe (termNode p_t) /*@*/ ;
30 extern cstring termNode_unparse (/*@null@*/ termNode p_n) /*@*/ ;
31 extern void termNode_free (/*@only@*/ /*@null@*/ termNode p_t);