public class PnutsInterpreter extends Runtime implements Visitor
Runtime.Accessor, Runtime.Break, Runtime.Continue, Runtime.FunctionSerializer, Runtime.TypeMapBOOLEAN_SYMBOL, BYTE_SYMBOL, CHAR_SYMBOL, CLONE, DOUBLE_SYMBOL, EXCEPTOIN_FIELD_SYMBOL, FLOAT_SYMBOL, INT_SYMBOL, LONG_SYMBOL, SHORT_SYMBOL, VOID_SYMBOL| Constructor and Description |
|---|
PnutsInterpreter() |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object[] |
_listElements(SimpleNode node,
Context context) |
protected java.lang.Object |
accept(SimpleNode node,
int idx,
Context context) |
java.lang.Object |
addNode(SimpleNode node,
Context context) |
java.lang.Object |
andNode(SimpleNode node,
Context context) |
java.lang.Object |
applicationNode(SimpleNode node,
Context context) |
java.lang.Object |
arrayType(SimpleNode node,
Context context) |
java.lang.Object |
assignment(SimpleNode node,
Context context) |
java.lang.Object |
assignmentAA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentDA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentEA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentLA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentMA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentOA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentPA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentRA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentRAA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentSA(SimpleNode node,
Context context) |
java.lang.Object |
assignmentTA(SimpleNode node,
Context context) |
java.lang.Object |
blockNode(SimpleNode node,
Context context) |
java.lang.Object |
breakNode(SimpleNode node,
Context context) |
java.lang.Object |
castExpression(SimpleNode node,
Context context) |
java.lang.Object |
catchBlock(SimpleNode node,
Context context) |
java.lang.Object |
catchNode(SimpleNode node,
Context context) |
java.lang.Object |
characterNode(SimpleNode node,
Context context) |
java.lang.Object |
classDef(SimpleNode node,
Context context) |
java.lang.Object |
classDefBody(SimpleNode node,
Context context) |
java.lang.Object |
className(SimpleNode node,
Context context) |
java.lang.Object |
classNode(SimpleNode node,
Context context) |
java.lang.Object |
classScript(SimpleNode node,
Context context) |
java.lang.Object |
continueNode(SimpleNode node,
Context context) |
java.lang.Object |
divideNode(SimpleNode node,
Context context) |
java.lang.Object |
doStatement(SimpleNode node,
Context context) |
java.lang.Object |
equalNode(SimpleNode node,
Context context) |
java.lang.Object |
expressionList(SimpleNode node,
Context context) |
java.lang.Object |
falseNode(SimpleNode node,
Context context) |
java.lang.Object |
finallyNode(SimpleNode node,
Context context) |
java.lang.Object |
floatingNode(SimpleNode node,
Context context) |
java.lang.Object |
foreachStatement(SimpleNode node,
Context context) |
java.lang.Object |
forStatement(SimpleNode node,
Context context) |
java.lang.Object |
functionStatement(SimpleNode node,
Context context) |
java.lang.Object |
geNode(SimpleNode node,
Context context) |
java.lang.Object |
global(SimpleNode node,
Context context) |
java.lang.Object |
gtNode(SimpleNode node,
Context context) |
java.lang.Object |
idNode(SimpleNode node,
Context context) |
java.lang.Object |
ifStatement(SimpleNode node,
Context context) |
java.lang.Object |
importNode(SimpleNode node,
Context context) |
java.lang.Object |
indexNode(SimpleNode node,
Context context) |
java.lang.Object |
instanceofExpression(SimpleNode node,
Context context) |
java.lang.Object |
integerNode(SimpleNode node,
Context context) |
java.lang.Object |
leNode(SimpleNode node,
Context context) |
java.lang.Object |
listElements(SimpleNode node,
Context context) |
java.lang.Object |
logAndNode(SimpleNode node,
Context context) |
java.lang.Object |
logNotNode(SimpleNode node,
Context context) |
java.lang.Object |
logOrNode(SimpleNode node,
Context context) |
java.lang.Object |
ltNode(SimpleNode node,
Context context) |
java.lang.Object |
mapNode(SimpleNode node,
Context context) |
java.lang.Object |
memberNode(SimpleNode node,
Context context) |
java.lang.Object |
methodDef(SimpleNode node,
Context context) |
java.lang.Object |
methodNode(SimpleNode node,
Context context) |
java.lang.Object |
modNode(SimpleNode node,
Context context) |
java.lang.Object |
multNode(SimpleNode node,
Context context) |
java.lang.Object |
negativeNode(SimpleNode node,
Context context) |
java.lang.Object |
newNode(SimpleNode node,
Context context) |
java.lang.Object |
notEqNode(SimpleNode node,
Context context) |
java.lang.Object |
notNode(SimpleNode node,
Context context) |
java.lang.Object |
nullNode(SimpleNode node,
Context context) |
java.lang.Object |
orNode(SimpleNode node,
Context context) |
java.lang.Object |
packageNode(SimpleNode node,
Context context) |
java.lang.Object |
postDecrNode(SimpleNode node,
Context context) |
java.lang.Object |
postIncrNode(SimpleNode node,
Context context) |
java.lang.Object |
preDecrNode(SimpleNode node,
Context context) |
java.lang.Object |
preIncrNode(SimpleNode node,
Context context) |
java.lang.Object |
rangeNode(SimpleNode node,
Context context) |
java.lang.Class |
resolveType(SimpleNode typeNode,
Context context) |
java.lang.Object |
returnNode(SimpleNode node,
Context context) |
java.lang.Object |
shiftArithmeticNode(SimpleNode node,
Context context) |
java.lang.Object |
shiftLeftNode(SimpleNode node,
Context context) |
java.lang.Object |
shiftRightNode(SimpleNode node,
Context context) |
java.lang.Object |
start(SimpleNode node,
Context context) |
java.lang.Object |
startSet(SimpleNode node,
Context context) |
java.lang.Object |
staticMemberNode(SimpleNode node,
Context context) |
java.lang.Object |
staticMethodNode(SimpleNode node,
Context context) |
java.lang.Object |
stringNode(SimpleNode node,
Context context) |
java.lang.Object |
subtractNode(SimpleNode node,
Context context) |
java.lang.Object |
switchBlock(SimpleNode node,
Context context) |
java.lang.Object |
switchStatement(SimpleNode node,
Context context) |
java.lang.Object |
ternary(SimpleNode node,
Context context) |
java.lang.Object |
throwNode(SimpleNode node,
Context context) |
java.lang.Object |
trueNode(SimpleNode node,
Context context) |
java.lang.Object |
tryStatement(SimpleNode node,
Context context) |
java.lang.Object |
whileStatement(SimpleNode node,
Context context) |
java.lang.Object |
xorNode(SimpleNode node,
Context context) |
java.lang.Object |
yieldNode(SimpleNode node,
Context context) |
_callConstructor, _callMethod, add, add, add1, add1, addImport, addStaticMembers, and, and, applyGenerator, arraydim, arrayType, call, call, callConstructor, callFunction, callMethod, cast, catchException, checkException, checkException, compareObjects, compareTo, compareTo, createList, createMap, defineTopLevelFunction, defineUnboundFunction, divide, divide, eq, eq, escape, exec, execute, fileToURL, findCallableMethod, format, format, ge, ge, getArrayLength, getBeanProperty, getBeanProperty, getBeanProperty, getBeanPropertyType, getBeginColumn, getBeginLine, getBottomType, getCompiledScript, getConstructors, getElement, getElementAt, getEndLine, getField, getField, getFunction, getFunction, getFunctions, getMessage, getMethods, getProperty, getRange, getRuntime, getScriptReader, getScriptSource, getScriptURL, getStaticField, getThreadContext, gt, gt, isArray, isGenerator, jump, le, le, loadNode, lt, lt, makeArray, matchType, mod, mod, multiply, multiply, ne, ne, negate, negate, newInstance, not, not, or, or, parseChar, parseFloat, parseInt, parseString, primitive, printError, putField, putStaticField, quantity, replaceChar, run, saveNode, setBeanProperty, setBeanProperty, setBeanProperty, setElement, setExitHook, setLine, setLine, setPackage, setRange, setThreadContext, shiftArithmetic, shiftArithmetic, shiftLeft, shiftLeft, shiftRight, shiftRight, subtract, subtract, subtract1, subtract1, throwException, toBoolean, toEnumeration, transform, transform, unparse, xor, xorpublic java.lang.Object start(SimpleNode node, Context context)
public java.lang.Object startSet(SimpleNode node, Context context)
public java.lang.Object expressionList(SimpleNode node, Context context)
expressionList in interface Visitorpublic java.lang.Object global(SimpleNode node, Context context)
public java.lang.Object idNode(SimpleNode node, Context context)
public java.lang.Object className(SimpleNode node, Context context)
public java.lang.Object arrayType(SimpleNode node, Context context)
public java.lang.Object[] _listElements(SimpleNode node, Context context)
public java.lang.Object listElements(SimpleNode node, Context context)
listElements in interface Visitorpublic java.lang.Object mapNode(SimpleNode node, Context context)
public java.lang.Object castExpression(SimpleNode node, Context context)
castExpression in interface Visitorpublic java.lang.Object classNode(SimpleNode node, Context context)
public java.lang.Object newNode(SimpleNode node, Context context)
public java.lang.Object classDef(SimpleNode node, Context context)
public java.lang.Object methodDef(SimpleNode node, Context context)
public java.lang.Object classDefBody(SimpleNode node, Context context)
classDefBody in interface Visitorpublic java.lang.Object classScript(SimpleNode node, Context context)
classScript in interface Visitorpublic java.lang.Object packageNode(SimpleNode node, Context context)
packageNode in interface Visitorpublic java.lang.Object importNode(SimpleNode node, Context context)
importNode in interface Visitorpublic java.lang.Object rangeNode(SimpleNode node, Context context)
public java.lang.Object indexNode(SimpleNode node, Context context)
public java.lang.Object methodNode(SimpleNode node, Context context)
methodNode in interface Visitorpublic java.lang.Object staticMethodNode(SimpleNode node, Context context)
staticMethodNode in interface Visitorpublic java.lang.Object memberNode(SimpleNode node, Context context)
memberNode in interface Visitorpublic java.lang.Object staticMemberNode(SimpleNode node, Context context)
staticMemberNode in interface Visitorpublic java.lang.Object applicationNode(SimpleNode node, Context context)
applicationNode in interface Visitorpublic java.lang.Object integerNode(SimpleNode node, Context context)
integerNode in interface Visitorpublic java.lang.Object floatingNode(SimpleNode node, Context context)
floatingNode in interface Visitorpublic java.lang.Object characterNode(SimpleNode node, Context context)
characterNode in interface Visitorpublic java.lang.Object stringNode(SimpleNode node, Context context)
stringNode in interface Visitorpublic java.lang.Object trueNode(SimpleNode node, Context context)
public java.lang.Object falseNode(SimpleNode node, Context context)
public java.lang.Object nullNode(SimpleNode node, Context context)
public java.lang.Object assignment(SimpleNode node, Context context)
assignment in interface Visitorpublic java.lang.Object assignmentTA(SimpleNode node, Context context)
assignmentTA in interface Visitorpublic java.lang.Object assignmentMA(SimpleNode node, Context context)
assignmentMA in interface Visitorpublic java.lang.Object assignmentDA(SimpleNode node, Context context)
assignmentDA in interface Visitorpublic java.lang.Object assignmentPA(SimpleNode node, Context context)
assignmentPA in interface Visitorpublic java.lang.Object assignmentSA(SimpleNode node, Context context)
assignmentSA in interface Visitorpublic java.lang.Object assignmentLA(SimpleNode node, Context context)
assignmentLA in interface Visitorpublic java.lang.Object assignmentRA(SimpleNode node, Context context)
assignmentRA in interface Visitorpublic java.lang.Object assignmentRAA(SimpleNode node, Context context)
assignmentRAA in interface Visitorpublic java.lang.Object assignmentAA(SimpleNode node, Context context)
assignmentAA in interface Visitorpublic java.lang.Object assignmentEA(SimpleNode node, Context context)
assignmentEA in interface Visitorpublic java.lang.Object assignmentOA(SimpleNode node, Context context)
assignmentOA in interface Visitorpublic java.lang.Object logOrNode(SimpleNode node, Context context)
public java.lang.Object logAndNode(SimpleNode node, Context context)
logAndNode in interface Visitorpublic java.lang.Object orNode(SimpleNode node, Context context)
public java.lang.Object xorNode(SimpleNode node, Context context)
public java.lang.Object andNode(SimpleNode node, Context context)
public java.lang.Object equalNode(SimpleNode node, Context context)
public java.lang.Object notEqNode(SimpleNode node, Context context)
public java.lang.Object instanceofExpression(SimpleNode node, Context context)
instanceofExpression in interface Visitorpublic java.lang.Object ltNode(SimpleNode node, Context context)
public java.lang.Object gtNode(SimpleNode node, Context context)
public java.lang.Object leNode(SimpleNode node, Context context)
public java.lang.Object geNode(SimpleNode node, Context context)
public java.lang.Object shiftLeftNode(SimpleNode node, Context context)
shiftLeftNode in interface Visitorpublic java.lang.Object shiftRightNode(SimpleNode node, Context context)
shiftRightNode in interface Visitorpublic java.lang.Object shiftArithmeticNode(SimpleNode node, Context context)
shiftArithmeticNode in interface Visitorpublic java.lang.Object addNode(SimpleNode node, Context context)
public java.lang.Object subtractNode(SimpleNode node, Context context)
subtractNode in interface Visitorpublic java.lang.Object multNode(SimpleNode node, Context context)
public java.lang.Object divideNode(SimpleNode node, Context context)
divideNode in interface Visitorpublic java.lang.Object modNode(SimpleNode node, Context context)
public java.lang.Object negativeNode(SimpleNode node, Context context)
negativeNode in interface Visitorpublic java.lang.Object preIncrNode(SimpleNode node, Context context)
preIncrNode in interface Visitorpublic java.lang.Object preDecrNode(SimpleNode node, Context context)
preDecrNode in interface Visitorpublic java.lang.Object postIncrNode(SimpleNode node, Context context)
postIncrNode in interface Visitorpublic java.lang.Object postDecrNode(SimpleNode node, Context context)
postDecrNode in interface Visitorpublic java.lang.Object notNode(SimpleNode node, Context context)
public java.lang.Object logNotNode(SimpleNode node, Context context)
logNotNode in interface Visitorpublic java.lang.Object continueNode(SimpleNode node, Context context)
continueNode in interface Visitorpublic java.lang.Object breakNode(SimpleNode node, Context context)
public java.lang.Object returnNode(SimpleNode node, Context context)
returnNode in interface Visitorpublic java.lang.Object yieldNode(SimpleNode node, Context context)
public java.lang.Object catchNode(SimpleNode node, Context context)
public java.lang.Object throwNode(SimpleNode node, Context context)
public java.lang.Object finallyNode(SimpleNode node, Context context)
finallyNode in interface Visitorpublic java.lang.Object tryStatement(SimpleNode node, Context context)
tryStatement in interface Visitorpublic java.lang.Object catchBlock(SimpleNode node, Context context)
catchBlock in interface Visitorpublic java.lang.Object blockNode(SimpleNode node, Context context)
public java.lang.Object ifStatement(SimpleNode node, Context context)
ifStatement in interface Visitorpublic java.lang.Object doStatement(SimpleNode node, Context context)
doStatement in interface Visitorpublic java.lang.Object whileStatement(SimpleNode node, Context context)
whileStatement in interface Visitorpublic java.lang.Object forStatement(SimpleNode node, Context context)
forStatement in interface Visitorpublic java.lang.Object foreachStatement(SimpleNode node, Context context)
foreachStatement in interface Visitorpublic java.lang.Object switchStatement(SimpleNode node, Context context)
switchStatement in interface Visitorpublic java.lang.Object switchBlock(SimpleNode node, Context context)
switchBlock in interface Visitorpublic java.lang.Object functionStatement(SimpleNode node, Context context)
functionStatement in interface Visitorpublic java.lang.Object ternary(SimpleNode node, Context context)
protected java.lang.Object accept(SimpleNode node, int idx, Context context)
public java.lang.Class resolveType(SimpleNode typeNode, Context context)