gnu.expr
Class ModuleExp
java.lang.Object
|
+--gnu.expr.Expression
|
+--gnu.expr.ScopeExp
|
+--gnu.expr.LambdaExp
|
+--gnu.expr.ModuleExp
- public class ModuleExp
- extends LambdaExp
Class used to implement Scheme top-level environments.
|
Field Summary |
boolean |
mustCompile
True if the body is too complex to evaluate,and we must compile it. |
| Fields inherited from class gnu.expr.LambdaExp |
body,
closureEnvField,
defaultArgs,
dumpZipCounter,
dumpZipPrefix,
fileFunctionName,
firstChild,
flags,
keywords,
max_args,
min_args,
name,
nextSibling,
staticLinkField |
| Methods inherited from class gnu.expr.LambdaExp |
allocChildClasses,
allocFrame,
compile,
compile,
compileAlloc,
compileEnd,
compileSetField,
declareClosureEnv,
declareThis,
eval,
evalToClass,
getCaller,
getCanCall,
getCanRead,
getCompiledClassType,
getFlags,
getImportsLexVars,
getInlineOnly,
getJavaName,
getMainMethod,
getMethod,
getName,
getNeedsClosureEnv,
getNeedsStaticLink,
getType,
incomingArgs,
isClassGenerated,
isClassMethod,
isHandlingTailCalls,
isModuleBody,
loadHeapFrame,
outerLambda,
outerLambdaNotInline,
restArgType,
setCanCall,
setCanRead,
setClassMethod,
setImportsLexVars,
setImportsLexVars,
setInlineOnly,
setName,
setNeedsStaticLink,
setNeedsStaticLink,
toString,
variable_args |
| Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
mustCompile
public boolean mustCompile
- True if the body is too complex to evaluate,and we must compile it.
This is because it contains a construct we know how to compile, but not
evaluate, and it it outside a lambda (which we always compile).
This can be a let scope, or primitive procedure.
ModuleExp
public ModuleExp()
evalModule
public final java.lang.Object evalModule(Environment env)
compileToFiles
public void compileToFiles(java.lang.String topname,
java.lang.String directory,
java.lang.String prefix)
throws java.io.IOException
compileToArchive
public void compileToArchive(java.lang.String fname)
throws java.io.IOException
print
public void print(java.io.PrintWriter ps)
- Overrides:
- print in class LambdaExp