Skip to main content

atupa_core/
lib.rs

1//! # atupa-core
2//!
3//! Foundational types, configuration, and domain models shared across the
4//! entire Atupa workspace.
5//!
6//! ## Modules
7//!
8//! | Module | Contents |
9//! |---|---|
10//! | [`vm`] | [`VmKind`] — identifies the source Virtual Machine |
11//! | [`gas`] | [`GasCategory`] — classifies execution steps by cost driver |
12//! | [`types`] | [`TraceStep`], [`CollapsedStack`], [`HotPath`], [`Profile`], [`ProfileBuilder`] |
13//! | [`diff`] | [`ProtocolDiffReport`], [`DiffRow`] — protocol-level regression comparison |
14//! | [`config`] | [`AtupaConfig`] — multi-source configuration loading |
15//!
16//! ## Re-exports
17//!
18//! All public types are re-exported from the crate root so that downstream
19//! crates can use `atupa_core::TraceStep` etc. without knowing the module layout.
20
21pub mod config;
22pub mod diff;
23pub mod gas;
24pub mod types;
25pub mod vm;
26
27// ── Flat re-exports ───────────────────────────────────────────────────────────
28
29pub use diff::{DiffRow, ProtocolDiffReport};
30pub use gas::GasCategory;
31pub use types::{CollapsedStack, HotPath, Profile, ProfileBuilder, TraceStep};
32pub use vm::{ParseVmKindError, VmKind};