## 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.

Field Summary

Fields inherited from class org.eclipse.m2m.atl.engine.vm.ExecEnv
`globalVariables`

Constructor Summary
`ASMExecEnv(ASMModule asm, Debugger debugger)`
`ASMExecEnv(ASMModule asm, Debugger debugger, boolean cacheAttributeHelperResults)`

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`

Constructor Detail

### ASMExecEnv

    public ASMExecEnv(ASMModule asm,
                      Debugger debugger)

### ASMExecEnv

    public ASMExecEnv(ASMModule asm,
                      Debugger debugger,
                      boolean cacheAttributeHelperResults)

Method Detail

### 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)

Copyright 2007 IBM Corporation and others. All Rights Reserved.