#[non_exhaustive]pub enum ThreeQubitGateOperation {
ControlledControlledPauliZ(ControlledControlledPauliZ),
ControlledControlledPhaseShift(ControlledControlledPhaseShift),
Toffoli(Toffoli),
}
Expand description
Enum of all Operations implementing OperateThreeQubitGate
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
ControlledControlledPauliZ(ControlledControlledPauliZ)
Variant for ControlledControlledPauliZ
ControlledControlledPhaseShift(ControlledControlledPhaseShift)
Variant for ControlledControlledPhaseShift
Toffoli(Toffoli)
Variant for Toffoli
Trait Implementations§
source§impl Clone for ThreeQubitGateOperation
impl Clone for ThreeQubitGateOperation
source§fn clone(&self) -> ThreeQubitGateOperation
fn clone(&self) -> ThreeQubitGateOperation
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ThreeQubitGateOperation
impl Debug for ThreeQubitGateOperation
source§impl<'de> Deserialize<'de> for ThreeQubitGateOperation
impl<'de> Deserialize<'de> for ThreeQubitGateOperation
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl From<ControlledControlledPauliZ> for ThreeQubitGateOperation
impl From<ControlledControlledPauliZ> for ThreeQubitGateOperation
Implements the From trait from this Operation.
source§fn from(v: ControlledControlledPauliZ) -> Self
fn from(v: ControlledControlledPauliZ) -> Self
Performs the conversion.
source§impl From<ControlledControlledPhaseShift> for ThreeQubitGateOperation
impl From<ControlledControlledPhaseShift> for ThreeQubitGateOperation
Implements the From trait from this Operation.
source§fn from(v: ControlledControlledPhaseShift) -> Self
fn from(v: ControlledControlledPhaseShift) -> Self
Performs the conversion.
source§impl From<ThreeQubitGateOperation> for Operation
impl From<ThreeQubitGateOperation> for Operation
source§fn from(op: ThreeQubitGateOperation) -> Self
fn from(op: ThreeQubitGateOperation) -> Self
source§impl InvolveQubits for ThreeQubitGateOperation
impl InvolveQubits for ThreeQubitGateOperation
Implements InvolveQubits trait for the qubits involved in this Operation.
source§fn involved_qubits(&self) -> InvolvedQubits
fn involved_qubits(&self) -> InvolvedQubits
source§fn involved_classical(&self) -> InvolvedClassical
fn involved_classical(&self) -> InvolvedClassical
source§impl Operate for ThreeQubitGateOperation
impl Operate for ThreeQubitGateOperation
Implements the universal basic trait Operate for this Operation.
source§impl OperateGate for ThreeQubitGateOperation
impl OperateGate for ThreeQubitGateOperation
source§fn unitary_matrix(&self) -> Result<Array2<Complex64>, RoqoqoError>
fn unitary_matrix(&self) -> Result<Array2<Complex64>, RoqoqoError>
source§impl OperateThreeQubit for ThreeQubitGateOperation
impl OperateThreeQubit for ThreeQubitGateOperation
Trait for Operations acting on exactly three qubits.
source§impl PartialEq for ThreeQubitGateOperation
impl PartialEq for ThreeQubitGateOperation
source§fn eq(&self, other: &ThreeQubitGateOperation) -> bool
fn eq(&self, other: &ThreeQubitGateOperation) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl Serialize for ThreeQubitGateOperation
impl Serialize for ThreeQubitGateOperation
source§impl Substitute for ThreeQubitGateOperation
impl Substitute for ThreeQubitGateOperation
Implements Substitute trait allowing to replace symbolic parameters and to perform qubit mappings.
source§fn substitute_parameters(
&self,
calculator: &Calculator
) -> Result<Self, RoqoqoError>
fn substitute_parameters( &self, calculator: &Calculator ) -> Result<Self, RoqoqoError>
Substitutes symbolic parameters in clone of the operation.
source§fn remap_qubits(
&self,
mapping: &HashMap<usize, usize>
) -> Result<Self, RoqoqoError>
fn remap_qubits( &self, mapping: &HashMap<usize, usize> ) -> Result<Self, RoqoqoError>
Remaps the qubits in clone of the operation.
source§impl TryFrom<&Operation> for ThreeQubitGateOperation
impl TryFrom<&Operation> for ThreeQubitGateOperation
source§impl TryFrom<Operation> for ThreeQubitGateOperation
impl TryFrom<Operation> for ThreeQubitGateOperation
source§impl TryFrom<ThreeQubitGateOperation> for ControlledControlledPauliZ
impl TryFrom<ThreeQubitGateOperation> for ControlledControlledPauliZ
Implements the core::convert::TryFrom trait into this Operation.
source§impl TryFrom<ThreeQubitGateOperation> for ControlledControlledPhaseShift
impl TryFrom<ThreeQubitGateOperation> for ControlledControlledPhaseShift
Implements the core::convert::TryFrom trait into this Operation.
source§impl TryFrom<ThreeQubitGateOperation> for Toffoli
impl TryFrom<ThreeQubitGateOperation> for Toffoli
Implements the core::convert::TryFrom trait into this Operation.
impl StructuralPartialEq for ThreeQubitGateOperation
Auto Trait Implementations§
impl Freeze for ThreeQubitGateOperation
impl RefUnwindSafe for ThreeQubitGateOperation
impl Send for ThreeQubitGateOperation
impl Sync for ThreeQubitGateOperation
impl Unpin for ThreeQubitGateOperation
impl UnwindSafe for ThreeQubitGateOperation
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
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.