Class silk.Macro
java.lang.Object
|
+----silk.SchemeUtils
|
+----silk.Procedure
|
+----silk.Closure
|
+----silk.Macro
- public class Macro
- extends Closure
|
Constructor Summary
|
Macro(java.lang.Object parms,
java.lang.Object body,
Environment env)
Make a macro from a parameter list, body, and environment.
|
|
Method Summary
|
|
Pair
|
expand(Scheme interpreter,
Pair oldPair,
java.lang.Object args)
Replace the old cons cell with the macro expansion, and return it.
|
|
static java.lang.Object
|
macroExpand(Scheme interpreter,
java.lang.Object x)
Macro expand an expression
|
| Methods inherited from class silk.SchemeUtils
|
| chr, chr, cons, equal, eqv, error, first, inPort, length, list, list, listStar, listToString, listToVector, num, num, outPort, rest, reverse, second, setFirst, setRest, str, sym, third, truth, truth, vec, vectorToList, warn, write |
| Methods inherited from class java.lang.Object
|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Macro
public Macro(java.lang.Object parms,
java.lang.Object body,
Environment env)
- Make a macro from a parameter list, body, and environment.
expand
public Pair expand(Scheme interpreter,
Pair oldPair,
java.lang.Object args)
- Replace the old cons cell with the macro expansion, and return it.
macroExpand
public static java.lang.Object macroExpand(Scheme interpreter,
java.lang.Object x)
- Macro expand an expression