Class IntBigList.ReadOnlyIntBigList

All Implemented Interfaces:
Serializable, Cloneable, IIntListable
Enclosing class:
IntBigList

protected static class IntBigList.ReadOnlyIntBigList extends IntBigList
A read-only version of
invalid reference
Key1List
. It is used to implement both unmodifiable and immutable lists. Note that the client cannot change the list, but the content may change if the underlying list is changed.
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      UID for serialization
      See Also:
  • Constructor Details

    • ReadOnlyIntBigList

      protected ReadOnlyIntBigList(IntBigList that)
      Private constructor used internally.
      Parameters:
      that - list to create an immutable view of
  • Method Details

    • doAdd

      protected boolean doAdd(int index, int elem)
      Description copied from class: IIntList
      Helper method for adding an element to the list. This is the only method which really adds an element. Override if you need to validity checks before adding.
      Overrides:
      doAdd in class IntBigList
      Parameters:
      index - index where element should be added (-1 means it is up to the implementation to choose the index)
      elem - element to add
      Returns:
      true if element has been added, false otherwise
    • doSet

      protected int doSet(int index, int elem)
      Description copied from class: IIntList
      Helper method for setting an element in the list. This is the only method which really sets an element. Override if you need to validity checks before setting.
      Overrides:
      doSet in class IntBigList
      Parameters:
      index - index where element will be placed
      elem - element to set
      Returns:
      old element which was at the position
    • doReSet

      protected int doReSet(int index, int elem)
      Description copied from class: IIntList
      Sets an element at specified position. This method is used internally if existing elements will be moved etc. Override if you need to validity checks.
      Overrides:
      doReSet in class IntBigList
      Parameters:
      index - index where element will be placed
      elem - element to set
      Returns:
      old element which was at the position
    • doRemove

      protected int doRemove(int index)
      Description copied from class: IIntList
      Helper method to remove an element. This is the only method which really removes an element. Override if you need to validity checks before removing.
      Overrides:
      doRemove in class IntBigList
      Parameters:
      index - index of element to remove
      Returns:
      removed element
    • doRemoveAll

      protected void doRemoveAll(int index, int len)
      Description copied from class: IIntList
      Remove specified range of elements from list.
      Overrides:
      doRemoveAll in class IntBigList
      Parameters:
      index - index of first element to remove
      len - number of elements to remove
    • doClear

      protected void doClear()
      Overrides:
      doClear in class IntBigList
    • doModify

      protected void doModify()
      Description copied from class: IIntList
      This method is called internally before elements are allocated or freed. Override if you need to validity checks.
      Overrides:
      doModify in class IIntList
    • error

      private void error()
      Throw exception if an attempt is made to change an immutable list.