kawa.lang
public class Macro extends Syntax implements Printable, Externalizable
| Field Summary | |
|---|---|
| Object | expander |
| Constructor Summary | |
|---|---|
| Macro() | |
| Macro(Macro old) Copy constructor. | |
| Macro(Object name, Procedure expander) | |
| Macro(Object name) | |
| Method Summary | |
|---|---|
| Object | expand(Object form, Translator tr) |
| ScopeExp | getCapturedScope() |
| boolean | isHygienic() |
| static Macro | make(Declaration decl) |
| static Macro | make(Object name, Procedure expander) |
| static Macro | make(Object name, Procedure expander, Object instance) |
| static Macro | makeNonHygienic(Object name, Procedure expander) |
| static Macro | makeNonHygienic(Object name, Procedure expander, Object instance) |
| void | print(Consumer out) |
| void | readExternal(ObjectInput in) |
| Expression | rewriteForm(Pair form, Translator tr) |
| Expression | rewriteForm(Object form, Translator tr) |
| void | scanForm(Pair st, ScopeExp defs, Translator tr) |
| void | setCapturedScope(ScopeExp scope) |
| void | setHygienic(boolean hygienic) |
| String | toString() |
| void | writeExternal(ObjectOutput out) |
Serial Data: Write the name followed by the expansion procedure, both using writeObject.