Class LambdaFunctionNode

All Implemented Interfaces:
Serializable

public class LambdaFunctionNode extends CompositeNode
A free, parametrized function
Author:
bratseth
See Also:
  • Constructor Details

  • Method Details

    • children

      public List<ExpressionNode> children()
      Description copied from class: CompositeNode
      Returns a read-only list containing the immediate children of this composite.
      Specified by:
      children in class CompositeNode
      Returns:
      The children of this.
    • setChildren

      public CompositeNode setChildren(List<ExpressionNode> children)
      Description copied from class: CompositeNode
      Returns a copy of this where the children is replaced by the given children.
      Specified by:
      setChildren in class CompositeNode
    • toString

      public StringBuilder toString(StringBuilder string, SerializationContext context, Deque<String> path, CompositeNode parent)
      Description copied from class: ExpressionNode
      Returns this in serialized form.
      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 is 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
    • asDoubleUnaryOperator

      public DoubleUnaryOperator asDoubleUnaryOperator()
      Returns this as a double unary operator
      Throws:
      IllegalStateException - if this has more than one argument
    • asDoubleBinaryOperator

      public DoubleBinaryOperator asDoubleBinaryOperator()
      Returns this as a double binary operator
      Throws:
      IllegalStateException - if this has more than two arguments
    • hashCode

      public int hashCode()
      Description copied from class: ExpressionNode
      Returns a hashcode computed from the data in this
      Specified by:
      hashCode in class ExpressionNode