Skip to main content

bloqade_lanes_bytecode_core/arch/
mod.rs

1//! Architecture specification types, address encoding, and validation.
2//!
3//! This module defines the physical topology of a Bloqade quantum device:
4//! words, grids, transport buses, zones, and the `ArchSpec` that ties them
5//! together. It also provides bit-packed address types used by bytecode
6//! instructions and comprehensive structural validation.
7//!
8//! # Key types
9//!
10//! - [`ArchSpec`] — top-level device specification (loadable from JSON)
11//! - [`Word`], [`Grid`], [`Bus`], [`Zone`] — building blocks
12//! - [`LocationAddr`], [`LaneAddr`], [`ZoneAddr`] — bit-packed addresses
13//! - [`Direction`], [`MoveType`] — transport enums
14
15pub mod addr;
16pub mod metrics;
17pub mod query;
18pub mod types;
19pub mod validate;
20
21pub use addr::{
22    Direction, LaneAddr, LocationAddr, MoveType, SiteRef, WordRef, ZoneAddr, ZonedWordRef,
23};
24pub use metrics::MotionModel;
25pub use query::ArchSpecLoadError;
26pub use types::{ArchSpec, Bus, Grid, Mode, TransportPath, Word, Zone};
27pub use validate::ArchSpecError;