[][src]Enum qip::iterators::PrecisionQubitOp

pub enum PrecisionQubitOp<'a, P: Precision> {
    Matrix(Vec<u64>, Vec<Complex<P>>),
    SparseMatrix(Vec<u64>, Vec<Vec<(u64, Complex<P>)>>),
    Swap(Vec<u64>, Vec<u64>),
    Control(Vec<u64>, Vec<u64>, Box<PrecisionQubitOp<'a, P>>),
    Function(Vec<u64>, Vec<u64>, &'a (dyn Fn(u64) -> (u64, f64) + Send + Sync)),
}

A private version of QubitOp with variable precision, this is used so we can change the f64 default qubit op to a variable one at the beginning of execution and not at each operation.

Variants

Matrix(Vec<u64>, Vec<Complex<P>>)SparseMatrix(Vec<u64>, Vec<Vec<(u64, Complex<P>)>>)Swap(Vec<u64>, Vec<u64>)Control(Vec<u64>, Vec<u64>, Box<PrecisionQubitOp<'a, P>>)Function(Vec<u64>, Vec<u64>, &'a (dyn Fn(u64) -> (u64, f64) + Send + Sync))

Auto Trait Implementations

impl<'a, P> Sync for PrecisionQubitOp<'a, P>

impl<'a, P> Send for PrecisionQubitOp<'a, P>

impl<'a, P> Unpin for PrecisionQubitOp<'a, P> where
    P: Unpin

impl<'a, P> !RefUnwindSafe for PrecisionQubitOp<'a, P>

impl<'a, P> !UnwindSafe for PrecisionQubitOp<'a, P>

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]