Modifier and Type | Field and Description |
---|---|
Expression |
defaultDefault |
java.lang.Object |
keyKeyword |
static Keyword |
nameKeyword |
java.lang.Object |
optionalKeyword |
java.lang.Object |
restKeyword |
Constructor and Description |
---|
Lambda() |
Modifier and Type | Method and Description |
---|---|
void |
print(Consumer out) |
void |
rewrite(LambdaExp lexp,
java.lang.Object formals,
java.lang.Object body,
Translator tr,
TemplateScope templateScopeRest)
Higher-level constructor, that does the re-writing.
|
Expression |
rewrite(java.lang.Object obj,
Translator tr)
Re-write an expression that is an "application" of this Syntax object.
|
java.lang.Object |
rewriteAttrs(LambdaExp lexp,
java.lang.Object body,
Translator tr) |
void |
rewriteBody(LambdaExp lexp,
java.lang.Object body,
Translator tr) |
Expression |
rewriteForm(Pair form,
Translator tr) |
void |
rewriteFormals(LambdaExp lexp,
java.lang.Object formals,
Translator tr,
TemplateScope templateScopeRest) |
void |
setKeywords(java.lang.Object optional,
java.lang.Object rest,
java.lang.Object key) |
java.lang.Object |
skipAttrs(LambdaExp lexp,
java.lang.Object body,
Translator tr) |
getName, getSymbol, rewriteForm, scanForDefinitions, scanForm, setName, setName
public java.lang.Object optionalKeyword
public java.lang.Object restKeyword
public java.lang.Object keyKeyword
public static final Keyword nameKeyword
public Expression defaultDefault
public void setKeywords(java.lang.Object optional, java.lang.Object rest, java.lang.Object key)
public Expression rewriteForm(Pair form, Translator tr)
rewriteForm
in class Syntax
public Expression rewrite(java.lang.Object obj, Translator tr)
Syntax
public void rewrite(LambdaExp lexp, java.lang.Object formals, java.lang.Object body, Translator tr, TemplateScope templateScopeRest)
formals
- the formal parameter list (or symbol)body
- the body of the proceduretr
- the (Scheme) Translatorpublic void rewriteFormals(LambdaExp lexp, java.lang.Object formals, Translator tr, TemplateScope templateScopeRest)
public java.lang.Object rewriteAttrs(LambdaExp lexp, java.lang.Object body, Translator tr)
public java.lang.Object skipAttrs(LambdaExp lexp, java.lang.Object body, Translator tr)
public void rewriteBody(LambdaExp lexp, java.lang.Object body, Translator tr)