[][src]Struct dqcsim::common::types::QubitRefGenerator

pub struct QubitRefGenerator { /* fields omitted */ }

Struct used to generate new qubit references.

Qubit references start at 1; 0 is reserved for representing errors/invalid handles on the foreign language interface. The current implementation just counts references up from 1 when a qubit is allocated, i.e. it does not reuse references.

Implementations

impl QubitRefGenerator[src]

pub fn new() -> QubitRefGenerator[src]

Constructs a new reference generator.

pub fn allocate(&mut self, num_qubits: usize) -> Vec<QubitRef>[src]

"Allocates" a number of qubit references.

pub fn free(&mut self, _qubits: impl IntoIterator<Item = QubitRef>)[src]

"Frees" a number of qubit references.

Note that this is no-op in the current implementation; freed qubits are never reused. This function is defined only in case we want to change that for some reason.

Trait Implementations

impl Default for QubitRefGenerator[src]

Auto Trait Implementations

impl RefUnwindSafe for QubitRefGenerator

impl Send for QubitRefGenerator

impl Sync for QubitRefGenerator

impl Unpin for QubitRefGenerator

impl UnwindSafe for QubitRefGenerator

Blanket Implementations

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

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

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

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<V, T> VZip<V> for T where
    V: MultiLane<T>,