From 3d51fd0f8fe20834b348b0e99033ee2cace5b874 Mon Sep 17 00:00:00 2001 From: Joachim Klein Date: Tue, 30 Aug 2016 12:21:55 +0000 Subject: [PATCH] ExpressionUnaryOp, ExpressionBinaryOp: setOperator from symbol (string), for convenience git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11754 bbc10eb1-c90d-0410-af57-cb519fbb1720 --- prism/src/parser/ast/ExpressionBinaryOp.java | 14 ++++++++++++++ prism/src/parser/ast/ExpressionUnaryOp.java | 14 ++++++++++++++ 2 files changed, 28 insertions(+) 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;