Class ConstantNode

  • All Implemented Interfaces:
    java.io.Serializable

    public final class ConstantNode
    extends ExpressionNode
    A node which holds a constant (frozen) value.
    Author:
    Simon Thoresen Hult
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      ConstantNode​(Value value)  
      ConstantNode​(Value value, java.lang.String sourceImage)
      Creates a constant value
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Value evaluate​(Context context)
      Returns the value of evaluating this expression over the given context.
      Value getValue()  
      java.lang.String sourceString()
      Returns the string which created this, or the value.toString() if not known
      java.lang.StringBuilder toString​(java.lang.StringBuilder string, SerializationContext context, java.util.Deque<java.lang.String> path, CompositeNode parent)
      Returns a script instance of this based on the supplied script functions.
      com.yahoo.tensor.TensorType type​(com.yahoo.tensor.evaluation.TypeContext<Reference> context)
      Returns the type this will return if evaluated with the given context.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • ConstantNode

        public ConstantNode​(Value value)
      • ConstantNode

        public ConstantNode​(Value value,
                            java.lang.String sourceImage)
        Creates a constant value
        Parameters:
        value - the value. Ownership of this value is transferred to this.
        sourceImage - the source string image producing this value
    • Method Detail

      • getValue

        public Value getValue()
      • toString

        public java.lang.StringBuilder toString​(java.lang.StringBuilder string,
                                                SerializationContext context,
                                                java.util.Deque<java.lang.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.
      • sourceString

        public java.lang.String sourceString()
        Returns the string which created this, or the value.toString() if not known
      • 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)
        Description copied from class: ExpressionNode
        Returns the value of evaluating this expression over the given context.
        Specified by:
        evaluate in class ExpressionNode
        Parameters:
        context - the variable bindings to use for this evaluation