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

    java.lang.Object
      org.eclipse.ocl.expressions.operations.OCLExpressionOperations
          org.eclipse.ocl.expressions.operations.MessageExpOperations

    public class MessageExpOperations

extends OCLExpressionOperations

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

The following operations are supported:

- `Check Operation Arguments`
- `Check Signal Arguments`
- `Check Target Defines Operation`
- `Check Has Operation Or Signal`
- `Check Target Not Collection`

Constructor Summary
`protected` `MessageExpOperations()`

Method Summary

`static

`<C,COA,SSA> boolean`

`

`checkHasOperationOrSignal(MessageExp<C,COA,SSA> messageExp, DiagnosticChain diagnostics, Map<Object,Object> context)`
calledOperation->size() + sentSignal->size() = 1

`static

`<C,COA,SSA> boolean`

`

`checkOperationArguments(MessageExp<C,COA,SSA> messageExp, DiagnosticChain diagnostics, Map<Object,Object> context)`
calledOperation->notEmpty() implies argument->forall (a | a.type.conformsTo (self.calledOperation.operation.ownedParameter-> select( kind = ParameterDirectionKind::in ) ->at (argument->indexOf (a)).type))

`static

`<C,COA,SSA> boolean`

`

`checkSignalArguments(MessageExp<C,COA,SSA> messageExp, DiagnosticChain diagnostics, Map<Object,Object> context)`
sentSignal->notEmpty() implies argument->forall (a | a.type.conformsTo (self.sentSignal.signal.ownedAttribute ->at (argument->indexOf (a)).type))

`static

`<C,COA,SSA> boolean`

`

`checkTargetDefinesOperation(MessageExp<C,COA,SSA> messageExp, DiagnosticChain diagnostics, Map<Object,Object> context)`
calledOperation->notEmpty() implies target.type.allOperations()->includes(calledOperation.operation)

`static

`<C,COA,SSA> boolean`

`

`checkTargetNotCollection(MessageExp<C,COA,SSA> messageExp, DiagnosticChain diagnostics, Map<Object,Object> context)`
not target.type.oclIsKindOf(CollectionType)

Methods inherited from class org.eclipse.ocl.expressions.operations.OCLExpressionOperations
`accept, getName, getType, setName, setType`

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

Constructor Detail

### MessageExpOperations

    protected MessageExpOperations()

Method Detail

### checkOperationArguments

    public static <C,COA,SSA> boolean checkOperationArguments(MessageExp<C,COA,SSA> messageExp,
                                                              DiagnosticChain diagnostics,
                                                              Map<Object,Object> context)

  calledOperation->notEmpty() implies argument->forall (a | a.type.conformsTo (self.calledOperation.operation.ownedParameter-> select( kind = ParameterDirectionKind::in ) ->at (argument->indexOf (a)).type))

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

### checkSignalArguments

    public static <C,COA,SSA> boolean checkSignalArguments(MessageExp<C,COA,SSA> messageExp,
                                                           DiagnosticChain diagnostics,
                                                           Map<Object,Object> context)

  sentSignal->notEmpty() implies argument->forall (a | a.type.conformsTo (self.sentSignal.signal.ownedAttribute ->at (argument->indexOf (a)).type))

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

### checkTargetDefinesOperation

    public static <C,COA,SSA> boolean checkTargetDefinesOperation(MessageExp<C,COA,SSA> messageExp,
                                                                  DiagnosticChain diagnostics,
                                                                  Map<Object,Object> context)

  calledOperation->notEmpty() implies target.type.allOperations()->includes(calledOperation.operation)

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

### checkHasOperationOrSignal

    public static <C,COA,SSA> boolean checkHasOperationOrSignal(MessageExp<C,COA,SSA> messageExp,
                                                                DiagnosticChain diagnostics,
                                                                Map<Object,Object> context)

  calledOperation->size() + sentSignal->size() = 1

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

### checkTargetNotCollection

    public static <C,COA,SSA> boolean checkTargetNotCollection(MessageExp<C,COA,SSA> messageExp,
                                                               DiagnosticChain diagnostics,
                                                               Map<Object,Object> context)

  not target.type.oclIsKindOf(CollectionType)

  Parameters:
    `messageExp` - The receiving 'Message 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.