aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java1
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java2
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java12
-rw-r--r--src/main/java/org/zwobble/couscous/util/ExtraLists.java14
-rw-r--r--src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java2
5 files changed, 7 insertions, 24 deletions
diff --git a/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java b/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java
index f9ba55e..15da87e 100644
--- a/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java
+++ b/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java
@@ -251,7 +251,6 @@ public class JavaExpressionReader {
ExpressionNode right = readExpression(left.getType(), expression.getRightHandSide());
return AssignmentNode.assign(left, right);
} else {
- ExpressionNode right = readUnboxedExpression(expression.getRightHandSide());
Operator operator = readOperator(expression.getOperator());
return AssignmentNode.assign(
left,
diff --git a/src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java b/src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java
index a61ec27..8d2c2d5 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/values/ConcreteType.java
@@ -88,7 +88,7 @@ public class ConcreteType {
private final Map<String, MethodValue> methods;
private final Map<String, StaticMethodValue> staticMethods;
- public ConcreteType(TypeName name, Map<String, FieldValue> fields, MethodValue constructor, Map<String, MethodValue> methods, Map<String, StaticMethodValue> staticMethods) {
+ private ConcreteType(TypeName name, Map<String, FieldValue> fields, MethodValue constructor, Map<String, MethodValue> methods, Map<String, StaticMethodValue> staticMethods) {
this.name = name;
this.fields = fields;
this.constructor = constructor;
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 bbcf9c0..b050442 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/values/IntegerInterpreterValue.java
@@ -25,9 +25,9 @@ public final class IntegerInterpreterValue implements InterpreterValue {
.method(Operator.MOD.getMethodName(), asList(IntegerValue.REF),
infixReturningInteger((left, right) -> left % right))
.method(Operator.EQUALS.getMethodName(), asList(IntegerValue.REF),
- infixReturningBoolean((left, right) -> left == right))
+ infixReturningBoolean(Integer::equals))
.method(Operator.NOT_EQUALS.getMethodName(), asList(IntegerValue.REF),
- infixReturningBoolean((left, right) -> left != right))
+ infixReturningBoolean((left, right) -> !left.equals(right)))
.method(Operator.GREATER_THAN.getMethodName(), asList(IntegerValue.REF),
infixReturningBoolean((left, right) -> left > right))
.method(Operator.GREATER_THAN_OR_EQUAL.getMethodName(), asList(IntegerValue.REF),
@@ -41,17 +41,13 @@ public final class IntegerInterpreterValue implements InterpreterValue {
private static
BiFunction<Environment, MethodCallArguments<IntegerInterpreterValue>, InterpreterValue>
infixReturningInteger(BiFunction<Integer, Integer, Integer> func) {
- return infix((left, right) -> {
- return new IntegerInterpreterValue(func.apply(left, right));
- });
+ return infix((left, right) -> new IntegerInterpreterValue(func.apply(left, right)));
}
private static
BiFunction<Environment, MethodCallArguments<IntegerInterpreterValue>, InterpreterValue>
infixReturningBoolean(BiFunction<Integer, Integer, Boolean> func) {
- return infix((left, right) -> {
- return new BooleanInterpreterValue(func.apply(left, right));
- });
+ return infix((left, right) -> new BooleanInterpreterValue(func.apply(left, right)));
}
private static
diff --git a/src/main/java/org/zwobble/couscous/util/ExtraLists.java b/src/main/java/org/zwobble/couscous/util/ExtraLists.java
index 590b466..be8ffb3 100644
--- a/src/main/java/org/zwobble/couscous/util/ExtraLists.java
+++ b/src/main/java/org/zwobble/couscous/util/ExtraLists.java
@@ -1,7 +1,6 @@
package org.zwobble.couscous.util;
import java.util.List;
-import java.util.function.BiFunction;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -36,7 +35,7 @@ public class ExtraLists {
}
@FunctionalInterface
- public static interface CheckedFunction<T, R, E extends Exception> {
+ public interface CheckedFunction<T, R, E extends Exception> {
R apply(T value) throws E;
}
@@ -49,15 +48,4 @@ public class ExtraLists {
this.exception = exception;
}
}
-
- public static <T, R> R foldLeft(
- List<T> list,
- Function<T, R> initialValue,
- BiFunction<R, T, R> function) {
- R accumulator = initialValue.apply(list.get(0));
- for (int index = 1; index < list.size(); index++) {
- accumulator = function.apply(accumulator, list.get(index));
- }
- return accumulator;
- }
}
diff --git a/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java b/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java
index c91fdb3..9d6bb9f 100644
--- a/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java
@@ -226,7 +226,7 @@ public abstract class BackendEvalTests {
assertEquals(value(42), result);
}
- protected PrimitiveValue evalExpression(ExpressionNode expression) {
+ private PrimitiveValue evalExpression(ExpressionNode expression) {
return evalExpression(ImmutableList.of(), expression);
}