diff options
| author | John Clements <clements@racket-lang.org> | 2014-07-07 09:54:08 -0700 |
|---|---|---|
| committer | John Clements <clements@racket-lang.org> | 2014-07-08 16:26:43 -0700 |
| commit | 9ee9c49cb4823c5bddbd9ec1ece6dfafa9e833ea (patch) | |
| tree | 74a30492aa2aadaf28eb0d591d22fb89dd62ae9f /src/libsyntax/parse | |
| parent | 92c2ff6d697fe7be2d4e3979b4dec9f86b969b69 (diff) | |
| download | rust-9ee9c49cb4823c5bddbd9ec1ece6dfafa9e833ea.tar.gz rust-9ee9c49cb4823c5bddbd9ec1ece6dfafa9e833ea.zip | |
introducing let-syntax
The let-syntax expander is different in that it doesn't apply a mark to its token trees before expansion. This is used for macro_rules, and it's because macro_rules is essentially MTWT's let-syntax. You don't want to mark before expand sees let-syntax, because there's no "after" syntax to mark again. In some sense, the cleaner approach might be to introduce a new AST node that macro_rules expands into; this would make it clearer that the expansion of a macro is distinct from the addition of a new macro binding. This should work for now, though...
Diffstat (limited to 'src/libsyntax/parse')
0 files changed, 0 insertions, 0 deletions
