encase

Trait CalculateSizeFor

Source
pub trait CalculateSizeFor {
    // Required method
    fn calculate_size_for(nr_of_el: u64) -> NonZeroU64;
}
Expand description

Trait implemented for WGSL runtime-sized arrays and WGSL structs containing runtime-sized arrays (non fixed-footprint types)

Required Methods§

Source

fn calculate_size_for(nr_of_el: u64) -> NonZeroU64

Returns the size of Self assuming the (contained) runtime-sized array has nr_of_el elements

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<T> CalculateSizeFor for Cow<'_, T>
where T: CalculateSizeFor + ?Sized + ToOwned<Owned = T>,

Source§

impl<T> CalculateSizeFor for &T
where T: CalculateSizeFor + ?Sized,

Source§

impl<T> CalculateSizeFor for &mut T
where T: CalculateSizeFor + ?Sized,

Source§

impl<T> CalculateSizeFor for [T]
where Self: ShaderType<ExtraMetadata = ArrayMetadata>,

Source§

impl<T> CalculateSizeFor for Box<T>
where T: CalculateSizeFor + ?Sized,

Source§

impl<T> CalculateSizeFor for LinkedList<T>
where Self: ShaderType<ExtraMetadata = ArrayMetadata>,

Source§

impl<T> CalculateSizeFor for VecDeque<T>
where Self: ShaderType<ExtraMetadata = ArrayMetadata>,

Source§

impl<T> CalculateSizeFor for Rc<T>
where T: CalculateSizeFor + ?Sized,

Source§

impl<T> CalculateSizeFor for Arc<T>
where T: CalculateSizeFor + ?Sized,

Source§

impl<T> CalculateSizeFor for Vec<T>
where Self: ShaderType<ExtraMetadata = ArrayMetadata>,

Source§

impl<T> CalculateSizeFor for Cell<T>

Implementors§