fri.patterns.interpreter.parsergenerator.examples
Class Calculator
java.lang.Object
|
+--fri.patterns.interpreter.parsergenerator.semantics.ReflectSemantic
|
+--fri.patterns.interpreter.parsergenerator.examples.Calculator
- All Implemented Interfaces:
- Semantic
- public class Calculator
- extends ReflectSemantic
Calculator for arithmetic expressions, showing the elegance of ReflectSemantic.
Syntax: java fri.patterns.interpreter.parsergenerator.examples.Calculator '(4+2.3) *(2 - -6) + 3*2'
- Author:
- Fritz Ritzberger
Method Summary |
java.lang.Object |
EXPRESSION(java.lang.Object TERM)
|
java.lang.Object |
EXPRESSION(java.lang.Object EXPRESSION,
java.lang.Object operator,
java.lang.Object TERM)
|
java.lang.Object |
FACTOR(java.lang.Object number)
|
java.lang.Object |
FACTOR(java.lang.Object minus,
java.lang.Object FACTOR)
|
java.lang.Object |
FACTOR(java.lang.Object leftParenthesis,
java.lang.Object EXPRESSION,
java.lang.Object rightParenthesis)
|
static void |
main(java.lang.String[] args)
SYNTAX: java fri.patterns.interpreter.parsergenerator.examples.Calculator '(4+2.3) *(2 - -6) + 3*2' ... 56.4. |
java.lang.Object |
TERM(java.lang.Object FACTOR)
|
java.lang.Object |
TERM(java.lang.Object TERM,
java.lang.Object operator,
java.lang.Object FACTOR)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Calculator
public Calculator()
EXPRESSION
public java.lang.Object EXPRESSION(java.lang.Object TERM)
EXPRESSION
public java.lang.Object EXPRESSION(java.lang.Object EXPRESSION,
java.lang.Object operator,
java.lang.Object TERM)
TERM
public java.lang.Object TERM(java.lang.Object FACTOR)
TERM
public java.lang.Object TERM(java.lang.Object TERM,
java.lang.Object operator,
java.lang.Object FACTOR)
FACTOR
public java.lang.Object FACTOR(java.lang.Object number)
FACTOR
public java.lang.Object FACTOR(java.lang.Object minus,
java.lang.Object FACTOR)
FACTOR
public java.lang.Object FACTOR(java.lang.Object leftParenthesis,
java.lang.Object EXPRESSION,
java.lang.Object rightParenthesis)
main
public static void main(java.lang.String[] args)
throws java.lang.Exception
- SYNTAX: java fri.patterns.interpreter.parsergenerator.examples.Calculator '(4+2.3) *(2 - -6) + 3*2' ... 56.4.
java.lang.Exception