## org.eclipse.m2m.atl.engine.emfvm
Class StackFrame

    java.lang.Object
      org.eclipse.m2m.atl.engine.emfvm.lib.AbstractStackFrame
          org.eclipse.m2m.atl.engine.emfvm.StackFrame

    public class StackFrame

extends AbstractStackFrame

The Stack Frame implementation.

Nested Class Summary

Nested classes/interfaces inherited from class org.eclipse.m2m.atl.engine.emfvm.lib.AbstractStackFrame
`AbstractStackFrame.StackSequence`

Field Summary

Fields inherited from class org.eclipse.m2m.atl.engine.emfvm.lib.AbstractStackFrame
`caller, execEnv, localVars, operation`

Constructor Summary
`` `StackFrame(ExecEnv execEnv)` Creates an empty StackFrame which refers to its `ExecEnv`.
`` `StackFrame(ExecEnv execEnv, ASMModule asmModule, Operation operation)` Creates a new `StackFrame` with the given parameters.
`protected` `StackFrame(StackFrame caller, Operation operation)` Creates a new StackFrame.

Method Summary
`int` `getLocation()` Returns the current location.
`int` `getPc()`
`protected java.lang.String` `getStringLocation()` Returns the current location.
`AbstractStackFrame` `newFrame(Operation operation)` Returns a new frame for the given operation.
`java.lang.String` `resolveVariableName(int slot)` Returns the variable name at the given slot.
`void` `setPc(int pc)`
`java.lang.String` `toString()`

Methods inherited from class org.eclipse.m2m.atl.engine.emfvm.lib.AbstractStackFrame
`enter, getAsmModule, getCaller, getExecEnv, getLocalVariables, getLocalVars, getOperation, getOpName, getSourceLocation, getStack, leave, setLocalVars`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### StackFrame

    public StackFrame(ExecEnv execEnv,
                      ASMModule asmModule,
                      Operation operation)

  Creates a new `StackFrame` with the given parameters.

  Parameters:
    `execEnv` - the execution environment
    `asmModule` - the transformation module
    `operation` - the main operation

### StackFrame

    protected StackFrame(StackFrame caller,
                         Operation operation)

  Creates a new StackFrame.

  Parameters:
    `caller` - the parent stack frame
    `operation` - the operation

### StackFrame

    public StackFrame(ExecEnv execEnv)

  Creates an empty StackFrame which refers to its `ExecEnv`.

  Parameters:
    `execEnv` - the `ExecEnv`

Method Detail

### newFrame

    public AbstractStackFrame newFrame(Operation operation)

  Returns a new frame for the given operation.

  Specified by:
    `newFrame` in class `AbstractStackFrame`
  Parameters:
    `operation` - the frame operation
  Returns:
    a new frame for the given operation
  See Also:
    `AbstractStackFrame.newFrame(org.eclipse.m2m.atl.engine.emfvm.lib.Operation)`

### getStringLocation

    protected java.lang.String getStringLocation()

  Returns the current location.

  Returns:
    the current location

### getLocation

    public int getLocation()

  Returns the current location.

  Specified by:
    `getLocation` in class `AbstractStackFrame`
  Returns:
    the current location
  See Also:
    `AbstractStackFrame.getLocation()`

### resolveVariableName

    public java.lang.String resolveVariableName(int slot)

  Returns the variable name at the given slot.

  Parameters:
    `slot` - the slot
  Returns:
    the variable name at the given slot

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`
  See Also:
    `Object.toString()`

### getPc

    public int getPc()

### setPc

    public void setPc(int pc)

Copyright 2007 IBM Corporation and others. All Rights Reserved.