pub struct QuantizedViewExpand<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> { /* private fields */ }Implementations§
Source§impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
pub fn new( values: ViewExpand<'a, Vector<Q, NQ>, C>, scales: ViewExpand<'a, S, C>, known_scale: KnownScaleExpand, table: ComptimeOptionExpand<Box<[f32]>>, scheme: QuantScheme, ) -> Self
pub fn __expand_view_method( self, scope: &Scope, ) -> ViewExpand<'a, Vector<F, NF>, C>
Trait Implementations§
Source§impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> AsMutExpand for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> AsMutExpand for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
fn __expand_ref_mut_method(&mut self, _: &Scope) -> &mut Self
fn __expand_as_mut_method(&mut self, scope: &Scope) -> &mut T
Source§impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> AsRefExpand for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> AsRefExpand for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
fn __expand_ref_method(&self, _: &Scope) -> &Self
fn __expand_as_ref_method(&self, scope: &Scope) -> &T
Source§impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> CubeDebug for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> CubeDebug for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
Source§fn set_debug_name(&self, scope: &Scope, name: &'static str)
fn set_debug_name(&self, scope: &Scope, name: &'static str)
Set the debug name of this type’s expansion. Should do nothing for types that don’t appear
at runtime
Source§impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> ExpandTypeClone for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> ExpandTypeClone for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
Source§fn clone_unchecked(&self) -> Self
fn clone_unchecked(&self) -> Self
Unchecked clone that only clones the conceptual runtime value. Should only be used in cases
where each copy is used in a mutually exclusive branch (i.e. match, runtime enums). This is
intentionally separated from Rust’s
Clone semantics and should only be used for the
conceptual expand values, never real data. Using two values in the same branch is undefined
behaviour.Source§impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> IntoExpand for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> IntoExpand for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
type Expand = QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
fn into_expand(self, _: &Scope) -> Self
Source§impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> IntoMut for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> IntoMut for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
Source§impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> VectorizedExpand for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> VectorizedExpand for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
fn __expand_vector_size_method(&self, scope: &Scope) -> VectorSize
Source§impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> ViewOperationsExpand<Vector<F, NF>, C> for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q: Scalar, NQ: Size, S: Scalar, F: Numeric, NF: Size, C: Coordinates + 'static> ViewOperationsExpand<Vector<F, NF>, C> for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
fn __expand_read_method( &self, scope: &Scope, pos: C::ExpandType, ) -> NativeExpand<Vector<F, NF>>
fn __expand_read_checked_method( &self, scope: &Scope, pos: C::ExpandType, ) -> NativeExpand<Vector<F, NF>>
fn __expand_read_masked_method( &self, scope: &Scope, pos: C::ExpandType, mask_value: NativeExpand<Vector<F, NF>>, ) -> NativeExpand<Vector<F, NF>>
fn __expand_read_unchecked_method( &self, scope: &Scope, pos: C::ExpandType, ) -> NativeExpand<Vector<F, NF>>
fn __expand_as_linear_slice_method( &self, _scope: &Scope, _pos: C::ExpandType, _end: C::ExpandType, ) -> &SliceExpand<Vector<F, NF>>
fn __expand_shape_method(&self, scope: &Scope) -> C::ExpandType
fn __expand_is_in_bounds_method( &self, scope: &Scope, pos: C::ExpandType, ) -> NativeExpand<bool>
fn __expand_tensor_map_load_method( &self, _scope: &Scope, _barrier: &NativeExpand<Barrier>, _shared_memory: &mut SliceExpand<Vector<F, NF>>, _pos: C::ExpandType, )
Auto Trait Implementations§
impl<'a, Q, NQ, S, F, NF, C> !RefUnwindSafe for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q, NQ, S, F, NF, C> !Send for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q, NQ, S, F, NF, C> !Sync for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q, NQ, S, F, NF, C> !UnwindSafe for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>
impl<'a, Q, NQ, S, F, NF, C> Freeze for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>where
<C as CubeType>::ExpandType: Sized,
<View<'a, Vector<Q, NQ>, C> as CubeType>::ExpandType: Freeze,
<View<'a, S, C> as CubeType>::ExpandType: Freeze,
PhantomData<(F, NF)>: Freeze,
impl<'a, Q, NQ, S, F, NF, C> Unpin for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>where
<C as CubeType>::ExpandType: Sized,
<View<'a, Vector<Q, NQ>, C> as CubeType>::ExpandType: Unpin,
<View<'a, S, C> as CubeType>::ExpandType: Unpin,
PhantomData<(F, NF)>: Unpin,
impl<'a, Q, NQ, S, F, NF, C> UnsafeUnpin for QuantizedViewExpand<'a, Q, NQ, S, F, NF, C>where
<C as CubeType>::ExpandType: Sized,
<View<'a, Vector<Q, NQ>, C> as CubeType>::ExpandType: UnsafeUnpin,
<View<'a, S, C> as CubeType>::ExpandType: UnsafeUnpin,
PhantomData<(F, NF)>: UnsafeUnpin,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.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