]> git.lizzy.rs Git - rust.git/blob - src/librustc_mir/interpret/mod.rs
10a58ce3e0028e266bffeda12524099b1be64f99
[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 const_eval;
5 mod error;
6 mod eval_context;
7 mod lvalue;
8 mod validation;
9 mod machine;
10 mod memory;
11 mod operator;
12 mod step;
13 mod terminator;
14 mod traits;
15 mod value;
16
17 pub use self::error::{
18     EvalError,
19     EvalResult,
20 };
21
22 pub use self::eval_context::{
23     EvalContext,
24     Frame,
25     ResourceLimits,
26     StackPopCleanup,
27     DynamicLifetime,
28     TyAndPacked,
29 };
30
31 pub use self::lvalue::{
32     Lvalue,
33     LvalueExtra,
34     Global,
35     GlobalId,
36 };
37
38 pub use self::memory::{
39     AllocId,
40     Memory,
41     MemoryPointer,
42     Kind,
43 };
44
45 use self::memory::{
46     HasMemory,
47     PointerArithmetic,
48     LockInfo,
49     AccessKind,
50 };
51
52 pub use self::value::{
53     PrimVal,
54     PrimValKind,
55     Value,
56     Pointer,
57 };
58
59 pub use self::const_eval::{
60     eval_body_as_integer,
61     eval_body_as_primval,
62 };
63
64 pub use self::machine::{
65     Machine,
66 };
67
68 pub use self::validation::{
69     ValidationQuery,
70 };