pub struct IQPCircuitGenerator {
pub qubit_count: usize,
pub diagonal_gates: Vec<DiagonalGate>,
pub hadamard_layers: usize,
pub circuit_structure: CircuitStructure,
}Fields§
§qubit_count: usize§diagonal_gates: Vec<DiagonalGate>§hadamard_layers: usize§circuit_structure: CircuitStructureImplementations§
Source§impl IQPCircuitGenerator
impl IQPCircuitGenerator
pub fn new(qubit_count: usize) -> Self
pub fn generate_iqp_circuit( &self, qubit_count: usize, depth: usize, ) -> Result<IQPCircuit, QuantRS2Error>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for IQPCircuitGenerator
impl RefUnwindSafe for IQPCircuitGenerator
impl Send for IQPCircuitGenerator
impl Sync for IQPCircuitGenerator
impl Unpin for IQPCircuitGenerator
impl UnwindSafe for IQPCircuitGenerator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more