4 ** freeShallow: free exprData created from exprNode_effect calls.
5 ** All but the innermost storage is free'd.
8 /*@only@*/ exprData exprData_makeLiteral (/*@only@*/ cstring p_s);
10 /*@only@*/ exprData exprData_makeId (/*@temp@*/ uentry p_id);
12 /*@only@*/ exprData exprData_makePair (/*@keep@*/ exprNode p_a, /*@keep@*/ exprNode p_b);
15 /*static*/ void exprData_freeShallow (/*@only@*/ exprData p_data, exprKind p_kind);
17 /*static*/ void exprData_free (/*@only@*/ exprData p_data, exprKind p_kind);
19 /*static*/ /*@exposed@*/ exprNode exprData_getInitNode (exprData p_data) /*@*/;
21 /*static*/ /*@exposed@*/ idDecl exprData_getInitId (exprData p_data) /*@*/;
23 /*static*/ /*@exposed@*/ exprNode exprData_getOpA (exprData p_data) /*@*/;
25 /*static*/ /*@exposed@*/ exprNode exprData_getOpB (exprData p_data) /*@*/;
27 /*static*/ /*@observer@*/ lltok exprData_getOpTok (exprData p_data) /*@*/;
29 /*static*/ /*@exposed@*/ exprNode exprData_getPairA (exprData p_data) /*@*/;
31 /*static*/ /*@exposed@*/ exprNode exprData_getPairB (exprData p_data) /*@*/;
33 /*static*/ /*@exposed@*/ uentry exprData_getIterSname (exprData p_data) /*@*/;
35 /*static*/ /*@exposed@*/ exprNodeList exprData_getIterAlist (exprData p_data) /*@*/;
37 /*static*/ /*@exposed@*/ exprNode exprData_getIterBody (exprData p_data) /*@*/;
39 /*static*/ /*@exposed@*/ uentry exprData_getIterEname (exprData p_data) /*@*/;
41 /*static*/ /*@exposed@*/ exprNode exprData_getFcn (exprData p_data) /*@*/;
43 /*static*/ /*@exposed@*/ exprNodeList exprData_getArgs (exprData p_data) /*@*/;
45 /*static*/ /*@exposed@*/ exprNode exprData_getTriplePred (exprData p_data) /*@*/;
47 /*static*/ /*@exposed@*/ uentry exprData_getIterCallIter (exprData p_data) /*@*/;
49 /*static*/ /*@exposed@*/ exprNodeList
50 exprData_getIterCallArgs (exprData p_data) /*@*/;
52 /*static*/ /*@exposed@*/ exprNode exprData_getTripleInit (exprData p_data) /*@*/;
54 /*static*/ /*@exposed@*/ exprNode exprData_getTripleTrue (exprData p_data) /*@*/;
56 /*static*/ /*@exposed@*/ exprNode exprData_getTripleTest (exprData p_data) /*@*/;
58 /*static*/ /*@exposed@*/ exprNode exprData_getTripleFalse (exprData p_data) /*@*/;
60 /*static*/ /*@exposed@*/ exprNode exprData_getTripleInc (exprData p_data) /*@*/;
62 /*static*/ /*@exposed@*/ exprNode exprData_getFieldNode (exprData p_data) /*@*/;
64 /*static*/ /*@exposed@*/ cstring exprData_getFieldName (exprData p_data) /*@*/;
66 /*static*/ /*@observer@*/ lltok exprData_getUopTok (exprData p_data) /*@*/;
68 /*static*/ /*@exposed@*/ exprNode exprData_getUopNode (exprData p_data) /*@*/;
70 /*static*/ /*@exposed@*/ exprNode exprData_getCastNode (exprData p_data) /*@*/;
72 /*static*/ /*@observer@*/ lltok exprData_getCastTok (exprData p_data) /*@*/;
74 /*static*/ /*@exposed@*/ qtype exprData_getCastType (exprData p_data) /*@*/;
76 /*static*/ /*@exposed@*/ cstring exprData_getLiteral (exprData p_data) /*@*/;
78 /*static*/ /*@exposed@*/ cstring exprData_getId (exprData p_data) /*@*/;
80 /*static*/ /*@observer@*/ lltok exprData_getTok (exprData p_data) /*@*/;
82 /*static*/ /*@exposed@*/ qtype exprData_getType (exprData p_data) /*@*/ ;
84 /*static*/ /*@exposed@*/ qtype exprData_getOffsetType (exprData p_data) /*@*/ ;
86 /*static*/ /*@exposed@*/ cstringList exprData_getOffsetName (exprData p_data) /*@*/ ;
88 /*drl 10/18/001 added sef annotation*/
89 /*static*/ /*@exposed@*/ exprNode exprData_getSingle (exprData p_data) /*@*/;
91 /*static*/ /*@only@*/ exprData
92 exprData_makeOp (/*@keep@*/ exprNode p_a, /*@keep@*/ exprNode p_b, /*@keep@*/ lltok p_op);
94 /*static*/ /*@only@*/ exprData exprData_makeUop (/*@keep@*/ exprNode p_a, /*@keep@*/ lltok p_op);
96 /*static*/ /*@only@*/ exprData exprData_makeSingle (/*@only@*/ exprNode p_a);
98 /*static*/ /*@only@*/ exprData exprData_makeTok (/*@only@*/ lltok p_op);
100 /*static*/ /*@only@*/ exprData
101 exprData_makeIter (/*@exposed@*/ uentry p_sname, /*@keep@*/ exprNodeList p_args,
102 /*@keep@*/ exprNode p_body, /*@exposed@*/ uentry p_ename);
104 /*static*/ /*@only@*/ exprData exprData_makeTriple (/*@keep@*/ exprNode p_pred,
105 /*@keep@*/ exprNode p_tbranch,
106 /*@keep@*/ exprNode p_fbranch);
108 /*static*/ /*@only@*/ exprData exprData_makeCall (/*@keep@*/ exprNode p_fcn,
109 /*@keep@*/ exprNodeList p_args);
112 /*static*/ /*@only@*/ exprData exprData_makeIterCall (/*@dependent@*/ uentry p_iter,
113 /*@keep@*/ exprNodeList p_args);
115 /*static*/ /*@only@*/ exprData exprData_makeField (/*@keep@*/ exprNode p_rec,
116 /*@keep@*/ cstring p_field);
118 /*static*/ /*@only@*/ exprData exprData_makeOffsetof (/*@only@*/ qtype p_q,
119 /*@keep@*/ cstringList p_s);
122 /*static*/ /*@only@*/ exprData exprData_makeSizeofType (/*@only@*/ qtype p_q);
124 /*static*/ /*@only@*/ exprData
125 exprData_makeCast (/*@keep@*/ lltok p_tok, /*@keep@*/ exprNode p_e, /*@only@*/ qtype p_q);
127 /*static*/ /*@only@*/ exprData
128 exprData_makeInit (/*@keep@*/ idDecl p_t, /*@keep@*/ exprNode p_e);
131 /*static*/ /*@only@*/ exprData exprData_makeCond (/*@keep@*/ exprNode p_pred,
132 /*@keep@*/ exprNode p_ifclause,
133 /*@keep@*/ exprNode p_elseclause);
135 /*static*/ /*@only@*/ exprData exprData_makeFor (/*@keep@*/ exprNode p_init,
136 /*@keep@*/ exprNode p_pred,
137 /*@keep@*/ exprNode p_inc);