Skip to main content

StimFlowVerifier

Trait StimFlowVerifier 

Source
pub trait StimFlowVerifier {
    // Required method
    fn verify_flows(
        &self,
        expected_in: Option<&[PauliMap]>,
        expected_out: Option<&[PauliMap]>,
    ) -> Result<(), StimVerifyError>;
}
Expand description

Checks that a circuit fragment carries its declared stabilizer flows.

Implemented for Chunk and ChunkOrLoop: the fragment is emitted to Stim text and each declared Flow is verified against it.

Required Methods§

Source

fn verify_flows( &self, expected_in: Option<&[PauliMap]>, expected_out: Option<&[PauliMap]>, ) -> Result<(), StimVerifyError>

Verifies this fragment’s flows, optionally pinning its boundary ports.

expected_in/expected_out assert the start/end interface port sets (as multisets); None leaves that boundary unconstrained.

§Errors

Returns StimVerifyError if emission, parsing, or flow verification fails.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl StimFlowVerifier for Chunk

Source§

fn verify_flows( &self, expected_in: Option<&[PauliMap]>, expected_out: Option<&[PauliMap]>, ) -> Result<(), StimVerifyError>

Source§

impl StimFlowVerifier for ChunkOrLoop

Source§

fn verify_flows( &self, expected_in: Option<&[PauliMap]>, expected_out: Option<&[PauliMap]>, ) -> Result<(), StimVerifyError>

Implementors§