pub enum FastDivmodExpand<I: FastDivmodInt> {
Fast {
divisor: <I as CubeType>::ExpandType,
multiplier: <I as CubeType>::ExpandType,
shift_right: <u32 as CubeType>::ExpandType,
},
Fallback {
divisor: <I as CubeType>::ExpandType,
},
}Variants§
Fast
Fields
§
divisor: <I as CubeType>::ExpandType§
multiplier: <I as CubeType>::ExpandType§
shift_right: <u32 as CubeType>::ExpandTypeFallback
Fields
§
divisor: <I as CubeType>::ExpandTypeImplementations§
Source§impl<I: FastDivmodInt> FastDivmodExpand<I>
impl<I: FastDivmodInt> FastDivmodExpand<I>
pub fn __expand_div_method( &self, scope: &Scope, dividend: <I as CubeType>::ExpandType, ) -> <I as CubeType>::ExpandType
pub fn __expand_modulo_method( &self, scope: &Scope, dividend: <I as CubeType>::ExpandType, ) -> <I as CubeType>::ExpandType
pub fn __expand_div_mod_method( &self, scope: &Scope, dividend: <I as CubeType>::ExpandType, ) -> (<I as CubeType>::ExpandType, <I as CubeType>::ExpandType)
pub fn __expand_div( scope: &Scope, this: &Self, dividend: <I as CubeType>::ExpandType, ) -> <I as CubeType>::ExpandType
pub fn __expand_modulo( scope: &Scope, this: &Self, dividend: <I as CubeType>::ExpandType, ) -> <I as CubeType>::ExpandType
pub fn __expand_div_mod( scope: &Scope, this: &Self, dividend: <I as CubeType>::ExpandType, ) -> (<I as CubeType>::ExpandType, <I as CubeType>::ExpandType)
Trait Implementations§
Source§impl<I: FastDivmodInt> AsMutExpand for FastDivmodExpand<I>
impl<I: FastDivmodInt> AsMutExpand for FastDivmodExpand<I>
fn __expand_ref_mut_method(&mut self, _: &Scope) -> &mut Self
fn __expand_as_mut_method(&mut self, scope: &Scope) -> &mut T
Source§impl<I: FastDivmodInt> AsRefExpand for FastDivmodExpand<I>
impl<I: FastDivmodInt> AsRefExpand for FastDivmodExpand<I>
fn __expand_ref_method(&self, _: &Scope) -> &Self
fn __expand_as_ref_method(&self, scope: &Scope) -> &T
Source§impl<I: Clone + FastDivmodInt> Clone for FastDivmodExpand<I>
impl<I: Clone + FastDivmodInt> Clone for FastDivmodExpand<I>
Source§fn clone(&self) -> FastDivmodExpand<I>
fn clone(&self) -> FastDivmodExpand<I>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl<I: Copy + FastDivmodInt> Copy for FastDivmodExpand<I>
Source§impl<I: FastDivmodInt> CubeDebug for FastDivmodExpand<I>
impl<I: FastDivmodInt> CubeDebug for FastDivmodExpand<I>
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<I: FastDivmodInt> CubeEnum for FastDivmodExpand<I>
impl<I: FastDivmodInt> CubeEnum for FastDivmodExpand<I>
type RuntimeValue = ()
fn discriminant(&self) -> NativeExpand<i32>
Source§fn runtime_value(self) -> Self::RuntimeValue
fn runtime_value(self) -> Self::RuntimeValue
Return the runtime value of this enum, if only one variant has a value.
Should return () for all other cases.
fn discriminant_of(variant_name: &'static str) -> i32
fn discriminant_of_value(&self, variant_name: &'static str) -> i32
Source§impl<I: FastDivmodInt> ExpandTypeClone for FastDivmodExpand<I>
impl<I: FastDivmodInt> ExpandTypeClone for FastDivmodExpand<I>
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<I: FastDivmodInt> IntoExpand for FastDivmodExpand<I>
impl<I: FastDivmodInt> IntoExpand for FastDivmodExpand<I>
type Expand = FastDivmodExpand<I>
fn into_expand(self, _: &Scope) -> Self
Source§impl<I: FastDivmodInt> IntoMut for FastDivmodExpand<I>
impl<I: FastDivmodInt> IntoMut for FastDivmodExpand<I>
Auto Trait Implementations§
impl<I> Freeze for FastDivmodExpand<I>
impl<I> RefUnwindSafe for FastDivmodExpand<I>where
I: RefUnwindSafe,
impl<I> Send for FastDivmodExpand<I>
impl<I> Sync for FastDivmodExpand<I>
impl<I> Unpin for FastDivmodExpand<I>where
I: Unpin,
impl<I> UnsafeUnpin for FastDivmodExpand<I>
impl<I> UnwindSafe for FastDivmodExpand<I>where
I: UnwindSafe,
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> CloneExpand for Twhere
T: Clone,
impl<T> CloneExpand for Twhere
T: Clone,
fn __expand_clone_method(&self, _: &Scope) -> T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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