diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-01-24 16:13:33 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-01-24 16:13:33 +0000 |
| commit | 5fe2fa7934197d73bc1f6a3e361149923279b35a (patch) | |
| tree | 3850ffc02c864875084c174e26466a052ccc6368 /src/main/java/org/zwobble/couscous/ast/Operator.java | |
| parent | f2ed6b591da6149319c149d1c78694bfa9641a73 (diff) | |
Implement negation in C# backend
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/Operator.java')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/ast/Operator.java | 39 |
1 files changed, 23 insertions, 16 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/Operator.java b/src/main/java/org/zwobble/couscous/ast/Operator.java index a215138..a51a01b 100644 --- a/src/main/java/org/zwobble/couscous/ast/Operator.java +++ b/src/main/java/org/zwobble/couscous/ast/Operator.java @@ -1,30 +1,37 @@ package org.zwobble.couscous.ast; public enum Operator { - BOOLEAN_AND("and", true), - BOOLEAN_OR("or", true), - - ADD("add", false), - SUBTRACT("subtract", false), - MULTIPLY("multiply", false), - DIVIDE("divide", false), - MOD("mod", false), - - EQUALS("equals", true), - NOT_EQUALS("notEquals", true), - GREATER_THAN("greaterThan", true), - GREATER_THAN_OR_EQUAL("greaterThanOrEqual", true), - LESS_THAN("lessThan", true), - LESS_THAN_OR_EQUAL("lessThanOrEqual", true); + BOOLEAN_AND("&&", "and", true), + BOOLEAN_OR("||", "or", true), + BOOLEAN_NOT("!", "negate", true), + ADD("+", "add", false), + SUBTRACT("-", "subtract", false), + MULTIPLY("*", "multiply", false), + DIVIDE("/", "divide", false), + MOD("%", "mod", false), + + EQUALS("==", "equals", true), + NOT_EQUALS("!=", "notEquals", true), + GREATER_THAN(">", "greaterThan", true), + GREATER_THAN_OR_EQUAL(">=", "greaterThanOrEqual", true), + LESS_THAN("<", "lessThan", true), + LESS_THAN_OR_EQUAL("<=", "lessThanOrEqual", true); + + private final String symbol; private final String methodName; private final boolean isBoolean; - Operator(String methodName, boolean isBoolean) { + Operator(String symbol, String methodName, boolean isBoolean) { + this.symbol = symbol; this.methodName = methodName; this.isBoolean = isBoolean; } + public String getSymbol() { + return symbol; + } + public String getMethodName() { return methodName; } |
