oscript.interpreter
Class InterpretedNodeEvaluator

java.lang.Object
  extended byoscript.NodeEvaluator
      extended byoscript.interpreter.InterpretedNodeEvaluator

public class InterpretedNodeEvaluator
extends NodeEvaluator

Version:
1.10
Author:
Rob Clark (rob@ti.com)

Field Summary
 
Fields inherited from class oscript.NodeEvaluator
ALL, PRIVATE, PUBPROT, SMIT_PERMS
 
Method Summary
 java.lang.Object evalNode(StackFrame sf, Scope scope)
          Evaluate, in the specified scope.
 AbstractFile getFile()
          Get the file that this node was parsed from.
 int getId()
          Get the function symbol (name), if this node evaluator is a function, otherwise return -1.
 SymbolTable getSharedMemberIndexTable(int perm)
          Get the SMIT for the scope(s) created when invoking this node evaluator.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getFile

public AbstractFile getFile()
Get the file that this node was parsed from.

Specified by:
getFile in class NodeEvaluator
Returns:
the file

getId

public int getId()
Get the function symbol (name), if this node evaluator is a function, otherwise return -1.

Specified by:
getId in class NodeEvaluator
Returns:
the symbol, or -1

evalNode

public java.lang.Object evalNode(StackFrame sf,
                                 Scope scope)
                          throws PackagedScriptObjectException
Evaluate, in the specified scope. If this is a function, the Arguments to the function, etc., are defined in the scope that the function is evaluated in.

Specified by:
evalNode in class NodeEvaluator
Parameters:
sf - the stack frame to evaluate the node in
scope - the scope to evaluate the function in
Returns:
the result of evaluating the function
Throws:
PackagedScriptObjectException

getSharedMemberIndexTable

public SymbolTable getSharedMemberIndexTable(int perm)
Get the SMIT for the scope(s) created when invoking this node evaluator.

Specified by:
getSharedMemberIndexTable in class NodeEvaluator
Parameters:
perm - PRIVATE, PUBPROT, ALL