]> git.proxmox.com Git - rustc.git/blame - compiler/rustc_expand/src/lib.rs
New upstream version 1.58.1+dfsg1
[rustc.git] / compiler / rustc_expand / src / lib.rs
CommitLineData
e74abb32
XL
1#![feature(crate_visibility_modifier)]
2#![feature(decl_macro)]
6a06907d 3#![feature(destructuring_assignment)]
3c0e092e 4#![cfg_attr(bootstrap, feature(format_args_capture))]
94222f64 5#![feature(if_let_guard)]
cdc7bbd5 6#![feature(iter_zip)]
3c0e092e 7#![feature(let_else)]
e74abb32
XL
8#![feature(proc_macro_diagnostic)]
9#![feature(proc_macro_internals)]
10#![feature(proc_macro_span)]
ba9703b0 11#![feature(try_blocks)]
94222f64 12#![recursion_limit = "256"]
e74abb32 13
3dfed10e
XL
14#[macro_use]
15extern crate rustc_macros;
16
e74abb32
XL
17extern crate proc_macro as pm;
18
e74abb32
XL
19mod placeholders;
20mod proc_macro_server;
21
e74abb32 22pub use mbe::macro_rules::compile_declarative_macro;
dfeec247 23crate use rustc_span::hygiene;
e74abb32
XL
24pub mod base;
25pub mod build;
ba9703b0
XL
26#[macro_use]
27pub mod config;
e74abb32 28pub mod expand;
ba9703b0 29pub mod module;
e74abb32
XL
30pub mod proc_macro;
31
32crate mod mbe;
60c5eb7d
XL
33
34// HACK(Centril, #64197): These shouldn't really be here.
35// Rather, they should be with their respective modules which are defined in other crates.
36// However, since for now constructing a `ParseSess` sorta requires `config` from this crate,
37// these tests will need to live here in the iterim.
38
39#[cfg(test)]
40mod tests;
41#[cfg(test)]
42mod parse {
60c5eb7d 43 mod tests;
60c5eb7d
XL
44}
45#[cfg(test)]
46mod tokenstream {
60c5eb7d
XL
47 mod tests;
48}
49#[cfg(test)]
50mod mut_visit {
60c5eb7d
XL
51 mod tests;
52}