## org.eclipse.ocl.types
Interface CollectionType<C,O>

All Superinterfaces:
  ASTNode, EObject, Notifier, PredefinedType<O>, TypedASTNode

All Known Subinterfaces:
  BagType<C,O>, BagType, CollectionType, OrderedSetType<C,O>, OrderedSetType, SequenceType<C,O>, SequenceType, SetType<C,O>, SetType

All Known Implementing Classes:
  BagTypeImpl, BagTypeImpl, CollectionTypeImpl, CollectionTypeImpl, OrderedSetTypeImpl, OrderedSetTypeImpl, SequenceTypeImpl, SequenceTypeImpl, SetTypeImpl, SetTypeImpl

    public interface CollectionType<C,O>

extends PredefinedType<O>, TypedASTNode

A representation of the model object 'Collection Type'.

The following features are supported:

- `Element Type`
- `Kind`

See Also:
  `TypesPackage.getCollectionType()`

Field Summary
`static String` `SINGLETON_NAME`

Fields inherited from interface org.eclipse.ocl.utilities.PredefinedType

`ABS, ABS_NAME, ALL_INSTANCES, ALL_INSTANCES_NAME, AND, AND_NAME, ANY, ANY_NAME, APPEND, APPEND_NAME, AS_BAG, AS_BAG_NAME, AS_ORDERED_SET, AS_ORDERED_SET_NAME, AS_SEQUENCE, AS_SEQUENCE_NAME, AS_SET, AS_SET_NAME, AT, AT_NAME, CLOSURE, CLOSURE_NAME, COLLECT, COLLECT_NAME, COLLECT_NESTED, COLLECT_NESTED_NAME, CONCAT, CONCAT_NAME, COUNT, COUNT_NAME, DIV, DIV_NAME, DIVIDE, DIVIDE_NAME, EQUAL, EQUAL_NAME, EXCLUDES, EXCLUDES_ALL, EXCLUDES_ALL_NAME, EXCLUDES_NAME, EXCLUDING, EXCLUDING_NAME, EXISTS, EXISTS_NAME, FIRST, FIRST_NAME, FLATTEN, FLATTEN_NAME, FLOOR, FLOOR_NAME, FOR_ALL, FOR_ALL_NAME, GREATER_THAN, GREATER_THAN_EQUAL, GREATER_THAN_EQUAL_NAME, GREATER_THAN_NAME, HAS_RETURNED, HAS_RETURNED_NAME, IMPLIES, IMPLIES_NAME, INCLUDES, INCLUDES_ALL, INCLUDES_ALL_NAME, INCLUDES_NAME, INCLUDING, INCLUDING_NAME, INDEX_OF, INDEX_OF_NAME, INSERT_AT, INSERT_AT_NAME, INTERSECTION, INTERSECTION_NAME, IS_EMPTY, IS_EMPTY_NAME, IS_OPERATION_CALL, IS_OPERATION_CALL_NAME, IS_SIGNAL_SENT, IS_SIGNAL_SENT_NAME, IS_UNIQUE, IS_UNIQUE_NAME, LAST, LAST_NAME, LESS_THAN, LESS_THAN_EQUAL, LESS_THAN_EQUAL_NAME, LESS_THAN_NAME, MAX, MAX_NAME, MIN, MIN_NAME, MINUS, MINUS_NAME, MOD, MOD_NAME, NOT, NOT_EMPTY, NOT_EMPTY_NAME, NOT_EQUAL, NOT_EQUAL_NAME, NOT_NAME, OCL_AS_TYPE, OCL_AS_TYPE_NAME, OCL_IS_IN_STATE, OCL_IS_IN_STATE_NAME, OCL_IS_INVALID, OCL_IS_INVALID_NAME, OCL_IS_KIND_OF, OCL_IS_KIND_OF_NAME, OCL_IS_NEW, OCL_IS_NEW_NAME, OCL_IS_TYPE_OF, OCL_IS_TYPE_OF_NAME, OCL_IS_UNDEFINED, OCL_IS_UNDEFINED_NAME, ONE, ONE_NAME, OR, OR_NAME, PLUS, PLUS_NAME, PREPEND, PREPEND_NAME, PRODUCT, PRODUCT_NAME, REJECT, REJECT_NAME, RESULT, RESULT_NAME, ROUND, ROUND_NAME, SELECT, SELECT_NAME, SIZE, SIZE_NAME, SORTED_BY, SORTED_BY_NAME, SUB_ORDERED_SET, SUB_ORDERED_SET_NAME, SUB_SEQUENCE, SUB_SEQUENCE_NAME, SUBSTRING, SUBSTRING_NAME, SUM, SUM_NAME, SYMMETRIC_DIFFERENCE, SYMMETRIC_DIFFERENCE_NAME, TIMES, TIMES_NAME, TO_INTEGER, TO_INTEGER_NAME, TO_LOWER, TO_LOWER_NAME, TO_REAL, TO_REAL_NAME, TO_UPPER, TO_UPPER_NAME, UNION, UNION_NAME, XOR, XOR_NAME`

Method Summary
`boolean` `checkCollectionTypeName(DiagnosticChain diagnostics, Map<Object,Object> context)` self.name = 'Collection(' + self.elementType.name + ')'
`boolean` `checkNoInvalidValues(DiagnosticChain diagnostics, Map<Object,Object> context)` self->forAll(not oclIsInvalid())
`C` `getElementType()` Returns the value of the 'Element Type' reference
`CollectionKind` `getKind()` Returns the value of the 'Kind' attribute.
`EList<O>` `oclIterators()` If the meaning of the 'Iterators' reference list isn't clear, there really should be more of a description here...
`void` `setElementType(C value)` Sets the value of the '`Element Type`' reference

Methods inherited from interface org.eclipse.ocl.utilities.PredefinedType
`getName, oclOperations`

Methods inherited from interface org.eclipse.ocl.utilities.TypedASTNode
`getTypeEndPosition, getTypeStartPosition, setTypeEndPosition, setTypeStartPosition`

Methods inherited from interface org.eclipse.ocl.utilities.ASTNode
`getEndPosition, getStartPosition, setEndPosition, setStartPosition`

Field Detail

### SINGLETON_NAME

    static final String SINGLETON_NAME

See Also:
  Constant Field Values

Method Detail

### getElementType

    C getElementType()

  Returns the value of the 'Element Type' reference.

  If the meaning of the 'Element Type' reference isn't clear, there really should be more of a description here...

  Returns:
    the value of the 'Element Type' reference.
  See Also:
    `setElementType(Object)`, `TypesPackage.getCollectionType_ElementType()`

### setElementType

    void setElementType(C value)

  Sets the value of the '`Element Type`' reference.

  Parameters:
    `value` - the new value of the 'Element Type' reference.
  See Also:
    `getElementType()`

### getKind

    CollectionKind getKind()

  Returns the value of the 'Kind' attribute. The literals are from the enumeration `CollectionKind`.

  If the meaning of the 'Collection Kind' attribute isn't clear, there really should be more of a description here...

  Returns:
    the value of the 'Kind' attribute.
  See Also:
    `CollectionKind`, `TypesPackage.getCollectionType_Kind()`

### checkCollectionTypeName

    boolean checkCollectionTypeName(DiagnosticChain diagnostics,
                                    Map<Object,Object> context)

  self.name = 'Collection(' + self.elementType.name + ')'

  Parameters:
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.

### checkNoInvalidValues

    boolean checkNoInvalidValues(DiagnosticChain diagnostics,
                                 Map<Object,Object> context)

  self->forAll(not oclIsInvalid())

  Parameters:
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.

### oclIterators

    EList<O> oclIterators()

  If the meaning of the 'Iterators' reference list isn't clear, there really should be more of a description here...

Copyright 2002, 2007 IBM Corporation and others. All Rights Reserved.