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