summaryrefslogtreecommitdiff
path: root/cpp/src/Transform/Node.cpp
diff options
context:
space:
mode:
authorMark Spruiell <mes@zeroc.com>2003-10-23 03:24:19 +0000
committerMark Spruiell <mes@zeroc.com>2003-10-23 03:24:19 +0000
commitb65cd40d85bc7bd62ad5042f1644710f08264e53 (patch)
tree4acbdc8a2583379efcacf91f7d6b8d399ba39149 /cpp/src/Transform/Node.cpp
parentadding support for dictionary addition, sequence length changes (diff)
downloadice-b65cd40d85bc7bd62ad5042f1644710f08264e53.tar.bz2
ice-b65cd40d85bc7bd62ad5042f1644710f08264e53.tar.xz
ice-b65cd40d85bc7bd62ad5042f1644710f08264e53.zip
adding != operator
Diffstat (limited to 'cpp/src/Transform/Node.cpp')
-rw-r--r--cpp/src/Transform/Node.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/cpp/src/Transform/Node.cpp b/cpp/src/Transform/Node.cpp
index 4743be5e1f3..9b37554f172 100644
--- a/cpp/src/Transform/Node.cpp
+++ b/cpp/src/Transform/Node.cpp
@@ -288,6 +288,15 @@ Transform::BinaryNode::evaluate(SymbolTable& st)
result = _factory->createBoolean(b, true);
break;
}
+
+ case BinOpNotEq:
+ {
+ DataPtr leftValue = _left->evaluate(st);
+ DataPtr rightValue = _right->evaluate(st);
+ bool b = leftValue == rightValue;
+ result = _factory->createBoolean(!b, true);
+ break;
+ }
}
if(!result)
@@ -347,6 +356,9 @@ Transform::BinaryNode::opToString(BinaryOperator op)
case BinOpEq:
return "==";
+
+ case BinOpNotEq:
+ return "!=";
}
assert(false);