hax_frontend_exporter/
lib.rs1#![allow(rustdoc::private_intra_doc_links)]
2#![cfg_attr(feature = "rustc", feature(if_let_guard))]
3#![cfg_attr(feature = "rustc", feature(macro_metavar_expr))]
4#![cfg_attr(feature = "rustc", feature(rustc_private))]
5#![cfg_attr(feature = "rustc", feature(sized_hierarchy))]
6#![cfg_attr(feature = "rustc", feature(trait_alias))]
7#![cfg_attr(feature = "rustc", feature(type_changing_struct_update))]
8
9macro_rules! cfg_feature_rustc {
10 ($($item:item)*) => {
11 $(
12 #[cfg(feature = "rustc")]
13 $item
14 )*
15 }
16}
17
18cfg_feature_rustc! {
19 extern crate rustc_abi;
24 extern crate rustc_ast;
25 extern crate rustc_ast_pretty;
26 extern crate rustc_attr_data_structures;
27 extern crate rustc_apfloat;
28 extern crate rustc_const_eval;
29 extern crate rustc_data_structures;
30 extern crate rustc_driver;
31 extern crate rustc_hashes;
32 extern crate rustc_errors;
33 extern crate rustc_hir;
34 extern crate rustc_hir_analysis;
35 extern crate rustc_index;
36 extern crate rustc_infer;
37 extern crate rustc_interface;
38 extern crate rustc_middle;
39 extern crate rustc_mir_build;
40 extern crate rustc_session;
41 extern crate rustc_span;
42 extern crate rustc_target;
43 extern crate rustc_trait_selection;
44 extern crate rustc_type_ir;
45 extern crate rustc_lexer;
46
47 mod rustc_utils;
48 pub mod state;
49 mod utils;
50 mod deterministic_hash;
51 pub mod comments;
52}
53
54mod body;
55mod constant_utils;
56pub mod id_table;
57mod types;
58
59mod index_vec;
60mod prelude;
61
62pub use hax_frontend_exporter_options as options;
63pub use prelude::*;
64
65mod sinto;
66mod traits;
67
68pub use hax_adt_into::AdtInto;
69pub use sinto::SInto;