pub struct QuantumGateCache { /* private fields */ }Expand description
High-performance quantum gate cache using SciRS2 beta.3 features
Implementations§
Source§impl QuantumGateCache
impl QuantumGateCache
Sourcepub fn get_or_compute_matrix<F>(
&self,
key: GateKey,
compute_fn: F,
) -> QuantRS2Result<Vec<Complex64>>
pub fn get_or_compute_matrix<F>( &self, key: GateKey, compute_fn: F, ) -> QuantRS2Result<Vec<Complex64>>
Get or compute a gate matrix with caching and profiling
Sourcepub fn get_performance_stats(&self) -> QuantumGateCacheStats
pub fn get_performance_stats(&self) -> QuantumGateCacheStats
Get cache performance statistics
Sourcepub fn prewarm_common_gates(&self) -> QuantRS2Result<()>
pub fn prewarm_common_gates(&self) -> QuantRS2Result<()>
Pre-warm cache with common gate matrices
Sourcepub fn clear_cache(&self)
pub fn clear_cache(&self)
Clear cache and reset statistics
Trait Implementations§
Auto Trait Implementations§
impl Freeze for QuantumGateCache
impl RefUnwindSafe for QuantumGateCache
impl Send for QuantumGateCache
impl Sync for QuantumGateCache
impl Unpin for QuantumGateCache
impl UnwindSafe for QuantumGateCache
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for 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>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
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
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.