groovy.lang

## Class Sequence

- java.lang.Object
- - java.util.AbstractCollection<E>
  - - java.util.AbstractList<E>
    - - java.util.ArrayList
      - - groovy.lang.Sequence

All Implemented Interfaces:
  GroovyObject, Serializable, Cloneable, Iterable, Collection, List, RandomAccess

Direct Known Subclasses:
  NonEmptySequence

    public class Sequence
    extends ArrayList
    implements GroovyObject

Represents a sequence of objects which represents zero or many instances of of objects of a given type. The type can be ommitted in which case any type of object can be added.

Version:
  $Revision: 12708 $
Author:
  James Strachan
See Also:
  Serialized Form

### Field Summary

### Fields inherited from class java.util.AbstractList

`modCount`

### Constructor Summary

Constructors
Constructor and Description
`Sequence()`
`Sequence(Class type)`
`Sequence(Class type, List content)`

### Method Summary

Methods
`void` `add(int index, Object element)`
`boolean` `add(Object element)`
`boolean` `addAll(Collection c)`
`boolean` `addAll(int index, Collection c)`
`protected void` `checkCollectionType(Collection c)` Checks that each member of the given collection are of the correct type
`protected void` `checkType(Object object)` Checks that the given object instance is of the correct type otherwise a runtime exception is thrown
`void` `clear()`
`boolean` `equals(Object that)`
`boolean` `equals(Sequence that)`
`MetaClass` `getMetaClass()` Returns the metaclass for a given class.
`Object` `getProperty(String property)` Retrieves a property value.
`int` `hashCode()`
`Object` `invokeMethod(String name, Object args)` Invokes the given method.
`int` `minimumSize()`
`Object` `remove(int index)`
`protected void` `removeRange(int fromIndex, int toIndex)`
`void` `set(Collection collection)` Sets the contents of this sequence to that of the given collection.
`Object` `set(int index, Object element)`
`void` `setMetaClass(MetaClass metaClass)` Allows the MetaClass to be replaced with a derived implementation.
`void` `setProperty(String property, Object newValue)` Sets the given property to the new value.
`Class` `type()`

### Methods inherited from class java.util.ArrayList

`clone, contains, ensureCapacity, get, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, removeAll, retainAll, size, subList, toArray, toArray, trimToSize`

### Methods inherited from class java.util.AbstractCollection

`containsAll, toString`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.util.List

`containsAll`

### Constructor Detail

#### Sequence

    public Sequence()

#### Sequence

    public Sequence(Class type)

#### Sequence

    public Sequence(Class type,
            List content)

### Method Detail

#### set

    public void set(Collection collection)

Sets the contents of this sequence to that of the given collection.

#### equals

    public boolean equals(Object that)

Specified by:
  `equals` in interface `Collection`
Specified by:
  `equals` in interface `List`
Overrides:
  `equals` in class `AbstractList`

#### equals

    public boolean equals(Sequence that)

#### hashCode

    public int hashCode()

Specified by:
  `hashCode` in interface `Collection`
Specified by:
  `hashCode` in interface `List`
Overrides:
  `hashCode` in class `AbstractList`

#### minimumSize

    public int minimumSize()

#### type

    public Class type()

Returns:
  the type of the elements in the sequence or null if there is no type constraint on this sequence

#### add

    public void add(int index,
           Object element)

Specified by:
  `add` in interface `List`
Overrides:
  `add` in class `ArrayList`

#### add

    public boolean add(Object element)

Specified by:
  `add` in interface `Collection`
Specified by:
  `add` in interface `List`
Overrides:
  `add` in class `ArrayList`

#### addAll

    public boolean addAll(Collection c)

Specified by:
  `addAll` in interface `Collection`
Specified by:
  `addAll` in interface `List`
Overrides:
  `addAll` in class `ArrayList`

#### addAll

    public boolean addAll(int index,
                 Collection c)

Specified by:
  `addAll` in interface `List`
Overrides:
  `addAll` in class `ArrayList`

#### clear

    public void clear()

Specified by:
  `clear` in interface `Collection`
Specified by:
  `clear` in interface `List`
Overrides:
  `clear` in class `ArrayList`

#### remove

    public Object remove(int index)

Specified by:
  `remove` in interface `List`
Overrides:
  `remove` in class `ArrayList`

#### removeRange

    protected void removeRange(int fromIndex,
                   int toIndex)

Overrides:
  `removeRange` in class `ArrayList`

#### set

    public Object set(int index,
             Object element)

Specified by:
  `set` in interface `List`
Overrides:
  `set` in class `ArrayList`

#### invokeMethod

    public Object invokeMethod(String name,
                      Object args)

Description copied from interface: `GroovyObject`
Invokes the given method.

Specified by:
  `invokeMethod` in interface `GroovyObject`
Parameters:
  `name` - the name of the method to call
  `args` - the arguments to use for the method call
Returns:
  the result of invoking the method

#### getProperty

    public Object getProperty(String property)

Description copied from interface: `GroovyObject`
Retrieves a property value.

Specified by:
  `getProperty` in interface `GroovyObject`
Parameters:
  `property` - the name of the property of interest
Returns:
  the given property

#### setProperty

    public void setProperty(String property,
                   Object newValue)

Description copied from interface: `GroovyObject`
Sets the given property to the new value.

Specified by:
  `setProperty` in interface `GroovyObject`
Parameters:
  `property` - the name of the property of interest
  `newValue` - the new value for the property

#### getMetaClass

    public MetaClass getMetaClass()

Description copied from interface: `GroovyObject`
Returns the metaclass for a given class.

Specified by:
  `getMetaClass` in interface `GroovyObject`
Returns:
  the metaClass of this instance

#### setMetaClass

    public void setMetaClass(MetaClass metaClass)

Description copied from interface: `GroovyObject`
Allows the MetaClass to be replaced with a derived implementation.

Specified by:
  `setMetaClass` in interface `GroovyObject`
Parameters:
  `metaClass` - the new metaclass

#### checkCollectionType

    protected void checkCollectionType(Collection c)

Checks that each member of the given collection are of the correct type

#### checkType

    protected void checkType(Object object)

Checks that the given object instance is of the correct type otherwise a runtime exception is thrown