Package | Description |
---|---|
gnu.commonlisp.lang | |
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 |
Various core run-time functions and operators.
|
kawa.lang |
Core Kawa classes for Scheme and Lisp compile-time.
|
Modifier and Type | Method and Description |
---|---|
void |
OrdinaryLambda.rewrite(LambdaExp lexp,
java.lang.Object formals,
java.lang.Object body,
Translator tr,
TemplateScope templateScopeRest)
Top-level rewriter of lambda expressions.
|
void |
OrdinaryLambda.rewriteFormals(LambdaExp lexp,
java.lang.Object formals,
Translator tr,
TemplateScope templateScopeRest)
Rewrite the formal parameters in a lambda expression.
|
Modifier and Type | Class and Description |
---|---|
class |
ClassExp |
class |
ModuleExp
Class used to implement Scheme top-level environments.
|
class |
ObjectExp
An expression that evaluated to an instance of an anonymous class.
|
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 |
Declaration.getLambdaValue() |
LambdaExp |
LambdaExp.getOwningLambda() |
LambdaExp |
Compilation.loopStart()
Start a new loop.
|
LambdaExp |
LambdaExp.outerLambda() |
LambdaExp |
LambdaExp.outerLambdaNotInline()
Return the closest outer non-inlined LambdaExp.
|
LambdaExp |
LambdaExp.outerLambdaOrCaller() |
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 stackType,
Type type,
Variable argValue) |
static void |
ProcInitializer.emitLoadModuleMethod(LambdaExp proc,
Compilation comp)
Create and load a CompiledProc for the given procedure.
|
Method |
Compilation.generateCheckMethod(LambdaExp lexp,
LambdaExp parent) |
void |
Compilation.generateCheckMethods(LambdaExp parent) |
void |
Compilation.generateConstructor(ClassType clas,
LambdaExp lexp) |
void |
Compilation.generateConstructor(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,
ApplyExp aexp,
boolean makeCopy)
Attempt to inline a function call.
|
Expression |
Compilation.loopRepeat(LambdaExp loop,
Expression... exps)
Recurse to next iteration of specified loop.
|
static void |
LambdaExp.maybeSetReturnType(LambdaExp lexp,
Type type) |
void |
LambdaExp.pushChild(LambdaExp child) |
void |
LambdaExp.setInlineOnly(Expression returnContinuation,
LambdaExp caller)
Note this function is inlined in a give context.
|
void |
ApplyExp.visitArgs(InlineCalls visitor,
LambdaExp lexp) |
void |
ExpVisitor.visitDefaultArgs(LambdaExp exp,
D d) |
void |
FindTailCalls.visitDefaultArgs(LambdaExp exp,
Expression d) |
void |
InlineCalls.visitDefaultArgs(LambdaExp exp,
Type required) |
void |
FindCapturedVars.visitDefaultArgs(LambdaExp exp,
java.lang.Void ignored) |
protected Expression |
ANormalize.visitLambdaExp(LambdaExp exp,
gnu.expr.ANormalize.Context context) |
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 |
PushApply.visitLambdaExp(LambdaExp exp,
java.lang.Void ignored) |
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) |
Closure(LambdaExp lexp,
CallContext ctx) |
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 |
---|---|
LambdaExp |
Translator.ScanContext.getLambda() |
Modifier and Type | Method and Description |
---|---|
protected Declaration |
Lambda.addParam(Symbol name,
TemplateScope templateScope,
LambdaExp lexp,
Translator tr) |
java.lang.Object[] |
Lambda.parsePatternCar(Pair patList,
TemplateScope templateScope,
LambdaExp lexp,
Translator comp) |
void |
Translator.pushScanContext(LambdaExp lambda) |
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) |