org.eclipse.m2m.atl.engine.vm
Class ASMExecEnv
java.lang.Object
org.eclipse.m2m.atl.engine.vm.ExecEnv
org.eclipse.m2m.atl.engine.vm.ASMExecEnv
public class ASMExecEnv
- extends ExecEnv
An ASMExecEnv is an execution environment for ATL Stack Machine programs. It holds: * the only call Stack
of the machine (no multi-thread support required), * the Map of models used by the program, * the Map of
program-specific operations and attribute helpers. This permits several transformations to be launched in
sequence without altering one another.
Method Summary |
ASMModule |
getASMModule()
|
ASMOclAny |
getHelperValue(StackFrame frame,
ASMOclAny element,
java.lang.String name)
|
Operation |
getOperation(ASMOclType type,
java.lang.String name)
|
java.util.Collection |
getOperations(ASMOclType type)
|
boolean |
isHelper(ASMOclType type,
java.lang.String name)
|
boolean |
isWeavingHelper(ASMOclType type,
java.lang.String name)
|
void |
registerAttributeHelper(ASMOclType type,
java.lang.String name,
Operation oper)
|
void |
registerOperations(ASM currentAsm)
|
void |
registerWeavingHelper(ASMOclType type,
java.lang.String name,
java.lang.String persistTo)
|
void |
setHelperValue(StackFrame frame,
ASMOclAny element,
java.lang.String name,
ASMOclAny value)
|
void |
terminated()
|
Methods inherited from class org.eclipse.m2m.atl.engine.vm.ExecEnv |
addModel, addModel, addPermission, checkPermission, empty, getDebugger, getModel, getModels, getStack, getVariable, peek, pop, printStackTrace, push |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ASMExecEnv
public ASMExecEnv(ASMModule asm,
Debugger debugger)
ASMExecEnv
public ASMExecEnv(ASMModule asm,
Debugger debugger,
boolean cacheAttributeHelperResults)
getASMModule
public ASMModule getASMModule()
registerOperations
public void registerOperations(ASM currentAsm)
getOperations
public java.util.Collection getOperations(ASMOclType type)
getOperation
public Operation getOperation(ASMOclType type,
java.lang.String name)
terminated
public void terminated()
registerWeavingHelper
public void registerWeavingHelper(ASMOclType type,
java.lang.String name,
java.lang.String persistTo)
registerAttributeHelper
public void registerAttributeHelper(ASMOclType type,
java.lang.String name,
Operation oper)
isHelper
public boolean isHelper(ASMOclType type,
java.lang.String name)
isWeavingHelper
public boolean isWeavingHelper(ASMOclType type,
java.lang.String name)
getHelperValue
public ASMOclAny getHelperValue(StackFrame frame,
ASMOclAny element,
java.lang.String name)
setHelperValue
public void setHelperValue(StackFrame frame,
ASMOclAny element,
java.lang.String name,
ASMOclAny value)