1#![no_std]
2
3#[macro_use]
4extern crate alloc;
5
6#[cfg(feature = "std")]
7extern crate std;
8
9pub mod account;
10pub mod address;
11pub mod asset;
12pub mod batch;
13pub mod block;
14pub mod errors;
15pub mod note;
16pub mod package;
17mod protocol;
18pub mod protocol_config;
19pub(crate) mod script;
20pub mod transaction;
21
22#[cfg(any(feature = "testing", test))]
23pub mod testing;
24
25mod constants;
26
27pub use constants::*;
31pub use miden_core::mast::{MastForest, MastNodeId};
32pub use miden_core::prettier::PrettyPrint;
33pub use miden_core::{EMPTY_WORD, Felt, ONE, WORD_SIZE, ZERO, field};
34pub use miden_core_lib::CoreLibrary;
35pub use miden_crypto::hash::poseidon2::Poseidon2 as Hasher;
36pub use miden_crypto::word;
37pub use miden_crypto::word::{Word, WordError};
38pub use protocol::ProtocolLib;
39pub use script::MastForestScriptError;
40
41pub mod assembly {
42 pub use miden_assembly::ast::{Module, ModuleKind, ProcedureName, QualifiedProcedureName};
43 pub use miden_assembly::debuginfo::SourceManagerSync;
44 pub use miden_assembly::{
45 Assembler,
46 DefaultSourceManager,
47 Linkage,
48 ModuleParser,
49 Path,
50 SourceFile,
51 SourceId,
52 SourceManager,
53 SourceSpan,
54 debuginfo,
55 diagnostics,
56 mast,
57 };
58 pub use miden_assembly_syntax::Parse;
59 pub use miden_mast_package::{Package, ProcedureExport};
60}
61
62pub mod crypto {
63 pub use miden_crypto::{SequentialCommit, dsa, hash, ies, merkle, rand, utils};
64}
65
66pub mod utils;
67
68pub mod vm {
69 pub use miden_assembly_syntax::ast::{AttributeSet, QualifiedProcedureName};
70 pub use miden_core::advice::{AdviceInputs, AdviceMap, AdviceStack};
71 pub use miden_core::deferred::MAX_PRECOMPILE_ROOTS;
72 pub use miden_core::events::{EventId, EventName, SystemEvent};
73 pub use miden_core::program::{Program, ProgramInfo};
74 pub use miden_mast_package::debug_info::{DebugSourceNodeId, PackageDebugInfo};
75 pub use miden_mast_package::{
76 Package,
77 PackageDebugInfoError,
78 PackageExport,
79 PackageManifest,
80 ProcedureExport,
81 Section,
82 SectionId,
83 TargetType,
84 };
85 pub use miden_processor::trace::RowIndex;
86 pub use miden_processor::{FutureMaybeSend, MIN_STACK_DEPTH, StackInputs, StackOutputs};
87 pub use miden_verifier::{
88 ExecutionProof,
89 ExecutionProofCompatibility,
90 PrecompileStatus,
91 ProofSecurityParameters,
92 VerificationOutcome,
93 };
94}