public class Compilation extends java.lang.Object implements SourceLocator
SourceLocator.Simple
Modifier and Type | Field and Description |
---|---|
static Type[] |
apply0args |
static Method |
apply0method |
static Type[] |
apply1args |
static Method |
apply1method |
static Type[] |
apply2args |
static Method |
apply2method |
static Method |
apply3method |
static Method |
apply4method |
static Method |
applyCpsMethod |
static Method[] |
applymethods |
static Type[] |
applyNargs |
static Method |
applyNmethod |
static Field |
argsCallContextField |
static int |
BODY_PARSED
State code indicating the entire module has been parsed.
|
static int |
CALL_WITH_CONSUMER
Function results are written to the current CallContext's Consumer.
|
static int |
CALL_WITH_CONTINUATIONS
Support for full continuations.
|
static int |
CALL_WITH_RETURN
Plain calling convention, using regular Java parameters and returns.
|
static int |
CALL_WITH_TAILCALLS
Like CALL_WITH_CONSUMER, but handle full on-stack-growing tail-calls.
|
static int |
CALL_WITH_UNSPECIFIED |
static int |
CLASS_WRITTEN
State code indicating that bytecode has been written to its target.
|
java.lang.String |
classPrefix
If non-null: a prefix for generateClassName to prepend to names.
|
static java.lang.String |
classPrefixDefault |
static int |
COMPILE_SETUP
State code that various compile-only data has been determined.
|
static int |
COMPILED
State code indicating the bytecode has been generated.
|
ClassType |
curClass |
LambdaExp |
curLambda |
protected ScopeExp |
current_scope |
Options |
currentOptions |
static boolean |
debugPrintANF |
static boolean |
debugPrintExpr
If true, print out expressions after parsing and before optimizations.
|
static boolean |
debugPrintFinalExpr
If true, print out final expressions after optimizations etc.
|
static int |
defaultCallConvention
The default calling convention.
|
static int |
defaultClassFileVersion |
static boolean |
emitSourceDebugExtAttr |
static boolean |
enableANF |
static int |
ERROR_SEEN |
boolean |
explicit
Compilation was explicitly requested, rather than being a dependency.
|
java.util.Stack<Expression> |
exprStack
A help vector for building expressions.
|
static Field |
falseConstant |
static Options.OptionInfo |
fullTailCallsVariable |
static Method |
getCallContextInstanceMethod |
static Method |
getCurrentEnvironmentMethod |
static Method |
getNextArgMethod |
boolean |
immediate
True if the compiled result will be immediately loaded.
|
static boolean |
inlineOk |
static Type[] |
int1Args |
static ClassType |
javaStringType |
protected Language |
language |
Lexer |
lexer |
NameLookup |
lexical
Current lexical scope - map name to Declaration.
|
ClassType |
mainClass |
ModuleExp |
mainLambda |
static Options.OptionInfo |
mainMethodVariable |
static Options.OptionInfo |
maxErrors |
protected SourceMessages |
messages |
Method |
method
The current method.
|
static int |
MODULE_NONSTATIC |
static int |
MODULE_STATIC |
static int |
MODULE_STATIC_DEFAULT |
static int |
MODULE_STATIC_RUN |
ClassType |
moduleClass
Generated class that extends ModuleBody.
|
static int |
moduleStatic
Default for whether a module is static.
|
boolean |
mustCompile
True if the form is too complex to evaluate,and we must compile it.
|
static Field |
noArgsField |
static ArrayType |
objArrayType |
static Options |
options |
static Field |
pcCallContextField |
java.util.Stack<java.lang.Object> |
pendingImports
Stack of quads of (ModuleInfo, ScopeExp, position, formSize).
|
static int |
PRE_WALKED
State code when initial tree-walking (PushApply) are done.
|
static Field |
procCallContextField |
static int |
PROLOG_PARSED
We have determined the module name and class, but not finished parsing.
|
static int |
PROLOG_PARSING
State code for initial pre-parse looking for module name.
|
static int |
RESOLVED
State code for lexical bindings having been resolved.
|
static ClassType |
scmBooleanType |
static ClassType |
scmKeywordType |
static ClassType |
scmListType |
static ClassType |
scmSequenceType |
static Type[] |
string1Arg |
java.util.Map<java.lang.String,ModuleInfo> |
subModuleMap |
static Type[] |
sym1Arg |
Variable |
thisDecl |
static Field |
trueConstant |
static ClassType |
typeApplet |
static ClassType |
typeCallContext |
static ClassType |
typeCharSequence |
static ClassType |
typeClass |
static ClassType |
typeClassType |
static ClassType |
typeCompiledProc |
static ClassType |
typeConsumer |
static ClassType |
typeEnvironment |
static ClassType |
typeFieldLocation |
static ClassType |
typeLanguage |
static ClassType |
typeList |
static ClassType |
typeLocation |
static ClassType |
typeLocationProc |
static ClassType |
typeMethodProc |
static ClassType |
typeModuleBody |
static ClassType |
typeObject |
static ClassType |
typeObjectType |
static ClassType |
typePair |
static ClassType |
typeProcedure |
static ClassType |
typeProcedure0 |
static ClassType |
typeProcedure1 |
static ClassType |
typeProcedure2 |
static ClassType |
typeProcedure3 |
static ClassType |
typeProcedure4 |
static ClassType[] |
typeProcedureArray |
static ClassType |
typeProcedureN |
static ClassType |
typeRunnable |
static ClassType |
typeRunnableModule |
static ClassType |
typeServlet |
static ClassType |
typeStaticFieldLocation |
static ClassType |
typeString |
static ClassType |
typeSymbol |
static ClassType |
typeType |
static ClassType |
typeValues |
static Field |
voidConsumerInstanceField |
static int |
WALKED
State code when various inlining and optimization passes are done.
|
static Options.OptionInfo |
warnAsError |
static Options.OptionInfo |
warnInvokeUnknownMethod |
static Options.OptionInfo |
warnUndefinedVariable |
static Options.OptionInfo |
warnUninitialized |
static Options.OptionInfo |
warnUnknownMember |
static Options.OptionInfo |
warnUnreachable |
static Options.OptionInfo |
warnUnused |
static Options.OptionInfo |
warnVoidUsed |
static boolean |
writeImplicitClasses |
Constructor and Description |
---|
Compilation(Language language,
SourceMessages messages,
NameLookup lexical) |
Modifier and Type | Method and Description |
---|---|
void |
addClass(ClassType new_class) |
void |
addMainClass(ModuleExp module) |
Field |
allocLocalField(Type type,
java.lang.String name) |
Expression |
applyFunction(Expression func)
A language-dependent "apply" function for generic application.
|
Type |
asBooleanValue(ConditionalTarget target,
Type stackType)
Hook for language-specific handling in ConditionalTarget.
|
void |
cleanupAfterCompilation() |
void |
compileConstant(java.lang.Object value)
Emit code to "evaluate" a compile-time constant.
|
void |
compileConstant(java.lang.Object value,
Target target) |
void |
compileToArchive(ModuleExp mexp,
java.lang.String fname) |
int |
currentCallConvention() |
LambdaExp |
currentLambda() |
ModuleExp |
currentModule()
The same as getModule, until we allow nested modules.
|
ScopeExp |
currentScope() |
void |
emitCoerceToBoolean()
Generate code to test if an object is considered true.
|
void |
emitPushBoolean(boolean value)
Push language-specific boxed true or false value.
|
void |
error(char severity,
Declaration decl,
java.lang.String msg1,
java.lang.String msg2) |
void |
error(char severity,
java.lang.String message) |
void |
error(char severity,
java.lang.String message,
SourceLocator location) |
void |
error(char severity,
java.lang.String message,
java.lang.String code,
SourceLocator decl) |
static Compilation |
findForImmediateLiterals(int key) |
ClassType |
findNamedClass(java.lang.String name)
Search this Compilation for a ClassType with a given name.
|
void |
freeLocalField(Field field) |
Method |
generateCheckMethod(LambdaExp lexp,
LambdaExp parent) |
void |
generateCheckMethods(LambdaExp parent) |
java.lang.String |
generateClassName(java.lang.String hint)
Generate an unused class name.
|
void |
generateConstructor(ClassType clas,
LambdaExp lexp) |
void |
generateConstructor(LambdaExp lexp) |
boolean |
generateMainMethod() |
boolean |
generatingApplet()
True if we should generate an Applet.
|
boolean |
generatingServlet()
True if we should generate a Servlet.
|
boolean |
getBooleanOption(java.lang.String key)
Get a named boolean option.
|
boolean |
getBooleanOption(java.lang.String key,
boolean defaultValue)
Get a named boolean option.
|
CodeAttr |
getCode() |
int |
getColumnNumber()
Return current column number.
|
static Method |
getConstructor(ClassType clas,
LambdaExp lexp) |
Method |
getConstructor(LambdaExp lexp) |
static Compilation |
getCurrent() |
int |
getEndColumn()
Column (one-origin) of end of range; unknown/unspecified is -1.
|
int |
getEndLine()
Line number (one-origin) of end of range; unknown/unspecified is -1.
|
java.lang.String |
getFileName()
Normally same as getSystemId.
|
Method |
getForNameHelper()
Generate a method to find a named Class without initializing it.
|
Environment |
getGlobalEnvironment() |
Language |
getLanguage() |
int |
getLineNumber()
Return current line number.
|
SourceMessages |
getMessages() |
ModuleInfo |
getMinfo() |
ModuleExp |
getModule() |
ClassType |
getModuleType() |
java.lang.String |
getPublicId() |
gnu.kawa.io.Path |
getSourceAbsPath()
Get source filename as an absolute Path, or null.
|
int |
getStartColumn()
Column (one-origin) of start of range; unknown/unspecified is -1.
|
int |
getStartLine()
Line number (one-origin) of start of range; unknown/unspecified is -1.
|
int |
getState()
Returns a code indicating how far along
we are in the parsing/compilation process.
|
java.lang.String |
getSystemId() |
boolean |
inlineOk(Expression proc) |
boolean |
inlineOk(Procedure proc) |
boolean |
isApplyFunction(Expression exp) |
boolean |
isInteractive() |
boolean |
isPedantic() |
boolean |
isSimpleApplyFunction(Expression exp)
A simple apply function maps actual arguments to formals directly.
|
boolean |
isStableSourceLocation()
True if position is unlikely to change.
|
boolean |
isStatic() |
LetExp |
letDone(Expression body) |
void |
letEnter() |
void |
letStart() |
void |
letVariable(Declaration decl,
Expression init) |
Declaration |
letVariable(java.lang.Object name,
Type type,
Expression init) |
void |
loadCallContext()
Generate code to push the current CallContext on the JVM stack.
|
void |
loadClassRef(ObjectType clas)
Generate code to load a named Class without initializing it.
|
Declaration |
lookup(java.lang.Object name,
int namespace) |
void |
loopBody(Expression body)
Deprecated.
|
void |
loopCond(Expression cond)
Deprecated.
|
Expression |
loopDone(Expression body)
Finish building a loop and return resulting expression.
|
void |
loopEnter()
Done handling loop variables, and pushes them into the lexical scope.
|
Expression |
loopRepeat(LambdaExp loop,
Expression... exps)
Recurse to next iteration of specified loop.
|
Expression |
loopRepeatDone(Expression... exps)
Combine loopRepeat and loopDone.
|
LambdaExp |
loopStart()
Start a new loop.
|
Declaration |
loopVariable(java.lang.Object name,
Type type,
Expression init)
Add a new loop variable, with initializer.
|
static ApplyExp |
makeCoercion(Expression value,
Expression type)
Convenience method to make an Expression that coerces a value.
|
static ApplyExp |
makeCoercion(Expression value,
Type type)
Convenience method to make an Expression that coerces a value.
|
QuoteExp |
makeQuoteExp(java.lang.Object value) |
boolean |
makeRunnable() |
static java.lang.String |
mangleURI(java.lang.String name)
Map a URI to a package/class name.
|
static int |
maxErrors() |
void |
mustCompileHere()
Note that we have seen a construct that must be compiled, not evaluated.
|
void |
outputClass(java.lang.String directory) |
Expression |
parse(java.lang.Object input)
This may not make sense, except for Lisp-like languages.
|
void |
pop() |
void |
pop(ScopeExp scope) |
void |
process(int wantedState)
Parse/visit/compile this module as needed and requested.
|
void |
push(Declaration decl) |
void |
push(ScopeExp scope) |
ModuleExp |
pushNewModule(Lexer lexer) |
void |
pushPendingImport(ModuleInfo info,
ScopeExp defs,
Translator.FormStack forms,
require.DeclSetMapper mapper) |
void |
pushScope(ScopeExp scope) |
static int |
registerForImmediateLiterals(Compilation comp) |
java.lang.Object |
resolve(java.lang.Object name,
boolean function) |
static void |
restoreCurrent(Compilation saved) |
void |
setColumn(int column) |
static void |
setCurrent(Compilation comp) |
void |
setCurrentScope(ScopeExp scope)
Set
currentScope() . |
void |
setEvalName()
Generate and set unique module name suitable for a call to eval.
|
void |
setFile(java.lang.String filename) |
void |
setInteractiveName()
Generate and set unique module name suitable for an interactive session.
|
void |
setLine(Expression position) |
void |
setLine(int line) |
void |
setLine(java.lang.Object location) |
void |
setLine(java.lang.String filename,
int line,
int column) |
void |
setLocation(SourceLocator position) |
void |
setMessages(SourceMessages messages) |
void |
setModule(ModuleExp mexp) |
void |
setModuleName(java.lang.String name)
Set module name - which sets name of generated class.
|
void |
setPedantic(boolean value) |
void |
setPopCurrentScope(ScopeExp old) |
ScopeExp |
setPushCurrentScope(ScopeExp scope) |
static Compilation |
setSaveCurrent(Compilation comp) |
void |
setSharedModuleDefs(boolean shared) |
void |
setState(int state) |
static void |
setupLiterals(int key)
Call-back from compiled code to initialize literals in immediate mode.
|
boolean |
sharedModuleDefs() |
ErrorExp |
syntaxError(java.lang.String message)
Handle syntax errors (at rewrite time).
|
java.lang.String |
toString() |
void |
usedClass(Type type)
Called for classes referenced in bytecode.
|
boolean |
usingCallContext() |
boolean |
usingCPStyle() |
boolean |
usingTailCalls() |
boolean |
warnAsError() |
boolean |
warnInvokeUnknownMethod() |
boolean |
warnUndefinedVariable() |
boolean |
warnUninitialized() |
boolean |
warnUnknownMember() |
boolean |
warnUnreachable() |
boolean |
warnUnused() |
boolean |
warnVoidUsed() |
public boolean mustCompile
public ClassType curClass
public ClassType mainClass
public ClassType moduleClass
public LambdaExp curLambda
public ModuleExp mainLambda
public Variable thisDecl
public static final int PROLOG_PARSING
public static final int PROLOG_PARSED
public static final int BODY_PARSED
public static final int RESOLVED
public static final int PRE_WALKED
public static final int WALKED
public static final int COMPILE_SETUP
public static final int COMPILED
public static final int CLASS_WRITTEN
public static final int ERROR_SEEN
public Lexer lexer
public java.util.Stack<java.lang.Object> pendingImports
public java.util.Map<java.lang.String,ModuleInfo> subModuleMap
public static boolean writeImplicitClasses
public static boolean debugPrintExpr
public static boolean debugPrintFinalExpr
public static boolean debugPrintANF
public static boolean enableANF
public static Options options
public static Options.OptionInfo fullTailCallsVariable
public static Options.OptionInfo mainMethodVariable
public static Options.OptionInfo warnUnreachable
public static Options.OptionInfo warnVoidUsed
public static Options.OptionInfo warnUninitialized
public static Options.OptionInfo warnUndefinedVariable
public static Options.OptionInfo warnUnknownMember
public static Options.OptionInfo warnInvokeUnknownMethod
public static Options.OptionInfo warnUnused
public static Options.OptionInfo warnAsError
public static Options.OptionInfo maxErrors
public Options currentOptions
public static int defaultClassFileVersion
public static int defaultCallConvention
public static final int CALL_WITH_UNSPECIFIED
public static final int CALL_WITH_RETURN
public static final int CALL_WITH_CONSUMER
public static final int CALL_WITH_TAILCALLS
public static final int CALL_WITH_CONTINUATIONS
public static final int MODULE_NONSTATIC
public static final int MODULE_STATIC_DEFAULT
public static final int MODULE_STATIC
public static final int MODULE_STATIC_RUN
public static int moduleStatic
moduleStatic > 0
,
then (module-static #t)
is implied by default.
If moduleStatic == MODULE_STATIC_RUN
,
then <clinit>
calls run
.
If moduleStatic < 0
,
then (module-static #f)
is implied by default.public boolean immediate
public boolean explicit
public Method method
public static ClassType typeObject
public static ClassType scmBooleanType
public static ClassType typeString
public static ClassType typeCharSequence
public static ClassType javaStringType
public static ClassType scmKeywordType
public static ClassType scmSequenceType
public static final ClassType typeList
public static ClassType scmListType
public static ClassType typePair
public static final ArrayType objArrayType
public static ClassType typeRunnable
public static ClassType typeRunnableModule
public static ClassType typeType
public static ClassType typeObjectType
public static ClassType typeClass
public static ClassType typeClassType
public static ClassType typeProcedure
public static ClassType typeLanguage
public static ClassType typeEnvironment
public static ClassType typeLocation
public static final ClassType typeLocationProc
public static ClassType typeFieldLocation
public static ClassType typeStaticFieldLocation
public static ClassType typeSymbol
public static final Field trueConstant
public static final Field falseConstant
public static final Field voidConsumerInstanceField
public static final Type[] int1Args
public static final Type[] string1Arg
public static final Type[] sym1Arg
public static Method getCurrentEnvironmentMethod
public static Type[] apply0args
public static Type[] apply1args
public static Type[] apply2args
public static Type[] applyNargs
public static Method apply0method
public static Method apply1method
public static Method apply2method
public static Method apply3method
public static Method apply4method
public static Method applyNmethod
public static Method[] applymethods
public static ClassType typeProcedure0
public static ClassType typeProcedure1
public static ClassType typeProcedure2
public static ClassType typeProcedure3
public static ClassType typeProcedure4
public static ClassType typeProcedureN
public static ClassType typeModuleBody
public static ClassType typeApplet
public static ClassType typeServlet
public static ClassType typeCallContext
public static final ClassType typeConsumer
public static Method getCallContextInstanceMethod
public static ClassType typeValues
public static Field noArgsField
public static Field pcCallContextField
public static ClassType typeMethodProc
public static ClassType typeCompiledProc
public static Field argsCallContextField
public static Field procCallContextField
public static Method applyCpsMethod
public static ClassType[] typeProcedureArray
public static final Method getNextArgMethod
public static boolean inlineOk
public static java.lang.String classPrefixDefault
public java.lang.String classPrefix
public static boolean emitSourceDebugExtAttr
protected Language language
public java.util.Stack<Expression> exprStack
public NameLookup lexical
protected ScopeExp current_scope
protected SourceMessages messages
public Compilation(Language language, SourceMessages messages, NameLookup lexical)
public int getState()
public void setState(int state)
public boolean isPedantic()
public void setPedantic(boolean value)
public void pushPendingImport(ModuleInfo info, ScopeExp defs, Translator.FormStack forms, require.DeclSetMapper mapper)
public boolean generateMainMethod()
public boolean warnUnreachable()
public boolean warnUndefinedVariable()
public boolean warnUnknownMember()
public boolean warnInvokeUnknownMethod()
public boolean warnUnused()
public boolean warnUninitialized()
public boolean warnVoidUsed()
public boolean warnAsError()
public static int maxErrors()
public final boolean getBooleanOption(java.lang.String key, boolean defaultValue)
public final boolean getBooleanOption(java.lang.String key)
public int currentCallConvention()
public boolean usingCPStyle()
public boolean usingTailCalls()
public boolean usingCallContext()
public final CodeAttr getCode()
public boolean generatingApplet()
public boolean generatingServlet()
public boolean sharedModuleDefs()
public void setSharedModuleDefs(boolean shared)
public final ClassType getModuleType()
public void compileConstant(java.lang.Object value)
value
- the value to be compiledpublic boolean inlineOk(Expression proc)
public boolean inlineOk(Procedure proc)
public boolean isApplyFunction(Expression exp)
public boolean isSimpleApplyFunction(Expression exp)
public void compileConstant(java.lang.Object value, Target target)
public void emitPushBoolean(boolean value)
public void emitCoerceToBoolean()
public Type asBooleanValue(ConditionalTarget target, Type stackType)
stackType
- Value to be treated as boolean, already pushed.public ClassType findNamedClass(java.lang.String name)
name
- the name of the class desiredpublic static java.lang.String mangleURI(java.lang.String name)
public java.lang.String generateClassName(java.lang.String hint)
hint
- the requested name (or prefix)public void outputClass(java.lang.String directory) throws java.io.IOException
java.io.IOException
public void cleanupAfterCompilation()
public void compileToArchive(ModuleExp mexp, java.lang.String fname) throws java.io.IOException
java.io.IOException
public void addClass(ClassType new_class)
public boolean makeRunnable()
public void addMainClass(ModuleExp module)
public final void generateConstructor(LambdaExp lexp)
public void generateCheckMethods(LambdaExp parent)
public void process(int wantedState)
wantedState
- the desired value of getState().public final void loadCallContext()
public void freeLocalField(Field field)
public Expression parse(java.lang.Object input)
public Language getLanguage()
public LambdaExp currentLambda()
public final ModuleExp getModule()
public void setModule(ModuleExp mexp)
public boolean isStatic()
public boolean isInteractive()
public ModuleExp currentModule()
public void mustCompileHere()
public ScopeExp currentScope()
public void setCurrentScope(ScopeExp scope)
currentScope()
.
Also update the nesting
object.public void setPopCurrentScope(ScopeExp old)
public void push(ScopeExp scope)
public final void pushScope(ScopeExp scope)
public void pop(ScopeExp scope)
public final void pop()
public void push(Declaration decl)
public Declaration lookup(java.lang.Object name, int namespace)
public void usedClass(Type type)
public void setModuleName(java.lang.String name)
public void setInteractiveName()
public void setEvalName()
public SourceMessages getMessages()
public void setMessages(SourceMessages messages)
public void error(char severity, java.lang.String message, SourceLocator location)
public void error(char severity, java.lang.String message)
public void error(char severity, Declaration decl, java.lang.String msg1, java.lang.String msg2)
public void error(char severity, java.lang.String message, java.lang.String code, SourceLocator decl)
public ErrorExp syntaxError(java.lang.String message)
message
- an error message to print outpublic final int getLineNumber()
SourceLocator
getStartLine()
.
The "first" line is line 1; unknown is -1.getLineNumber
in interface javax.xml.transform.SourceLocator
getLineNumber
in interface org.xml.sax.Locator
public final int getColumnNumber()
SourceLocator
getStartColumn()
.
The "first" column is column 1; unknown is -1.getColumnNumber
in interface javax.xml.transform.SourceLocator
getColumnNumber
in interface org.xml.sax.Locator
public final int getStartLine()
SourceLocator
public final int getStartColumn()
SourceLocator
public final int getEndLine()
SourceLocator
public final int getEndColumn()
SourceLocator
public final java.lang.String getFileName()
SourceLocator
public java.lang.String getPublicId()
getPublicId
in interface javax.xml.transform.SourceLocator
getPublicId
in interface org.xml.sax.Locator
public java.lang.String getSystemId()
getSystemId
in interface javax.xml.transform.SourceLocator
getSystemId
in interface org.xml.sax.Locator
public boolean isStableSourceLocation()
SourceLocator
public void setFile(java.lang.String filename)
public void setLine(int line)
public void setColumn(int column)
public final void setLine(Expression position)
public void setLine(java.lang.Object location)
public final void setLocation(SourceLocator position)
public void setLine(java.lang.String filename, int line, int column)
public gnu.kawa.io.Path getSourceAbsPath()
<string>
.
Note the ModuleInfo.getSourceAbsPath()
is similar,
but this version is not canonicalized.public void letStart()
public Declaration letVariable(java.lang.Object name, Type type, Expression init)
public void letVariable(Declaration decl, Expression init)
public void letEnter()
public LetExp letDone(Expression body)
public LambdaExp loopStart()
public Declaration loopVariable(java.lang.Object name, Type type, Expression init)
public void loopEnter()
@Deprecated public void loopCond(Expression cond)
@Deprecated public void loopBody(Expression body)
public Expression loopRepeat(LambdaExp loop, Expression... exps)
public Expression loopDone(Expression body)
public Expression loopRepeatDone(Expression... exps)
public Expression applyFunction(Expression func)
public QuoteExp makeQuoteExp(java.lang.Object value)
public static ApplyExp makeCoercion(Expression value, Expression type)
value
- to be coercedtype
- to coerce value topublic static ApplyExp makeCoercion(Expression value, Type type)
value
- to be coercedtype
- to coerce value topublic void loadClassRef(ObjectType clas)
public Method getForNameHelper()
public Environment getGlobalEnvironment()
public java.lang.Object resolve(java.lang.Object name, boolean function)
public static void setupLiterals(int key)
public static int registerForImmediateLiterals(Compilation comp)
public static Compilation findForImmediateLiterals(int key)
public static Compilation getCurrent()
public static void setCurrent(Compilation comp)
public static Compilation setSaveCurrent(Compilation comp)
public static void restoreCurrent(Compilation saved)
public java.lang.String toString()
toString
in class java.lang.Object
public ModuleInfo getMinfo()