From b7e0010d6e8e5413fcd66eae158111db509eb27b Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 28 Feb 2016 19:18:28 +0000 Subject: Split ConcreteType up into specialised type implementations --- .../couscous/interpreter/values/BooleanInterpreterValue.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/main/java/org/zwobble/couscous/interpreter/values/BooleanInterpreterValue.java') diff --git a/src/main/java/org/zwobble/couscous/interpreter/values/BooleanInterpreterValue.java b/src/main/java/org/zwobble/couscous/interpreter/values/BooleanInterpreterValue.java index 2ac6e3a..a183206 100644 --- a/src/main/java/org/zwobble/couscous/interpreter/values/BooleanInterpreterValue.java +++ b/src/main/java/org/zwobble/couscous/interpreter/values/BooleanInterpreterValue.java @@ -2,6 +2,8 @@ package org.zwobble.couscous.interpreter.values; import org.zwobble.couscous.ast.Operator; import org.zwobble.couscous.interpreter.errors.NoSuchField; +import org.zwobble.couscous.interpreter.types.InterpreterType; +import org.zwobble.couscous.interpreter.types.IntrinsicInterpreterType; import org.zwobble.couscous.values.BooleanValue; import org.zwobble.couscous.values.PrimitiveValue; import org.zwobble.couscous.values.PrimitiveValues; @@ -18,7 +20,7 @@ public final class BooleanInterpreterValue implements InterpreterValue { return value ? TRUE : FALSE; } - private static final ConcreteType TYPE = ConcreteType.builder(BooleanInterpreterValue.class, "boolean") + private static final InterpreterType TYPE = IntrinsicInterpreterType.builder(BooleanInterpreterValue.class, "boolean") .method(Operator.BOOLEAN_NOT.getSymbol(), list(), BooleanValue.REF, (environment, arguments) -> of(!arguments.getReceiver().getValue())) @@ -46,7 +48,7 @@ public final class BooleanInterpreterValue implements InterpreterValue { } @Override - public ConcreteType getType() { + public InterpreterType getType() { return TYPE; } -- cgit v1.2.3