]> andersk Git - splint.git/blob - src/constraintExprData.c
Updating for cert move
[splint.git] / src / constraintExprData.c
1 #/*
2 ** constraintExpr.c
3 */
4
5 # include <ctype.h> /* for isdigit */
6 # include "lclintMacros.nf"
7 # include "basic.h"
8 # include "cgrammar.h"
9 # include "cgrammar_tokens.h"
10
11 # include "exprChecks.h"
12 # include "aliasChecks.h"
13 # include "exprNodeSList.h"
14 //# include "exprData.i"
15
16
17 constraintExprData constraintExprData_copyBinaryExpr(constraintExprData data)
18 {
19  constraintExprData ret;
20   llassert(constraintExprData_isDefined(data));
21   ret = dmalloc (sizeof (*ret) );
22   ret->binaryOp.binaryOp = data->binaryOp.binaryOp;
23   ret->binaryOp.expr1 = constraintExpr_copy (data->binaryOp.expr1);
24   ret->binaryOp.expr2 = constraintExpr_copy (data->binaryOp.expr2);
25   return ret;
26 }
27
28 constraintExprData constraintExprData_copyUnaryExpr(constraintExprData data)
29 {
30  constraintExprData ret;
31   llassert(constraintExprData_isDefined(data));
32   ret = dmalloc (sizeof (*ret) );
33   
34   ret->unaryOp.unaryOp = data->unaryOp.unaryOp;
35   ret->unaryOp.expr = constraintExpr_copy (data->unaryOp.expr);
36   
37   return ret;
38 }
39
40 constraintExprData constraintExprData_copyTerm (constraintExprData data)
41 {
42  constraintExprData ret;
43   llassert(constraintExprData_isDefined(data));
44   ret = dmalloc (sizeof (*ret) );
45   ret->term = constraintTerm_copy (data->term);
46   return ret;
47 }
48
49 // constraintExprData constraintExprData_copy (constraintExprData data, constraintExprKind kind)
50 // {
51 //   constraintExprData ret;
52 //   llassert(constraintExprData_isDefined(data));
53 //   ret = dmalloc (sizeof (*ret) );
54 //   switch (kind)
55 //     {
56 //     case binaryexpr:
57 //       ret->binaryOp.binaryOp = data->binaryOp.binaryOp;
58 //       ret->binaryOp.expr1 = constraintExpr_copy (data->binaryOp.expr1);
59 //       ret->binaryOp.expr2 = constraintExpr_copy (data->binaryOp.expr2);
60 //       break;
61 //     case unaryExpr:
62 //       ret->unaryOp.unaryOp = data->unaryOp.unaryOp;
63 //       ret->unaryOp.expr = constraintExpr_copy (data->unaryOp.expr);
64 //       break;
65 //     case term:
66 //       ret->term = constraintTerm_copy (data->term);
67 //     }
68   
69 //   return ret;
70 // }
71
72 constraintExprData constraintExprData_termSetTerm (/*@out@*/ constraintExprData data, constraintTerm term)
73 {
74   llassert (constraintExprData_isDefined(data));
75   data->term = constraintTerm_copy(term);
76   return data;
77 }
78
79
80
81 constraintTerm constraintExprData_termGetTerm (constraintExprData data)
82 {
83   llassert (constraintExprData_isDefined(data));
84   return data->term;
85 }
86
87
88 constraintExprUnaryOpKind constraintExprData_unaryExprGetOp (constraintExprData data)
89 {
90   llassert (constraintExprData_isDefined(data));
91   return (data->unaryOp.unaryOp);
92 }
93
94
95 constraintExpr  constraintExprData_unaryExprGetExpr (constraintExprData data)
96 {
97   llassert (constraintExprData_isDefined(data));
98   return (data->unaryOp.expr);
99 }
100
101
102
103 constraintExprData  constraintExprData_unaryExprSetOp (/*@out@*/ constraintExprData data, constraintExprUnaryOpKind op)
104 {
105   llassert (constraintExprData_isDefined(data));
106   data->unaryOp.unaryOp = op;
107   return data;
108 }
109
110 constraintExprData  constraintExprData_unaryExprSetExpr (/*@out@*/ constraintExprData data, constraintExpr expr)
111 {
112   llassert (constraintExprData_isDefined(data));
113   data->unaryOp.expr = constraintExpr_copy(expr);
114   return data;
115 }
116
117 // binaryExpr stuff
118
119
120 constraintExprBinaryOpKind  constraintExprData_binaryExprGetOp (constraintExprData data)
121 {
122   llassert (constraintExprData_isDefined(data));
123   return (data->binaryOp.binaryOp);
124 }
125
126
127 constraintExpr  constraintExprData_binaryExprGetExpr1 (constraintExprData data)
128 {
129   llassert (constraintExprData_isDefined(data));
130   return (data->binaryOp.expr1);
131 }
132
133
134 constraintExpr  constraintExprData_binaryExprGetExpr2 (constraintExprData data)
135 {
136   llassert (constraintExprData_isDefined(data));
137   return (data->binaryOp.expr2);
138 }
139
140
141 constraintExprData  constraintExprData_binaryExprSetExpr1 (constraintExprData data, constraintExpr expr)
142 {
143   llassert (constraintExprData_isDefined(data));
144   data->binaryOp.expr1 = constraintExpr_copy(expr);
145   return data;
146 }
147
148 constraintExprData  constraintExprData_binaryExprSetExpr2 (constraintExprData data, constraintExpr expr)
149 {
150   llassert (constraintExprData_isDefined(data));
151   data->binaryOp.expr2 = constraintExpr_copy(expr);
152   return data;
153 }
154
155
156 /*@special@*/ constraintExprData  constraintExprData_binaryExprSetOp (/*@returned@*/ /*@out@*/constraintExprData data, constraintExprBinaryOpKind op) /*@defines result->binaryOp.binaryOp@*/
157 {
158   llassert (constraintExprData_isDefined(data));
159   data->binaryOp.binaryOp = op;
160   return data;
161 }
This page took 0.145607 seconds and 5 git commands to generate.