diff options
-rw-r--r-- | expressions.cpp | 12 | ||||
-rw-r--r-- | expressions.h | 2 |
2 files changed, 14 insertions, 0 deletions
diff --git a/expressions.cpp b/expressions.cpp index d9c5a1e..ac06b43 100644 --- a/expressions.cpp +++ b/expressions.cpp @@ -163,6 +163,18 @@ Expressions::args(void) } int +Expressions::find_op(Operator op) +{ + int items = operators.items(); + + for (int i = 1; i <= items; i++) + if (operators.peek(i) == op) + return i; + + return 0; +} + +int Expressions::first_op(void) { int items = operators.items(); diff --git a/expressions.h b/expressions.h index af501bb..5d2aa0c 100644 --- a/expressions.h +++ b/expressions.h @@ -170,6 +170,8 @@ public: void discard_args(void); + int find_op(Operator op); + private: void calc(void); |