public class ModuleExp extends LambdaExp implements java.io.Externalizable
LambdaExp.Closure
SourceLocator.Simple
Modifier and Type | Field and Description |
---|---|
static boolean |
alwaysCompile
Flag to force compilation, even when not required.
|
static boolean |
compilerAvailable
Deprecated.
|
static java.lang.String |
dumpZipPrefix
Used to control which .zip file dumps are generated.
|
static int |
EXPORT_SPECIFIED |
static int |
HAS_SUB_MODULE |
static int |
IMMEDIATE
True if the module is immediately evaluated.
|
static int |
INTERACTIVE
True of a read-eval-print interface where each module is only partial.
|
static int |
LAZY_DECLARATIONS |
static int |
NONSTATIC_SPECIFIED |
static int |
STATIC_RUN_SPECIFIED |
static int |
STATIC_SPECIFIED |
static int |
SUPERTYPE_SPECIFIED |
static int |
USE_DEFINED_CLASS
Using explicit class (e.g.
|
ALLOW_OTHER_KEYWORDS, applyToConsumer, ATTEMPT_INLINE, body, CLOSURE_ENV_NAME, closureEnvField, firstChild, HAS_NONTRIVIAL_DEFAULT, HAS_NONTRIVIAL_PATTERN, IN_EXPWALKER, inlineHome, keywords, max_args, min_args, nameDecl, NEXT_AVAIL_FLAG, nextSibling, NO_FIELD, opt_args, OVERLOADABLE_FIELD, PASSES_TAILCALLS, PUBLIC_METHOD, returnContinuation, returnType, SEQUENCE_RESULT, staticLinkField
applyMethodExpression, flags, noExpressions, type, VALIDATED
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey
nameKey
Constructor and Description |
---|
ModuleExp() |
Modifier and Type | Method and Description |
---|---|
void |
allocChildClasses(Compilation comp) |
ClassType |
classFor(Compilation comp)
Return the class for this module.
|
static boolean |
compilerAvailable() |
static boolean |
evalModule(Environment env,
CallContext ctx,
Compilation comp,
java.net.URL url,
gnu.kawa.io.OutPort msg) |
static java.lang.Object |
evalModule1(Environment env,
Compilation comp,
java.net.URL url,
gnu.kawa.io.OutPort msg)
Parse and compile a module.
|
static void |
evalModule2(Environment env,
CallContext ctx,
Language language,
ModuleExp mexp,
java.lang.Object inst) |
static java.lang.Class |
evalToClass(Compilation comp,
java.net.URL url)
Compile to a class for immediate evaluation.
|
Declaration |
firstDecl() |
ClassType[] |
getInterfaces() |
ModuleInfo |
getMinfo() |
java.lang.String |
getNamespaceUri() |
ClassType |
getSuperType() |
boolean |
isStatic() |
void |
print(gnu.kawa.io.OutPort out) |
void |
readExternal(java.io.ObjectInput in) |
void |
setInterfaces(ClassType[] s) |
void |
setSuperType(ClassType s) |
boolean |
staticInitRun()
True if module body (i.e.
|
boolean |
subModulesOnly() |
static ModuleExp |
valueOf(ClassType type) |
protected <R,D> R |
visit(ExpVisitor<R,D> visitor,
D d) |
void |
writeExternal(java.io.ObjectOutput out) |
addParameter, allocFrame, apply, calculateType, capture, checkForInitCall, compile, compileBody, compileEnd, compileSetField, declareClosureEnv, declareThis, generateApplyMethods, getBodyFirstExpression, getCallConvention, getCaller, getCanRead, getClassType, getCompiledClassType, getExpClassName, getHeapFrameType, getImportsLexVars, getInlineOnly, getMainMethod, getMethod, getNeedsClosureEnv, getNeedsStaticLink, getOwningLambda, getProperty, getReturnType, incomingArgs, inlinedInCallerOrCheckMethodOnly, inlinedInCheckMethod, isAbstract, isClassMethod, isHandlingTailCalls, isModuleBody, isNative, loadHeapFrame, maybeSetReturnType, mustCompile, outerLambda, outerLambdaNotInline, outerLambdaOrCaller, pushChild, restArgType, reverseChildList, setCallConvention, setCanRead, setClassMethod, setCoercedReturnType, setCoercedReturnValue, setExceptions, setImportsLexVars, setImportsLexVars, setInlineOnly, setInlineOnly, setNeedsStaticLink, setNeedsStaticLink, setProperty, setReturnType, setType, side_effects, toString, usingCallContext, validateApply, variable_args, visitChildren, visitChildrenOnly, visitProperties
add, add, addDeclaration, addDeclaration, addDeclaration, clearCallList, countDecls, currentLambda, currentModule, duplicateDeclarationError, getDefine, getNoDefine, getOuter, getVarScope, isClassGenerated, lastDecl, lookup, lookup, nestedIn, nesting, popScope, remove, remove, replaceFollowing, setIndexes, setOuter, topLevel
applyMethodExpression, checkLiteralKeyword, compile, compile, compileWithPosition, compileWithPosition, deepCopy, deepCopy, deepCopy, deepCopy, eval, eval, getColumnNumber, getEndColumn, getEndLine, getFileName, getFlag, getFlags, getLineNumber, getPublicId, getStartColumn, getStartLine, getSystemId, getType, getTypeRaw, isSingleValue, isStableSourceLocation, makeWhile, maybeSetLine, neverReturns, numArgs, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine, setLine, setLocation, setType, valueIfConstant
apply0, apply1, apply2, apply3, apply4, applyL, applyN, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSetter, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation
getName, getSymbol, removeProperty, setName, setProperty, setSymbol
public static final int EXPORT_SPECIFIED
public static final int STATIC_SPECIFIED
public static final int NONSTATIC_SPECIFIED
public static final int SUPERTYPE_SPECIFIED
public static final int STATIC_RUN_SPECIFIED
public static final int LAZY_DECLARATIONS
public static final int IMMEDIATE
public static final int INTERACTIVE
public static final int USE_DEFINED_CLASS
public static final int HAS_SUB_MODULE
public static java.lang.String dumpZipPrefix
@Deprecated public static boolean compilerAvailable
public static boolean alwaysCompile
public boolean subModulesOnly()
public static java.lang.Class evalToClass(Compilation comp, java.net.URL url) throws SyntaxException
SyntaxException
public static boolean compilerAvailable()
public static final boolean evalModule(Environment env, CallContext ctx, Compilation comp, java.net.URL url, gnu.kawa.io.OutPort msg) throws java.lang.Throwable
java.lang.Throwable
public static final java.lang.Object evalModule1(Environment env, Compilation comp, java.net.URL url, gnu.kawa.io.OutPort msg) throws SyntaxException
SyntaxException
public static final void evalModule2(Environment env, CallContext ctx, Language language, ModuleExp mexp, java.lang.Object inst) throws java.lang.Throwable
java.lang.Throwable
public ModuleInfo getMinfo()
public java.lang.String getNamespaceUri()
public final ClassType getSuperType()
public final void setSuperType(ClassType s)
public final ClassType[] getInterfaces()
public final void setInterfaces(ClassType[] s)
public final boolean isStatic()
public boolean staticInitRun()
public void allocChildClasses(Compilation comp)
allocChildClasses
in class LambdaExp
protected <R,D> R visit(ExpVisitor<R,D> visitor, D d)
public Declaration firstDecl()
public ClassType classFor(Compilation comp)
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
java.io.IOException
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
java.io.IOException
java.lang.ClassNotFoundException