Package | Description |
---|---|
gnu.expr |
Supports
Expression ,
and various related classes need to compile programming languages. |
gnu.jemacs.lang |
Contains classes to implement the Emacs Lisp language.
|
gnu.kawa.functions | |
kawa.lang |
Modifier and Type | Class and Description |
---|---|
class |
ClassExp |
class |
ModuleExp
Class used to implement Scheme top-level environments.
|
class |
ObjectExp |
Modifier and Type | Field and Description |
---|---|
LambdaExp |
ClassExp.clinitMethod
An artificial method named
"$clinit$" for evaluating
static initializations. |
LambdaExp |
Compilation.curLambda |
protected LambdaExp |
ExpVisitor.currentLambda |
LambdaExp |
LambdaExp.firstChild |
LambdaExp |
ClassExp.initMethod
An artificial method named
"$finit$" for evaluating
non-static initializations. |
LambdaExp |
LambdaExp.inlineHome
If this lambda gets inlined this is the containing lambda.
|
LambdaExp |
LambdaExp.nextSibling |
Modifier and Type | Method and Description |
---|---|
LambdaExp |
Compilation.currentLambda() |
LambdaExp |
ScopeExp.currentLambda() |
LambdaExp |
LambdaExp.getCaller()
For an INLINE_ONLY function, return the function it gets inlined in.
|
LambdaExp |
ExpVisitor.getCurrentLambda() |
LambdaExp |
LambdaExp.getOwningLambda() |
LambdaExp |
LambdaExp.outerLambda() |
LambdaExp |
LambdaExp.outerLambdaNotInline()
Return the closest outer non-inlined LambdaExp.
|
Modifier and Type | Method and Description |
---|---|
Declaration |
ClassExp.addMethod(LambdaExp lexp,
java.lang.Object mname) |
static void |
CheckedTarget.emitCheckedCoerce(Compilation comp,
LambdaExp proc,
int argno,
Type type) |
static void |
CheckedTarget.emitCheckedCoerce(Compilation comp,
LambdaExp proc,
int argno,
Type type,
Variable argValue) |
static void |
ProcInitializer.emitLoadModuleMethod(LambdaExp proc,
Compilation comp)
Create and load a ModuleMethod for the given procedure.
|
void |
Compilation.generateApplyMethodsWithContext(LambdaExp lexp)
Generate ModuleBody's apply(CallContext) method
Use the applyMethods vector, which contains methods that
implement the (public, readable) methods of the current module.
|
void |
Compilation.generateApplyMethodsWithoutContext(LambdaExp lexp)
Generate ModuleBody's apply0...applyN methods.
|
void |
Compilation.generateConstructor(ClassType clas,
LambdaExp lexp) |
void |
Compilation.generateConstructor(LambdaExp lexp) |
void |
Compilation.generateMatchMethods(LambdaExp lexp) |
static Method |
Compilation.getConstructor(ClassType clas,
LambdaExp lexp) |
Method |
Compilation.getConstructor(LambdaExp lexp) |
static Target |
CheckedTarget.getInstance(Type type,
LambdaExp proc,
int argno) |
static Expression |
InlineCalls.inlineCall(LambdaExp lexp,
Expression[] args,
boolean makeCopy)
Attempt to inline a function call.
|
void |
ExpVisitor.visitDefaultArgs(LambdaExp exp,
D d) |
void |
FindCapturedVars.visitDefaultArgs(LambdaExp exp,
java.lang.Void ignored) |
protected R |
ExpVisitor.visitLambdaExp(LambdaExp exp,
D d) |
protected Expression |
FindTailCalls.visitLambdaExp(LambdaExp exp,
Expression returnContinuation) |
protected Expression |
ChainLambdas.visitLambdaExp(LambdaExp exp,
ScopeExp scope) |
protected Expression |
InlineCalls.visitLambdaExp(LambdaExp exp,
Type required) |
protected Expression |
FindCapturedVars.visitLambdaExp(LambdaExp exp,
java.lang.Void ignored) |
Constructor and Description |
---|
CatchClause(LambdaExp lexp)
"Convert" a
LambdaExp to a CatchClause . |
CheckedTarget(Type type,
LambdaExp proc,
int argno) |
PrimProcedure(Method method,
LambdaExp source) |
ProcInitializer(LambdaExp lexp,
Compilation comp,
Field field) |
Modifier and Type | Method and Description |
---|---|
void |
lambda.rewriteBody(LambdaExp lexp,
java.lang.Object body,
Translator tr) |
Modifier and Type | Method and Description |
---|---|
static void |
ValuesMap.compileInlined(LambdaExp lambda,
Expression vals,
int startCounter,
Method matchesMethod,
Compilation comp,
Target target) |
Modifier and Type | Field and Description |
---|---|
LambdaExp |
Translator.curMethodLambda |
Modifier and Type | Method and Description |
---|---|
void |
Lambda.rewrite(LambdaExp lexp,
java.lang.Object formals,
java.lang.Object body,
Translator tr,
TemplateScope templateScopeRest)
Higher-level constructor, that does the re-writing.
|
java.lang.Object |
Lambda.rewriteAttrs(LambdaExp lexp,
java.lang.Object body,
Translator tr) |
void |
Lambda.rewriteBody(LambdaExp lexp,
java.lang.Object body,
Translator tr) |
void |
Lambda.rewriteFormals(LambdaExp lexp,
java.lang.Object formals,
Translator tr,
TemplateScope templateScopeRest) |
java.lang.Object |
Lambda.skipAttrs(LambdaExp lexp,
java.lang.Object body,
Translator tr) |