Class AbstractStackFrame

java.lang.Object
org.eclipse.m2m.atl.engine.emfvm.lib.AbstractStackFrame
Direct Known Subclasses:
StackFrame

public abstract class AbstractStackFrame extends Object
Abstract Stack Frame definition.
  • Field Details

    • execEnv

      protected ExecEnv execEnv
      The execution environment.
    • caller

      protected AbstractStackFrame caller
    • operation

      protected Operation operation
    • localVars

      protected Object[] localVars
      The local variables list.
  • Constructor Details

    • AbstractStackFrame

      public AbstractStackFrame(ExecEnv execEnv, ASMModule asmModule, Operation operation)
      Creates a new AbstractStackFrame with the given parameters.
      Parameters:
      execEnv - the execution environment
      asmModule - the transformation module
      operation - the main operation
    • AbstractStackFrame

      protected AbstractStackFrame(AbstractStackFrame caller, Operation frameOperation)
      Creates a new StackFrame.
      Parameters:
      caller - the parent stack frame
      frameOperation - the operation
    • AbstractStackFrame

      protected AbstractStackFrame(ExecEnv execEnv)
      Creates an empty StackFrame which refers to its ExecEnv.
      Parameters:
      execEnv - the ExecEnv
  • Method Details

    • newFrame

      public abstract AbstractStackFrame newFrame(Operation frameOperation)
      Returns a new frame for the given operation.
      Parameters:
      frameOperation - the frame operation
      Returns:
      a new frame for the given operation
    • getAsmModule

      public ASMModule getAsmModule()
    • getLocalVars

      public Object[] getLocalVars()
    • setLocalVars

      public void setLocalVars(Object[] localVars)
    • getExecEnv

      public ExecEnv getExecEnv()
    • getOperation

      public Operation getOperation()
    • getCaller

      public AbstractStackFrame getCaller()
    • getLocalVariables

      public Map<String,Object> getLocalVariables()
      Returns the local variables map.
      Returns:
      the local variables map
    • enter

      public AbstractStackFrame enter()
      Makes the tool enter the frame.
      Returns:
      self
    • leave

      public void leave()
      Makes the tool leave the frame.
    • getStack

      Gets a list of the stacks.
      Returns:
      the Stack list
    • getSourceLocation

      public String getSourceLocation()
    • getOpName

      public String getOpName()
    • getLocation

      public abstract int getLocation()
      Returns the current location.
      Returns:
      the current location