1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//! Bytecode VM module for Monty.
//!
//! This module contains the bytecode representation, compiler, and virtual machine
//! for executing Python code. The bytecode VM replaces the tree-walking interpreter
//! with a stack-based execution model.
//!
//! # Module Structure
//!
//! - `op` - Opcode enum definitions
//! - `code` - Code object containing bytecode and metadata
//! - `builder` - CodeBuilder for emitting bytecode during compilation
//! - `compiler` - AST to bytecode compiler
//! - `vm` - Virtual machine for bytecode execution
pub use Code;
pub use Compiler;
pub use ;
pub use ;
/// Module-level dunder names Monty exposes with fixed values for CPython
/// compatibility (e.g. so `if __name__ == '__main__':` works).
///
/// Monty has no module object or `globals()` dict, so these are not real
/// namespace entries: they are resolved on *read* when the global slot is
/// `Undefined` (see `VM::module_dunder`, whose match must stay in sync with
/// this list) and are read-only — assigning one at module or global scope is
/// rejected at compile time with a `NotImplementedError` (see
/// `Compiler::compile_store`) rather than being silently ignored.
/// Function-local variables that happen to share these names are unaffected.
pub const RESERVED_MODULE_DUNDERS: = ;