org.eclipse.m2m.atl.engine.emfvm.lib
Class AbstractStackFrame

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

public abstract class AbstractStackFrame
extends java.lang.Object

Abstract Stack Frame definition.


Nested Class Summary
 class AbstractStackFrame.StackSequence
          A Sequence of AbstractStackFrame.
 
Field Summary
protected  AbstractStackFrame caller
           
protected  ExecEnv execEnv
          The execution environment.
protected  java.lang.Object[] localVars
          The local variables list.
protected  Operation operation
           
 
Constructor Summary
protected AbstractStackFrame(AbstractStackFrame caller, Operation frameOperation)
          Creates a new StackFrame.
protected AbstractStackFrame(ExecEnv execEnv)
          Creates an empty StackFrame which refers to its ExecEnv.
  AbstractStackFrame(ExecEnv execEnv, ASMModule asmModule, Operation operation)
          Creates a new AbstractStackFrame with the given parameters.
 
Method Summary
 AbstractStackFrame enter()
          Makes the tool enter the frame.
 ASMModule getAsmModule()
           
 AbstractStackFrame getCaller()
           
 ExecEnv getExecEnv()
           
 java.util.Map<java.lang.String,java.lang.Object> getLocalVariables()
          Returns the local variables map.
 java.lang.Object[] getLocalVars()
           
abstract  int getLocation()
          Returns the current location.
 Operation getOperation()
           
 java.lang.String getOpName()
           
 java.lang.String getSourceLocation()
           
 AbstractStackFrame.StackSequence getStack()
          Gets a list of the stacks.
 void leave()
          Makes the tool leave the frame.
abstract  AbstractStackFrame newFrame(Operation frameOperation)
          Returns a new frame for the given operation.
 void setLocalVars(java.lang.Object[] localVars)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

execEnv

protected ExecEnv execEnv
The execution environment.


caller

protected AbstractStackFrame caller

operation

protected Operation operation

localVars

protected java.lang.Object[] localVars
The local variables list.

Constructor Detail

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 Detail

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 java.lang.Object[] getLocalVars()

setLocalVars

public void setLocalVars(java.lang.Object[] localVars)

getExecEnv

public ExecEnv getExecEnv()

getOperation

public Operation getOperation()

getCaller

public AbstractStackFrame getCaller()

getLocalVariables

public java.util.Map<java.lang.String,java.lang.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

public AbstractStackFrame.StackSequence getStack()
Gets a list of the stacks.

Returns:
the Stack list

getSourceLocation

public java.lang.String getSourceLocation()

getOpName

public java.lang.String getOpName()

getLocation

public abstract int getLocation()
Returns the current location.

Returns:
the current location

Copyright 2007 IBM Corporation and others.
All Rights Reserved.