summaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/prelude/query/parser/SpecialTokens.java
diff options
context:
space:
mode:
Diffstat (limited to 'container-search/src/main/java/com/yahoo/prelude/query/parser/SpecialTokens.java')
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/query/parser/SpecialTokens.java21
1 files changed, 14 insertions, 7 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/query/parser/SpecialTokens.java b/container-search/src/main/java/com/yahoo/prelude/query/parser/SpecialTokens.java
index 30c20ddb0ee..c206ff7567e 100644
--- a/container-search/src/main/java/com/yahoo/prelude/query/parser/SpecialTokens.java
+++ b/container-search/src/main/java/com/yahoo/prelude/query/parser/SpecialTokens.java
@@ -142,16 +142,23 @@ public class SpecialTokens {
return replace;
}
+ @Override
public int compareTo(SpecialToken other) {
- if (this.token().length() < other.token().length()) {
- return 1;
- } else if (this.token().length() == other.token().length()) {
- return 0;
- } else {
- return -1;
- }
+ if (this.token().length() < other.token().length()) return 1;
+ if (this.token().length() == other.token().length()) return 0;
+ return -1;
}
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) return true;
+ if ( ! (other instanceof SpecialToken)) return false;
+ return Objects.equals(this.token, ((SpecialToken)other).token);
+ }
+
+ @Override
+ public int hashCode() { return token.hashCode(); }
+
public Token toToken(int start,String rawSource) {
return new Token(Token.Kind.WORD, replace(), true, new Substring(start, start + token.length(), rawSource)); // XXX: Unsafe?
}