java-design-patterns/interpreter/etc/interpreter.urm.puml
NooBxGockeL c2a7b902a9 Work on #190: urm/puml updates
* added pumlid where it was missing and possible
* removed pumlid where it generated a bad image
* regenerated some incorrect puml's
* added 'left to right direction' puml prefix to some diagrams to improve the automatic layouting
2017-03-25 22:07:10 +01:00

53 lines
1.6 KiB
Plaintext

@startuml
left to right direction
package com.iluwatar.interpreter {
class App {
- LOGGER : Logger {static}
+ App()
+ getOperatorInstance(s : String, left : Expression, right : Expression) : Expression {static}
+ isOperator(s : String) : boolean {static}
+ main(args : String[]) {static}
}
abstract class Expression {
+ Expression()
+ interpret() : int {abstract}
+ toString() : String {abstract}
}
class MinusExpression {
- leftExpression : Expression
- rightExpression : Expression
+ MinusExpression(leftExpression : Expression, rightExpression : Expression)
+ interpret() : int
+ toString() : String
}
class MultiplyExpression {
- leftExpression : Expression
- rightExpression : Expression
+ MultiplyExpression(leftExpression : Expression, rightExpression : Expression)
+ interpret() : int
+ toString() : String
}
class NumberExpression {
- number : int
+ NumberExpression(number : int)
+ NumberExpression(s : String)
+ interpret() : int
+ toString() : String
}
class PlusExpression {
- leftExpression : Expression
- rightExpression : Expression
+ PlusExpression(leftExpression : Expression, rightExpression : Expression)
+ interpret() : int
+ toString() : String
}
}
MultiplyExpression --> "-leftExpression" Expression
MinusExpression --> "-leftExpression" Expression
PlusExpression --> "-leftExpression" Expression
MinusExpression --|> Expression
MultiplyExpression --|> Expression
NumberExpression --|> Expression
PlusExpression --|> Expression
@enduml