Class ObjectRegister<O>

java.lang.Object
com.pervasive.datarush.tokens.scalar.ObjectRegister<O>
Type Parameters:
O - the type of Java object contained in the token
All Implemented Interfaces:
DataRegister, ObjectSettable<O>, ObjectValued<O>, ScalarRegister, ScalarSettable, ScalarValued, TokenSettable, TokenValued, ObjectTyped<O>, ScalarTyped, TokenTyped, Serializable

public final class ObjectRegister<O> extends Object implements ScalarRegister, ObjectSettable<O>
A mutable ObjectValued object.
See Also:
  • Constructor Details

    • ObjectRegister

      public ObjectRegister(ObjectTokenType<O> type)
      Creates a new null-valued register of the specified object type.
      Parameters:
      type - the object type allowed as register values
  • Method Details

    • setNull

      public void setNull()
      Description copied from interface: TokenSettable
      Sets the contained value to be null valued.
      Specified by:
      setNull in interface TokenSettable
    • setZero

      public void setZero()
      Description copied from interface: TokenSettable
      Sets the contained value to be zero valued.
      Specified by:
      setZero in interface TokenSettable
    • set

      public void set(O value)
      Description copied from interface: ObjectSettable
      Sets the container to the given object value.

      The value is stored by reference. Therefore, the caller must guarantee that the provided object will not be modified subsequent to this call. Failure to comply may result in unexpected behavior.

      Specified by:
      set in interface ObjectSettable<O>
      Parameters:
      value - object value to which to set the container
    • set

      public void set(TokenValued value)
      Description copied from interface: TokenSettable
      Sets the contained value to the given token value. The given value must have a type compatible with this object.
      Specified by:
      set in interface TokenSettable
      Parameters:
      value - the value to which to set the container
    • getType

      public final ObjectTokenType<O> getType()
      Description copied from interface: TokenValued
      Gets the data type of the token. This type will dictate the valid values that can be contained.
      Specified by:
      getType in interface ObjectTyped<O>
      Specified by:
      getType in interface ObjectValued<O>
      Specified by:
      getType in interface ScalarTyped
      Specified by:
      getType in interface ScalarValued
      Specified by:
      getType in interface TokenTyped
      Specified by:
      getType in interface TokenValued
      Returns:
      the token type.
    • asObject

      public final O asObject()
      Description copied from interface: ObjectValued
      Gets the contained Java object.
      Specified by:
      asObject in interface ObjectValued<O>
      Returns:
      the contained value. If null valued, as indicated by TokenValued.isNull(), null is returned.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • isZero

      public boolean isZero()
      Description copied from interface: ScalarValued
      Indicates whether the value is the zero value for the type. Zero values are not stored in sparse representation formats.
      Specified by:
      isZero in interface ScalarValued
      Returns:
      true if the value is the zero value, false otherwise.
    • isNull

      public final boolean isNull()
      Description copied from interface: TokenValued
      Indicates whether the token is null valued. Tokens support null values analogous to SQL. Before accessing the value of the container, it is usually best to ensure it is not null valued using this method.
      Specified by:
      isNull in interface TokenValued
      Returns:
      true if the token is null valued, false otherwise