Skip to content

bloqade.lanes.bytecode.AtomStateData

← Module overview

classAtomStateDatasource

bloqade.lanes.bytecode.AtomStateData

Tracks qubit-to-location mappings as atoms move through the architecture.

class AtomStateData

Immutable value type backed by a Rust implementation. Used by the IR analysis pipeline to simulate atom movement, detect collisions, and identify CZ gate pairings.

All mutation methods (add_atoms, apply_moves) return new instances. The two primary maps are kept as a bidirectional index: given a location you can find the qubit, and given a qubit you can find the location. When a move causes two atoms to occupy the same site, both are removed from the location maps and recorded in collision.

All integer arguments are validated to fit in u32 range (0 to 2^32 - 1).