summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@oath.com>2021-11-02 16:03:15 +0100
committerGitHub <noreply@github.com>2021-11-02 16:03:15 +0100
commit811f84106854696ee89e6d40e78d62bd312b6002 (patch)
tree6ef2c12cc5d012ae14d1c6106e255edb5a8e8a9e /searchlib
parent5c0bce35b04b62233babd447a914f472be8abc60 (diff)
parent9ce96763ab375764321aa436186e6c835c8a3aac (diff)
Merge pull request #19836 from vespa-engine/balder/only-need-one-instance-to-signal-emptiness
Only need a single instance to represent the empty argument.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/abi-spec.json4
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/Reference.java2
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/Arguments.java2
-rwxr-xr-xsearchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/ReferenceNode.java2
4 files changed, 6 insertions, 4 deletions
diff --git a/searchlib/abi-spec.json b/searchlib/abi-spec.json
index 4ebca94734f..d0e14a40b9c 100644
--- a/searchlib/abi-spec.json
+++ b/searchlib/abi-spec.json
@@ -1192,7 +1192,9 @@
"public boolean equals(java.lang.Object)",
"public java.lang.String toString()"
],
- "fields": []
+ "fields": [
+ "public static final com.yahoo.searchlib.rankingexpression.rule.Arguments EMPTY"
+ ]
},
"com.yahoo.searchlib.rankingexpression.rule.ArithmeticNode": {
"superClass": "com.yahoo.searchlib.rankingexpression.rule.CompositeNode",
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/Reference.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/Reference.java
index 10004fc10ee..75bbe55128c 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/Reference.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/Reference.java
@@ -31,7 +31,7 @@ public class Reference extends Name implements Comparable<Reference> {
private final boolean isIdentifier;
public static Reference fromIdentifier(String identifier) {
- return new Reference(identifier, new Arguments(), null, true);
+ return new Reference(identifier, Arguments.EMPTY, null, true);
}
public Reference(String name, Arguments arguments, String output) {
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/Arguments.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/Arguments.java
index ed96a54c330..fe22a5b1267 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/Arguments.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/Arguments.java
@@ -15,7 +15,7 @@ import java.util.List;
* @author bratseth
*/
public final class Arguments implements Serializable {
-
+ public static final Arguments EMPTY = new Arguments();
private final ImmutableList<ExpressionNode> expressions;
public Arguments() {
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/ReferenceNode.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/ReferenceNode.java
index db791a63f9c..93b8b8aca5e 100755
--- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/ReferenceNode.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/ReferenceNode.java
@@ -30,7 +30,7 @@ public final class ReferenceNode extends CompositeNode {
public ReferenceNode(String name, List<? extends ExpressionNode> arguments, String output) {
this.reference = new Reference(name,
- arguments != null ? new Arguments(arguments) : new Arguments(),
+ arguments != null ? new Arguments(arguments) : Arguments.EMPTY,
output);
}