package edu.stanford.nlp.sempre; import fig.basic.LispTree; /** * Represents a string value. * @author Percy Liang **/ public class StringValue extends Value { public final String value; public StringValue(String value) { this.value = value; } public StringValue(LispTree tree) { this.value = tree.child(1).value; } public LispTree toLispTree() { LispTree tree = LispTree.proto.newList(); tree.addChild("string"); tree.addChild(value); return tree; } @Override public String sortString() { return "\"" + value + "\""; } @Override public int hashCode() { return value.hashCode(); } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; StringValue that = (StringValue) o; return this.value.equals(that.value); } }