Class GeneratorLambdaFunctionNode

  • All Implemented Interfaces:
    Serializable

    public class GeneratorLambdaFunctionNode
    extends CompositeNode
    A tensor generating function, whose arguments are determined by a tensor type
    Author:
    bratseth
    See Also:
    Serialized Form
    • Constructor Detail

      • GeneratorLambdaFunctionNode

        public GeneratorLambdaFunctionNode​(com.yahoo.tensor.TensorType type,
                                           ExpressionNode generator)
    • Method Detail

      • toString

        public StringBuilder toString​(StringBuilder string,
                                      SerializationContext context,
                                      Deque<String> path,
                                      CompositeNode parent)
        Description copied from class: ExpressionNode
        Returns a script instance of this based on the supplied script functions.
        Specified by:
        toString in class ExpressionNode
        Parameters:
        string - the StringBuilder that will be appended to
        context - the serialization context
        path - the call path to this, used for cycle detection, or null if this is a root
        parent - the parent node of this, or null if it a root
        Returns:
        the main script, referring to script instances.
      • type

        public com.yahoo.tensor.TensorType type​(com.yahoo.tensor.evaluation.TypeContext<Reference> context)
        Description copied from class: ExpressionNode
        Returns the type this will return if evaluated with the given context.
        Specified by:
        type in class ExpressionNode
        Parameters:
        context - the variable type bindings to use for this evaluation
      • evaluate

        public Value evaluate​(Context context)
        Evaluate this in a context which must have the arguments bound
        Specified by:
        evaluate in class ExpressionNode
        Parameters:
        context - the variable bindings to use for this evaluation
      • asLongListToDoubleOperator

        public com.yahoo.searchlib.rankingexpression.rule.GeneratorLambdaFunctionNode.LongListToDoubleLambda asLongListToDoubleOperator()
        Returns this as an operator which converts a list of integers into a double