Package kawa.standard
Class let
java.lang.Object
kawa.lang.Syntax
kawa.standard.let
- All Implemented Interfaces:
gnu.kawa.format.Printable
,Named
The Syntax transformer that re-writes the Scheme "let" primitive.
This only handles standard "unnamed" let.
The let macro in ../lib/let.scm handles named let as well.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final let
protected boolean
Used for constructs such as FLET, where we intend to set a function binding rather than an ordinary binding. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
maybeSetProcedure
(Declaration decl) Set the procedure flag of a declaration if binding a function property.rewrite
(Object obj, Translator tr) Re-write an expression that is an "application" of this Syntax object.Methods inherited from class kawa.lang.Syntax
getName, getSymbol, print, rewriteForm, scanForDefinitions, scanForm, setName, setName
-
Field Details
-
let
-
settingProcedures
protected boolean settingProceduresUsed for constructs such as FLET, where we intend to set a function binding rather than an ordinary binding.
-
-
Constructor Details
-
let
-
-
Method Details
-
rewrite
Description copied from class:Syntax
Re-write an expression that is an "application" of this Syntax object. -
maybeSetProcedure
Set the procedure flag of a declaration if binding a function property. This is used for FLET .vs. LET distinction, wheresettingProcedures
is true for FLET, and false for LET.- Parameters:
decl
- The declaration to possibly set thePROCEDURE
flag.
-