Annotation Type OperationMeta
-
@Target(METHOD) @Retention(RUNTIME) public @interface OperationMetaMarker annotation for providing details for a VIL operation implementation. For detailing operation parameters, seeParameterMeta.- Author:
- Holger Eichelberger
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description booleanallowsAggregationWhether iterator aggregation (first declarator with default value denotes result value and type) is supported or not.booleanflattenWhether the result type shall be flattened to a non-collection type.int[]genericArgumentDenotes the index values of the generic parameters to be replaced by the given argument types.java.lang.String[]nameThe actual names of the operation as it shall appear in VIL.java.lang.String[]notOclCompliantWhich names fromname()is not OCL compliant.OperationTypeopTypeThe type of this operation.
The operation type (OperationType.NORMALby default)booleanrequiresDynamicExpressionProcessingIndicates whether this function requires dynamic expression processing and may cause problems with serialized models in standalone settings without xText.
Whether dynamic expression processing is required (defaultfalse)java.lang.Class<?>[]returnGenericsThe generic parameters of the return type.java.lang.Class<?>returnTypeAllows overriding the actual return type, e.g., to nail down covariant return types that may be resolved in reflection to the type of the overridden base method.booleanstoreArtifactsBeforeWhether artifacts in the current context shall be stored before executing this operation.booleantraceDisables tracing the execution, e.g., in case of output operations.booleanuseAnyIf Any/Object is the return type, don't override this when resolving expression results.intuseGenericParameterWhether a generic parameter (index) of the operand shall be used as return type.booleanuseOperandTypeAsParameterUse the actual operand type as parameter.intuseParameterWhether a parameter (0-based index) shall be used as return type.
-
-
-
-
notOclCompliant
java.lang.String[] notOclCompliant
Which names fromname()is not OCL compliant. Only aliases shall be given here.- Returns:
- the names
- Default:
- {}
-
-
-
opType
OperationType opType
The type of this operation.
The operation type (OperationType.NORMALby default)- Returns:
- the type
- Default:
- net.ssehub.easy.instantiation.core.model.vilTypes.OperationType.NORMAL
-
-
-
returnType
java.lang.Class<?> returnType
Allows overriding the actual return type, e.g., to nail down covariant return types that may be resolved in reflection to the type of the overridden base method. Must be compliant to the method declaration. Default value is thevoid.class.- Returns:
- the actual return type
- Default:
- void.class
-
-
-
storeArtifactsBefore
boolean storeArtifactsBefore
Whether artifacts in the current context shall be stored before executing this operation. Such operations have more precendece than dynamic auto-store preferences (exclusion) inthe runtime environment.- Returns:
- whether artifacts in the current context shall be stored before executing this operation
- Default:
- false
-
-
-
requiresDynamicExpressionProcessing
boolean requiresDynamicExpressionProcessing
Indicates whether this function requires dynamic expression processing and may cause problems with serialized models in standalone settings without xText.
Whether dynamic expression processing is required (defaultfalse)- Returns:
- whether dynamic expression processing is required
- Default:
- false
-
-
-
genericArgument
int[] genericArgument
Denotes the index values of the generic parameters to be replaced by the given argument types. Negative values indicate that the given argument types shall be used. May be required to force / enable automatic conversion.- Returns:
- the generic arguments as 0-based indexes
- Default:
- {}
-
-