From a7209cf3f8f11e916d70c4eb5db0bf13f181ef1f Mon Sep 17 00:00:00 2001 From: Jon Bratseth Date: Thu, 22 Dec 2016 13:55:10 +0100 Subject: Add tensor generate functions --- .../rankingexpression/rule/TensorFunctionNode.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java') diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java index 15ad6ba647a..1947b00ac16 100644 --- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java +++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java @@ -46,7 +46,7 @@ public class TensorFunctionNode extends CompositeNode { } @Override - public String toString(SerializationContext context, Deque path, CompositeNode parent) { + public String toString(SerializationContext context, Deque path, CompositeNode parent) { // Serialize as primitive return function.toPrimitive().toString(new ExpressionNodeToStringContext(context, path, this)); } @@ -104,10 +104,20 @@ public class TensorFunctionNode extends CompositeNode { return ((TensorValue)result).asTensor(); } + @Override + public String toString() { + return toString(ExpressionNodeToStringContext.empty); + } + @Override public String toString(ToStringContext c) { - ExpressionNodeToStringContext context = (ExpressionNodeToStringContext)c; - return expression.toString(context.context, context.path, context.parent); + if (c instanceof ExpressionNodeToStringContext) { + ExpressionNodeToStringContext context = (ExpressionNodeToStringContext) c; + return expression.toString(context.context, context.path, context.parent); + } + else { + return expression.toString(); + } } } @@ -119,6 +129,8 @@ public class TensorFunctionNode extends CompositeNode { final Deque path; final CompositeNode parent; + public static final ExpressionNodeToStringContext empty = new ExpressionNodeToStringContext(null, null, null); + public ExpressionNodeToStringContext(SerializationContext context, Deque path, CompositeNode parent) { this.context = context; this.path = path; -- cgit v1.2.3