]> git.lizzy.rs Git - rust.git/blob - src/librustc_mir/interpret/mod.rs
45d24347e4efd45618c3a5ff2eb41b80beefc01c
[rust.git] / src / librustc_mir / interpret / mod.rs
1 //! An interpreter for MIR used in CTFE and by miri
2
3 mod cast;
4 mod eval_context;
5 mod place;
6 mod operand;
7 mod machine;
8 mod memory;
9 mod operator;
10 pub(crate) mod snapshot; // for const_eval
11 mod step;
12 mod terminator;
13 mod traits;
14 mod validity;
15 mod intrinsics;
16 mod visitor;
17 mod intern;
18
19 pub use rustc::mir::interpret::*; // have all the `interpret` symbols in one place: here
20
21 pub use self::eval_context::{
22     InterpCx, Frame, StackPopCleanup, LocalState, LocalValue,
23 };
24
25 pub use self::place::{Place, PlaceTy, MemPlace, MPlaceTy};
26
27 pub use self::memory::{Memory, MemoryKind, AllocCheck, FnVal};
28
29 pub use self::machine::{Machine, AllocMap, MayLeak};
30
31 pub use self::operand::{ScalarMaybeUndef, Immediate, ImmTy, Operand, OpTy};
32
33 pub use self::visitor::{ValueVisitor, MutValueVisitor};
34
35 pub use self::validity::RefTracking;
36
37 pub(super) use self::intrinsics::type_name;
38
39 pub use self::intern::intern_const_alloc_recursive;