## org.eclipse.ocl.expressions.operations
Class IteratorExpOperations

    java.lang.Object
      org.eclipse.ocl.expressions.operations.LoopExpOperations
          org.eclipse.ocl.expressions.operations.IteratorExpOperations

    public class IteratorExpOperations

extends LoopExpOperations

A static utility class that provides operations related to 'Iterator Exp' model objects.

The following operations are supported:

- `Check Boolean Type`
- `Check Collect Type`
- `Check Select Reject Type`
- `Check Boolean Body Type`

Constructor Summary
`protected` `IteratorExpOperations()`

Method Summary

`static

`<C,PM> boolean`

`

`checkBooleanBodyType(IteratorExp<C,PM> iteratorExp, DiagnosticChain diagnostics, Map<Object,Object> context)`
name = 'exists' or name = 'forAll' or name = 'select' or name = 'reject' implies body.type.name = 'Boolean'

`static

`<C,PM> boolean`

`

`checkBooleanType(IteratorExp<C,PM> iteratorExp, DiagnosticChain diagnostics, Map<Object,Object> context)`
name = 'exists' or name = 'forAll' or name = 'isUnique' implies type.oclIsKindOf(PrimitiveType) and type.name = 'Boolean'

`static

`<C,PM> boolean`

`

`checkCollectType(IteratorExp<C,PM> iteratorExp, DiagnosticChain diagnostics, Map<Object,Object> context)`
name = 'collect' implies if source.type.oclIsKindOf(SequenceType) then type = expression.type.collectionType->select(oclIsTypeOf(SequenceType))->first() else type = expression.type.collectionType->select(oclIsTypeOf(BagType))->first() endif

`static

`<C,PM> boolean`

`

`checkSelectRejectType(IteratorExp<C,PM> iteratorExp, DiagnosticChain diagnostics, Map<Object,Object> context)`
name = 'select' or name = 'reject' implies type = source.type

Methods inherited from class org.eclipse.ocl.expressions.operations.LoopExpOperations
`checkLoopVariableInit, checkLoopVariableType, checkSourceCollection`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### IteratorExpOperations

    protected IteratorExpOperations()

Method Detail

### checkBooleanType

    public static <C,PM> boolean checkBooleanType(IteratorExp<C,PM> iteratorExp,
                                                  DiagnosticChain diagnostics,
                                                  Map<Object,Object> context)

  name = 'exists' or name = 'forAll' or name = 'isUnique' implies type.oclIsKindOf(PrimitiveType) and type.name = 'Boolean'

  Parameters:
    `iteratorExp` - The receiving 'Iterator Exp' model object.
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.

### checkCollectType

    public static <C,PM> boolean checkCollectType(IteratorExp<C,PM> iteratorExp,
                                                  DiagnosticChain diagnostics,
                                                  Map<Object,Object> context)

  name = 'collect' implies if source.type.oclIsKindOf(SequenceType) then type = expression.type.collectionType->select(oclIsTypeOf(SequenceType))->first() else type = expression.type.collectionType->select(oclIsTypeOf(BagType))->first() endif

  Parameters:
    `iteratorExp` - The receiving 'Iterator Exp' model object.
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.

### checkSelectRejectType

    public static <C,PM> boolean checkSelectRejectType(IteratorExp<C,PM> iteratorExp,
                                                       DiagnosticChain diagnostics,
                                                       Map<Object,Object> context)

  name = 'select' or name = 'reject' implies type = source.type

  Parameters:
    `iteratorExp` - The receiving 'Iterator Exp' model object.
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.

### checkBooleanBodyType

    public static <C,PM> boolean checkBooleanBodyType(IteratorExp<C,PM> iteratorExp,
                                                      DiagnosticChain diagnostics,
                                                      Map<Object,Object> context)

  name = 'exists' or name = 'forAll' or name = 'select' or name = 'reject' implies body.type.name = 'Boolean'

  Parameters:
    `iteratorExp` - The receiving 'Iterator Exp' model object.
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.

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