org.eclipse.ocl
Interface Environment.Internal<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

All Superinterfaces:
Adaptable, BasicEnvironment, Customizable, Environment<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
All Known Implementing Classes:
AbstractEnvironment, EcoreEnvironment, UMLEnvironment
Enclosing interface:
Environment<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

public static interface Environment.Internal<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
extends BasicEnvironment, Environment<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

An interface that merges the Environment and BasicEnvironment interfaces that define the behaviour realised in abstract form by AbstractEnvironment. The purpose of this interface is primarily for internal use by the parser and/or the particular environment implementation and its corresponding factory. Client applications will not usually need to use this interface.

This interface is not expected to be implemented by clients. It may be implemented by custom Environment classes, but it is recommended to extend the AbstractEnvironment class.

Since:
1.2
Author:
Christian W. Damus (cdamus)

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.eclipse.ocl.Environment
Environment.Internal<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>, Environment.Lookup<PK,C,O,P>, Environment.Registry
 
Field Summary
 
Fields inherited from interface org.eclipse.ocl.Environment
OCL_NAMESPACE_URI, RESULT_VARIABLE_NAME, SELF_VARIABLE_NAME
 
Method Summary
 void addHelperOperation(C owner, O operation)
          Adds an OCL-defined additional ("helper") operation to the environment.
 void addHelperProperty(C owner, P property)
          Adds an OCL-defined additional ("helper") attribute to the environment.
 void dispose()
          Disposes of any objects that I have created that should be cleaned up.
 Environment.Internal<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> getInternalParent()
          Obtains my parent environment after construction.
 void setInternalParent(Environment.Internal<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> parent)
          Assigns me a parent environment after construction.
 
Methods inherited from interface org.eclipse.ocl.lpg.BasicEnvironment
analyzerError, analyzerError, analyzerError, analyzerWarning, getASTMapping, getFormatter, getParser, getProblemHandler, initASTMapping, lexerError, parserError, problem, setParser, setProblemHandler, utilityError, validatorError
 
Methods inherited from interface org.eclipse.ocl.util.Adaptable
getAdapter
 
Methods inherited from interface org.eclipse.ocl.options.Customizable
clearOptions, getOptions, getValue, isEnabled, putOptions, removeOption, removeOptions, setOption
 
Methods inherited from interface org.eclipse.ocl.Environment
addElement, defineAttribute, defineOperation, deleteElement, getAdditionalAttributes, getAdditionalOperations, getBodyCondition, getContextClassifier, getContextOperation, getContextPackage, getContextProperty, getDefinition, getDeriveConstraint, getFactory, getInitConstraint, getOCLFactory, getOCLStandardLibrary, getParent, getSelfVariable, getStates, getTypeResolver, getUMLReflection, getVariables, isEmpty, isInPostcondition, lookup, lookupAssociationClassReference, lookupClassifier, lookupImplicitSourceForAssociationClass, lookupImplicitSourceForOperation, lookupImplicitSourceForProperty, lookupImplicitSourceForSignal, lookupImplicitSourceForState, lookupLocal, lookupOperation, lookupPackage, lookupProperty, lookupSignal, lookupState, setBodyCondition, setDeriveConstraint, setInitConstraint, setParent, setSelfVariable, undefine
 

Method Detail

getInternalParent

Environment.Internal<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> getInternalParent()
Obtains my parent environment after construction.

Returns:
my parent

setInternalParent

void setInternalParent(Environment.Internal<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> parent)
Assigns me a parent environment after construction. It is not advisable to set the parent to null if I previously had one.

Parameters:
parent - my new parent

addHelperOperation

void addHelperOperation(C owner,
                        O operation)
Adds an OCL-defined additional ("helper") operation to the environment. This is primarily intended for internal use by the OCL environment implementation and should only be used for properties defined via OCL (such as by the Environment.defineOperation(C, java.lang.String, C, java.util.List>, CT) method).

Parameters:
owner - the classifier in which context the attribute is defined
operation - the additional operation

addHelperProperty

void addHelperProperty(C owner,
                       P property)
Adds an OCL-defined additional ("helper") attribute to the environment. This is primarily intended for internal use by the OCL environment implementation and should only be used for properties defined via OCL (such as by the Environment.defineAttribute(C, org.eclipse.ocl.expressions.Variable, CT) method).

Parameters:
owner - the classifier in which context the attribute is defined
property - the additional attribute

dispose

void dispose()
Disposes of any objects that I have created that should be cleaned up.

Since:
1.2