diff options
Diffstat (limited to 'src/main/java/org/zwobble/couscous/values/StringValue.java')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/values/StringValue.java | 49 |
1 files changed, 39 insertions, 10 deletions
diff --git a/src/main/java/org/zwobble/couscous/values/StringValue.java b/src/main/java/org/zwobble/couscous/values/StringValue.java index b912fd3..73e3191 100644 --- a/src/main/java/org/zwobble/couscous/values/StringValue.java +++ b/src/main/java/org/zwobble/couscous/values/StringValue.java @@ -2,25 +2,54 @@ package org.zwobble.couscous.values; import org.zwobble.couscous.ast.TypeName; -import lombok.Value; - -@Value -public class StringValue implements PrimitiveValue { +public final class StringValue implements PrimitiveValue { + public static StringValue of(String value) { return new StringValue(value); } - public static final TypeName REF = TypeName.of("java.lang.String"); - - String value; - + private final String value; + @Override public <T> T accept(PrimitiveValueVisitor<T> visitor) { return visitor.visit(this); } - + @Override public TypeName getType() { return REF; } -} + + public StringValue(final String value) { + this.value = value; + } + + public String getValue() { + return this.value; + } + + @java.lang.Override + public boolean equals(final java.lang.Object o) { + if (o == this) return true; + if (!(o instanceof StringValue)) return false; + final StringValue other = (StringValue)o; + final java.lang.Object this$value = this.getValue(); + final java.lang.Object other$value = other.getValue(); + if (this$value == null ? other$value != null : !this$value.equals(other$value)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + final java.lang.Object $value = this.getValue(); + result = result * PRIME + ($value == null ? 43 : $value.hashCode()); + return result; + } + + @java.lang.Override + public java.lang.String toString() { + return "StringValue(value=" + this.getValue() + ")"; + } +}
\ No newline at end of file |
