public class PnutsImpl extends Runtime implements Implementation
Runtime.Accessor, Runtime.Break, Runtime.Continue, Runtime.FunctionSerializer, Runtime.TypeMap
Modifier and Type | Field and Description |
---|---|
protected java.util.Properties |
properties |
BOOLEAN_SYMBOL, BYTE_SYMBOL, CHAR_SYMBOL, CLONE, DOUBLE_SYMBOL, EXCEPTOIN_FIELD_SYMBOL, FLOAT_SYMBOL, INT_SYMBOL, LONG_SYMBOL, SHORT_SYMBOL, VOID_SYMBOL
Constructor and Description |
---|
PnutsImpl() |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
accept(SimpleNode node,
Context context)
Interpret an AST
|
java.lang.Object |
eval(java.lang.String expr,
Context context)
Evaluate an expreesion
|
static PnutsImpl |
getDefault()
Returns the default PnutsImpl object
|
java.lang.Object |
load(java.lang.String file,
Context context)
Load a script file using classloader
|
java.lang.Object |
load(java.net.URL scriptURL,
Context context)
Load a script file from a URL
|
java.lang.Object |
loadFile(java.lang.String filename,
Context context)
Load a script file from local file system
|
protected void |
popFile(Context context)
Tell the context that the current script file has been completed.
|
protected void |
provide(java.lang.String file,
Context context)
Check if any exception handler for the specified exception is defined.
|
protected void |
pushFile(java.lang.Object file,
Context context)
Tell the context that it's started processing the script file.
|
java.lang.String |
queryProperty(java.lang.String key) |
protected void |
revoke(java.lang.String file,
Context context) |
void |
setProperties(java.util.Properties properties) |
void |
setProperty(java.lang.String key,
java.lang.String value) |
_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, xor
public static PnutsImpl getDefault()
public void setProperties(java.util.Properties properties)
public void setProperty(java.lang.String key, java.lang.String value)
public java.lang.String queryProperty(java.lang.String key)
public java.lang.Object eval(java.lang.String expr, Context context)
eval
in interface Implementation
expr
- the expression to be evaluatedcontext
- the context in which the expression is evaluatedpublic java.lang.Object loadFile(java.lang.String filename, Context context) throws java.io.FileNotFoundException
loadFile
in interface Implementation
filename
- the file name of the scriptcontext
- the context in which the expression is evaluatedjava.io.FileNotFoundException
public java.lang.Object load(java.lang.String file, Context context) throws java.io.FileNotFoundException
load
in interface Implementation
file
- the name of the scriptcontext
- the context in which the script is executedjava.io.FileNotFoundException
public java.lang.Object load(java.net.URL scriptURL, Context context)
load
in interface Implementation
scriptURL
- the URL of the scriptcontext
- the context in which the script is executedpublic java.lang.Object accept(SimpleNode node, Context context)
Implementation
accept
in interface Implementation
node
- the ASTcontext
- the context in which the AST is interpretedprotected void pushFile(java.lang.Object file, Context context)
protected void popFile(Context context)
protected void provide(java.lang.String file, Context context)
protected void revoke(java.lang.String file, Context context)