aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/values/StringValue.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/zwobble/couscous/values/StringValue.java')
-rw-r--r--src/main/java/org/zwobble/couscous/values/StringValue.java32
1 files changed, 0 insertions, 32 deletions
diff --git a/src/main/java/org/zwobble/couscous/values/StringValue.java b/src/main/java/org/zwobble/couscous/values/StringValue.java
deleted file mode 100644
index 0e24ac6..0000000
--- a/src/main/java/org/zwobble/couscous/values/StringValue.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package org.zwobble.couscous.values;
-
-import static java.util.Arrays.asList;
-import static org.zwobble.couscous.values.TypeReference.typeRef;
-
-import lombok.Value;
-import lombok.val;
-
-@Value
-public class StringValue implements InterpreterValue {
- public static final TypeReference REF = typeRef("java.lang.String");
-
- public static final ConcreteType<?> TYPE = ConcreteType.<StringValue>builder(REF)
- .method("length", asList(),
- (receiver, arguments) -> new IntegerValue(receiver.value.length()))
-
- .method("substring", asList(IntegerValue.REF, IntegerValue.REF),
- (receiver, arguments) -> {
- val startIndex = (IntegerValue)arguments.get(0);
- val endIndex = (IntegerValue)arguments.get(1);
- return new StringValue(receiver.value.substring(startIndex.getValue(), endIndex.getValue()));
- })
-
- .build();
-
- String value;
-
- @Override
- public ConcreteType<?> getType() {
- return TYPE;
- }
-}