pub trait SizedType: Type + AlignedType {
// Required method
fn size(&self, ctx: &Context) -> usize;
// Provided methods
fn verify(_op: &dyn Type, _ctx: &Context) -> Result<()>
where Self: Sized { ... }
fn size_bits(&self, ctx: &Context) -> usize { ... }
}Required Methods§
Provided Methods§
fn verify(_op: &dyn Type, _ctx: &Context) -> Result<()>where
Self: Sized,
fn size_bits(&self, ctx: &Context) -> usize
Trait Implementations§
impl TypeImplsInterface<dyn SizedType> for BarrierType
impl TypeImplsInterface<dyn SizedType> for BarrierTokenType
impl TypeImplsInterface<dyn SizedType> for TensorMapType
impl TypeImplsInterface<dyn SizedType> for IntegerType
impl TypeImplsInterface<dyn SizedType> for IndexType
impl TypeImplsInterface<dyn SizedType> for Complex32Type
impl TypeImplsInterface<dyn SizedType> for Complex64Type
impl TypeImplsInterface<dyn SizedType> for Float64Type
impl TypeImplsInterface<dyn SizedType> for Float32Type
impl TypeImplsInterface<dyn SizedType> for TFloat32Type
impl TypeImplsInterface<dyn SizedType> for FloatFlex32Type
impl TypeImplsInterface<dyn SizedType> for Float16Type
impl TypeImplsInterface<dyn SizedType> for BFloat16Type
impl TypeImplsInterface<dyn SizedType> for Float8E8M0Type
impl TypeImplsInterface<dyn SizedType> for Float8E5M2Type
impl TypeImplsInterface<dyn SizedType> for Float8E4M3Type
impl TypeImplsInterface<dyn SizedType> for Float6E3M2Type
impl TypeImplsInterface<dyn SizedType> for Float6E2M3Type
impl TypeImplsInterface<dyn SizedType> for Float4E2M1Type
impl TypeImplsInterface<dyn SizedType> for Float4E2M1x2Type
impl TypeImplsInterface<dyn SizedType> for VectorType
impl TypeImplsInterface<dyn SizedType> for AtomicType
impl TypeImplsInterface<dyn SizedType> for PointerType
impl TypeImplsInterface<dyn SizedType> for ArrayType
impl TypeInterfaceMarker for dyn SizedType
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".