diff options
| author | Keegan McAllister <kmcallister@mozilla.com> | 2015-01-01 16:37:47 -0800 |
|---|---|---|
| committer | Keegan McAllister <kmcallister@mozilla.com> | 2015-01-05 18:21:13 -0800 |
| commit | 0816255c80ee3f2a8870ee5e4379e3739d8ed72e (patch) | |
| tree | 32b71b7a4d5f22d8b7ec66a64373acd08e258d5e /src/libsyntax/ext/base.rs | |
| parent | 60be2f52d2434dfbf2df7728454d572d76f58bf8 (diff) | |
| download | rust-0816255c80ee3f2a8870ee5e4379e3739d8ed72e.tar.gz rust-0816255c80ee3f2a8870ee5e4379e3739d8ed72e.zip | |
Move #[macro_reexport] to extern crate
Diffstat (limited to 'src/libsyntax/ext/base.rs')
| -rw-r--r-- | src/libsyntax/ext/base.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/libsyntax/ext/base.rs b/src/libsyntax/ext/base.rs index 9a06745967f..815159e94c8 100644 --- a/src/libsyntax/ext/base.rs +++ b/src/libsyntax/ext/base.rs @@ -16,6 +16,7 @@ use codemap; use codemap::{CodeMap, Span, ExpnId, ExpnInfo, NO_EXPANSION}; use ext; use ext::expand; +use ext::tt::macro_rules; use parse; use parse::parser; use parse::token; @@ -568,6 +569,15 @@ impl<'a> ExtCtxt<'a> { } } } + + pub fn insert_macro(&mut self, def: ast::MacroDef) { + if def.export { + self.exported_macros.push(def.clone()); + } + let ext = macro_rules::compile(self, &def); + self.syntax_env.insert(def.ident.name, ext); + } + /// Emit `msg` attached to `sp`, and stop compilation immediately. /// /// `span_err` should be strongly preferred where-ever possible: |
