diff --git a/prism/src/parser/ast/ExpressionBinaryOp.java b/prism/src/parser/ast/ExpressionBinaryOp.java index 5d1d8dc3..9e78cf62 100644 --- a/prism/src/parser/ast/ExpressionBinaryOp.java +++ b/prism/src/parser/ast/ExpressionBinaryOp.java @@ -82,6 +82,20 @@ public class ExpressionBinaryOp extends Expression op = i; } + /** + * Set the operator from the operator symbol. + */ + public void setOperator(String s) throws PrismLangException + { + for (int i = 1; i < opSymbols.length; i++) { + if (opSymbols[i].equals(s)) { + setOperator(i); + return; + } + } + throw new PrismLangException("Unknown binary operator '" + s + "'"); + } + public void setOperand1(Expression e1) { operand1 = e1; diff --git a/prism/src/parser/ast/ExpressionUnaryOp.java b/prism/src/parser/ast/ExpressionUnaryOp.java index 793fda1b..0c48975f 100644 --- a/prism/src/parser/ast/ExpressionUnaryOp.java +++ b/prism/src/parser/ast/ExpressionUnaryOp.java @@ -65,6 +65,20 @@ public class ExpressionUnaryOp extends Expression op = i; } + /** + * Set the operator from the operator symbol. + */ + public void setOperator(String s) throws PrismLangException + { + for (int i = 1; i < opSymbols.length; i++) { + if (opSymbols[i].equals(s)) { + setOperator(i); + return; + } + } + throw new PrismLangException("Unknown unary operator '" + s + "'"); + } + public void setOperand(Expression e) { operand = e;