org.joe_e.array
Class CharArray.Builder

java.lang.Object
  extended by org.joe_e.array.ConstArray.Builder<E>
      extended by org.joe_e.array.ImmutableArray.Builder<E>
          extended by org.joe_e.array.PowerlessArray.Builder<Character>
              extended by org.joe_e.array.CharArray.Builder
All Implemented Interfaces:
ArrayBuilder<Character>
Enclosing class:
CharArray

public static final class CharArray.Builder
extends PowerlessArray.Builder<Character>

A CharArray factory.


Method Summary
 void append(char newChar)
          Append a char
 void append(char[] newChars)
          Append an array of chars
 void append(char[] newChars, int off, int len)
          Append a range of elements from an array of chars
 void append(Character newChar)
          Append a Character
 void append(Character[] newChars)
          Append an array of Characters
 void append(Character[] newChars, int off, int len)
          Append a range of elements from an array of Characters
 CharArray snapshot()
          Create a snapshot of the current content.
 
Methods inherited from class org.joe_e.array.ConstArray.Builder
length
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

append

public void append(Character newChar)
Append a Character

Specified by:
append in interface ArrayBuilder<Character>
Overrides:
append in class PowerlessArray.Builder<Character>
Parameters:
newChar - the element to add
Throws:
NegativeArraySizeException - if the resulting internal array would exceed the maximum length of a Java array. The builder is unmodified.

append

public void append(Character[] newChars)
Append an array of Characters

Specified by:
append in interface ArrayBuilder<Character>
Overrides:
append in class PowerlessArray.Builder<Character>
Parameters:
newChars - the elements to add
Throws:
IndexOutOfBoundsException - if the resulting internal array would exceed the maximum length of a Java array. The builder is unmodified.

append

public void append(Character[] newChars,
                   int off,
                   int len)
Append a range of elements from an array of Characters

Specified by:
append in interface ArrayBuilder<Character>
Overrides:
append in class PowerlessArray.Builder<Character>
Parameters:
newChars - the array to add elements from
off - the index of the first element to add
len - the number of elements to add
Throws:
IndexOutOfBoundsException - if an out-of-bounds index would be referenced or the resulting internal array would exceed the maximum length of a Java array. The builder is unmodified.

snapshot

public CharArray snapshot()
Create a snapshot of the current content.

Specified by:
snapshot in interface ArrayBuilder<Character>
Overrides:
snapshot in class PowerlessArray.Builder<Character>
Returns:
a CharArray containing the elements so far

append

public void append(char newChar)
Append a char

Parameters:
newChar - the element to add
Throws:
NegativeArraySizeException - if the resulting internal array would exceed the maximum length of a Java array. The builder is unmodified.

append

public void append(char[] newChars)
Append an array of chars

Parameters:
newChars - the elements to add
Throws:
IndexOutOfBoundsException - if the resulting internal array would exceed the maximum length of a Java array. The builder is unmodified.

append

public void append(char[] newChars,
                   int off,
                   int len)
Append a range of elements from an array of chars

Parameters:
newChars - the array to add elements from
off - the index of the first element to add
len - the number of elements to add
Throws:
IndexOutOfBoundsException - if an out-of-bounds index would be referenced or the resulting internal array would exceed the maximum length of a Java array. The builder is unmodified.