Skip to main content

synth_core/
lib.rs

1//! Synth Core - Fundamental data structures and types
2//!
3//! This crate defines the core data structures used throughout the Synth synthesizer,
4//! including representations for WebAssembly components, modules, and the intermediate
5//! representation (IR) used for synthesis.
6
7pub mod arena_bind;
8pub mod async_intrinsics;
9pub mod backend;
10pub mod component;
11pub mod dwarf_line;
12pub mod error;
13pub mod ir;
14pub mod proven_safe;
15pub mod provenance;
16pub mod safety_manifest;
17pub mod sbom;
18pub mod static_data_addr;
19pub mod target;
20pub mod wasm_decoder;
21pub mod wasm_op;
22pub mod wasm_stack_check;
23pub mod wcet;
24pub mod wsc_facts;
25
26pub use backend::*;
27pub use component::*;
28pub use error::{Error, Result};
29pub use ir::*;
30pub use safety_manifest::SafetyManifest;
31pub use sbom::{CycloneDxSbom, SbomInputs};
32pub use target::*;
33pub use wasm_decoder::{
34    CallIndirectGuards, DecodedModule, ElemSegmentInfo, FunctionOps, ImportEntry, ImportKind,
35    TableGuards, WasmMemory, decode_wasm_functions, decode_wasm_module,
36};
37pub use wasm_op::{
38    ParamBlockLowering, WasmOp, arm_param_block_lowering, count_params_heuristic,
39    find_param_block_type, find_unlowered_param_block_type, param_block_decline_msg,
40    referenced_locals, rewrite_memory_grow_zero,
41};
42pub use wsc_facts::{FactKind, WSC_FACTS_SECTION_NAME, WscFact, WscFactsParse, parse_wsc_facts};