diff options
| author | Michael Williamson <mike@zwobble.org> | 2015-11-14 15:16:41 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2015-11-14 15:16:41 +0000 |
| commit | c64264f6f8f1bbb8b5551529052733151bc53589 (patch) | |
| tree | 00baf77ab361fbf543397aa105295bbcc2fa65cf /src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java | |
| parent | dbaa2530de7ac8d38b4313689f98704990290d84 (diff) | |
Use Operator instead of magic strings
Diffstat (limited to 'src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java b/src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java index 2364f6f..dce3cab 100644 --- a/src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java +++ b/src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java @@ -3,6 +3,7 @@ package org.zwobble.couscous.interpreter.values; import java.util.Optional; import java.util.function.BiFunction; +import org.zwobble.couscous.ast.Operator; import org.zwobble.couscous.interpreter.Environment; import org.zwobble.couscous.interpreter.NoSuchField; import org.zwobble.couscous.values.IntegerValue; @@ -13,25 +14,25 @@ import static java.util.Arrays.asList; public final class IntegerInterpreterValue implements InterpreterValue { public static final ConcreteType TYPE = ConcreteType.builder(IntegerInterpreterValue.class, IntegerValue.REF) - .method("add", asList(IntegerValue.REF), + .method(Operator.ADD.getMethodName(), asList(IntegerValue.REF), infixReturningInteger((left, right) -> left + right)) - .method("subtract", asList(IntegerValue.REF), + .method(Operator.SUBTRACT.getMethodName(), asList(IntegerValue.REF), infixReturningInteger((left, right) -> left - right)) - .method("multiply", asList(IntegerValue.REF), + .method(Operator.MULTIPLY.getMethodName(), asList(IntegerValue.REF), infixReturningInteger((left, right) -> left * right)) - .method("divide", asList(IntegerValue.REF), + .method(Operator.DIVIDE.getMethodName(), asList(IntegerValue.REF), infixReturningInteger((left, right) -> left / right)) - .method("mod", asList(IntegerValue.REF), + .method(Operator.MOD.getMethodName(), asList(IntegerValue.REF), infixReturningInteger((left, right) -> left % right)) - .method("equals", asList(IntegerValue.REF), + .method(Operator.EQUALS.getMethodName(), asList(IntegerValue.REF), infixReturningBoolean((left, right) -> left == right)) - .method("greaterThan", asList(IntegerValue.REF), + .method(Operator.GREATER_THAN.getMethodName(), asList(IntegerValue.REF), infixReturningBoolean((left, right) -> left > right)) - .method("greaterThanOrEqual", asList(IntegerValue.REF), + .method(Operator.GREATER_THAN_OR_EQUAL.getMethodName(), asList(IntegerValue.REF), infixReturningBoolean((left, right) -> left >= right)) - .method("lessThan", asList(IntegerValue.REF), + .method(Operator.LESS_THAN.getMethodName(), asList(IntegerValue.REF), infixReturningBoolean((left, right) -> left < right)) - .method("lessThanOrEqual", asList(IntegerValue.REF), + .method(Operator.LESS_THAN_OR_EQUAL.getMethodName(), asList(IntegerValue.REF), infixReturningBoolean((left, right) -> left <= right)) .build(); |
