Class PeriodTokenList

java.lang.Object
com.pervasive.datarush.sequences.scalar.AbstractScalarTokenSequence
com.pervasive.datarush.sequences.scalar.PeriodTokenList
All Implemented Interfaces:
MutableTokenSequence, MutablePeriodTokenSequence, MutableScalarTokenSequence, PeriodTokenSequence, ScalarTokenAppendable, ScalarTokenSequence, TokenAppendable, TokenSequence, ScalarTyped, TokenTyped

public final class PeriodTokenList extends AbstractScalarTokenSequence implements MutablePeriodTokenSequence
Primary implementation of MutablePeriodTokenSequence.
See Also:
  • Constructor Details

    • PeriodTokenList

      public PeriodTokenList(int initialCapacity)
      Create an empty array
      Parameters:
      initialCapacity - the initial capacity.
  • Method Details

    • getType

      public ScalarTokenType getType()
      Description copied from interface: ScalarTokenSequence
      Gets the data type of the tokens in the sequence.
      Specified by:
      getType in interface ScalarTokenSequence
      Specified by:
      getType in interface ScalarTyped
      Specified by:
      getType in interface TokenTyped
      Returns:
      the token data type
    • getToken

      public PeriodValued getToken(int index)
      Description copied from interface: TokenSequence
      Gets the value at the specified position.
      Specified by:
      getToken in interface PeriodTokenSequence
      Specified by:
      getToken in interface ScalarTokenSequence
      Specified by:
      getToken in interface TokenSequence
      Parameters:
      index - the index of the token
      Returns:
      the value
    • getPeriod

      public Period getPeriod(int index)
      Description copied from interface: PeriodTokenSequence
      Gets the value of the specified token as a period.
      Specified by:
      getPeriod in interface PeriodTokenSequence
      Parameters:
      index - the position of the token in the sequence
      Returns:
      the value of the token. If the token is null valued, null is returned.
    • getYears

      public int getYears(int index)
      Description copied from interface: PeriodTokenSequence
      Gets the year portion of the value of the specified token.
      Specified by:
      getYears in interface PeriodTokenSequence
      Parameters:
      index - the position of the token in the sequence
      Returns:
      the year value of the token. If the token is null valued, 0 is returned.
    • getMonths

      public int getMonths(int index)
      Description copied from interface: PeriodTokenSequence
      Gets the month portion of the value of the specified token.
      Specified by:
      getMonths in interface PeriodTokenSequence
      Parameters:
      index - the position of the token in the sequence
      Returns:
      the month value of the token. If the token is null valued, 0 is returned.
    • getDays

      public int getDays(int index)
      Description copied from interface: PeriodTokenSequence
      Gets the day portion of the value of the specified token.
      Specified by:
      getDays in interface PeriodTokenSequence
      Parameters:
      index - the position of the token in the sequence
      Returns:
      the day value of the token. If the token is null valued, 0 is returned.
    • getValues

      public void getValues(int start, int[] yearValues, int[] monthValues, int[] dayValues, boolean[] nullsValues, int offset, int length)
      Description copied from interface: PeriodTokenSequence
      Gets the values and null indicators for a range of tokens.
      Specified by:
      getValues in interface PeriodTokenSequence
      Parameters:
      start - the starting index of the range
      yearValues - an array into which to place the year values of elements
      monthValues - an array into which to place the month values of elements
      dayValues - an array into which to place the day values of elements
      nullsValues - an array into which to place null indicator values
      offset - the starting offset into the target arrays. That is, elements[offset] and nulls[offset] will get the value and null indicator respectively of the token at position start, and so on.
      length - number of tokens to get
    • newValueIterator

      public PeriodValuedIterator newValueIterator()
      Description copied from interface: TokenSequence
      Creates an iterator over the non-null values of this sequence. The iterator will automatically be reset as modifications are made to the sequence.
      Specified by:
      newValueIterator in interface PeriodTokenSequence
      Specified by:
      newValueIterator in interface ScalarTokenSequence
      Specified by:
      newValueIterator in interface TokenSequence
      Returns:
      an newly-created iterator over the non-null values of this sequence.
    • isZero

      public boolean isZero(int index)
      Description copied from interface: ScalarTokenSequence
      Indicates whether the specified token has a zero value.
      Specified by:
      isZero in interface ScalarTokenSequence
      Parameters:
      index - the index of the token
      Returns:
      true if the element is zero, false otherwise
    • setNull

      public void setNull(int index)
      Description copied from interface: MutableTokenSequence
      Sets the token at the specified position to be null valued.
      Specified by:
      setNull in interface MutableTokenSequence
      Parameters:
      index - the position of the token in the array
    • setNull

      public void setNull(int start, int length)
      Description copied from interface: MutableTokenSequence
      Sets the tokens in the specified subsequence to be null valued.
      Specified by:
      setNull in interface MutableTokenSequence
      Parameters:
      start - the starting index of the subsequence in the array
      length - the length of the subsequence
    • setZero

      public void setZero(int index)
      Description copied from interface: MutableTokenSequence
      Sets the token at the specified position to be zero valued.
      Specified by:
      setZero in interface MutableTokenSequence
      Parameters:
      index - the position of the token in the array
    • setZero

      public void setZero(int start, int length)
      Description copied from interface: MutableTokenSequence
      Sets the tokens in the specified subsequence to be zero valued.
      Specified by:
      setZero in interface MutableTokenSequence
      Parameters:
      start - the starting index of the subsequence in the array
      length - the length of the subsequence
    • setValue

      public void setValue(int index, TokenValued value)
      Description copied from interface: MutableTokenSequence
      Sets the token at the specified position to the given value.
      Specified by:
      setValue in interface MutableTokenSequence
      Parameters:
      index - the position of the token in the array
      value - the value to which to set the token. This value must be of an appropriate type for the array.
    • fillPeriods

      public void fillPeriods(int start, int length, int years, int months, int days)
      Sets the tokens in the specified subsequence to a period value specified as years, months, and days.
      Parameters:
      start - the starting index of the subsequence in the array
      length - the length of the subsequence
      years - number of years in period
      months - number of months in period
      days - number of days in period
    • fillValue

      public void fillValue(int start, int length, TokenValued value)
      Description copied from interface: MutableTokenSequence
      Sets the tokens in the specified subsequence to the given value.
      Specified by:
      fillValue in interface MutableTokenSequence
      Parameters:
      start - the starting index of the subsequence in the array
      length - the length of the subsequence
      value - the value to which to set the tokens. This value must be of an appropriate type for the array
    • setValues

      public void setValues(int start, TokenSequence values, int offset, int length)
      Description copied from interface: MutableTokenSequence
      Sets the tokens in the specified subsequence of the array to the corresponding values from a subsequence of the given source sequence.
      Specified by:
      setValues in interface MutableTokenSequence
      Parameters:
      start - the starting index of the subsequence in the array
      values - the source sequence. This sequence must be of an appropriate type for the array.
      offset - the starting index in the source sequence. Corresponding values will be taken relative to this position. That is, the value of the token at position offset in values will be assigned to the token at position start, and so on.
      length - the number of tokens to copy
    • append

      public void append(Period value)
      Description copied from interface: MutablePeriodTokenSequence
      Appends the specified period to this sequence.
      Specified by:
      append in interface MutablePeriodTokenSequence
      Parameters:
      value - the value to append. If null, this is equivalent to appendNull().
    • appendPeriod

      public void appendPeriod(int years, int months, int days)
      Description copied from interface: MutablePeriodTokenSequence
      Appends the period specified in years, months, and days to this sequence.
      Specified by:
      appendPeriod in interface MutablePeriodTokenSequence
      Parameters:
      years - the number of years in the period.
      months - the number of months in the period.
      days - the number of days in the period.
    • append

      public void append(Period value, int count)
      Description copied from interface: MutablePeriodTokenSequence
      Appends the specified period to this sequence multiple times.
      Specified by:
      append in interface MutablePeriodTokenSequence
      Parameters:
      value - the value to append. If null, this is equivalent to appendNull().
      count - the number of copies to append.
    • appendPeriod

      public void appendPeriod(int years, int months, int days, int count)
      Description copied from interface: MutablePeriodTokenSequence
      Appends the period specified in years, months, and days to this sequence multiple times.
      Specified by:
      appendPeriod in interface MutablePeriodTokenSequence
      Parameters:
      years - the number of years in the period.
      months - the number of months in the period.
      days - the number of days in the period.
      count - the number of copies to append.
    • set

      public void set(int index, Period value)
      Description copied from interface: MutablePeriodTokenSequence
      Sets the token at the specified position to the given value.
      Specified by:
      set in interface MutablePeriodTokenSequence
      Parameters:
      index - the position to modify
      value - the period to which to set the token.
    • setPeriod

      public void setPeriod(int index, int years, int months, int days)
      Description copied from interface: MutablePeriodTokenSequence
      Sets the token at the specified position to the given value.
      Specified by:
      setPeriod in interface MutablePeriodTokenSequence
      Parameters:
      index - the position to modify
      years - the number of years in the period.
      months - the number of months in the period.
      days - the number of days in the period.
    • getTokenSetter

      public PeriodSettable getTokenSetter(int index)
      Description copied from interface: MutableTokenSequence
      Returns a mutator for the given index.
      Specified by:
      getTokenSetter in interface MutablePeriodTokenSequence
      Specified by:
      getTokenSetter in interface MutableScalarTokenSequence
      Specified by:
      getTokenSetter in interface MutableTokenSequence
      Parameters:
      index - the position
      Returns:
      a mutator for the given index.