encase::internal

Trait CreateFrom

Source
pub trait CreateFrom: Sized {
    // Required method
    fn create_from<B>(reader: &mut Reader<B>) -> Self
       where B: BufferRef;
}

Required Methods§

Source

fn create_from<B>(reader: &mut Reader<B>) -> Self
where B: BufferRef,

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 CreateFrom for Option<NonZeroI32>

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for Option<NonZeroU32>

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for f32

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for i32

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for u32

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for Mat3
where Self: FromMatrixParts<f32, 3, 3> + ShaderType<ExtraMetadata = MatrixMetadata>, f32: MatrixScalar + CreateFrom,

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for Mat2
where Self: FromMatrixParts<f32, 2, 2> + ShaderType<ExtraMetadata = MatrixMetadata>, f32: MatrixScalar + CreateFrom,

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for Mat4
where Self: FromMatrixParts<f32, 4, 4> + ShaderType<ExtraMetadata = MatrixMetadata>, f32: MatrixScalar + CreateFrom,

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for Vec4

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for Vec2

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for Vec3

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for IVec2

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for IVec3

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for IVec4

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for UVec2

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for UVec3

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for UVec4

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for Wrapping<i32>

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for Wrapping<u32>

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for AtomicI32

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl CreateFrom for AtomicU32

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

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

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl<T> CreateFrom for [T]
where T: CreateFrom, Self: FromIterator<T> + ShaderType<ExtraMetadata = ArrayMetadata>,

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

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

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl<T> CreateFrom for LinkedList<T>
where T: CreateFrom, Self: FromIterator<T> + ShaderType<ExtraMetadata = ArrayMetadata>,

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl<T> CreateFrom for VecDeque<T>
where T: CreateFrom, Self: FromIterator<T> + ShaderType<ExtraMetadata = ArrayMetadata>,

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

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

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

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

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl<T> CreateFrom for Vec<T>
where T: CreateFrom, Self: FromIterator<T> + ShaderType<ExtraMetadata = ArrayMetadata>,

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl<T> CreateFrom for Cell<T>
where T: CreateFrom + ?Sized + Copy,

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Source§

impl<T: CreateFrom, const N: usize> CreateFrom for [T; N]
where Self: ShaderType<ExtraMetadata = ArrayMetadata>,

Source§

fn create_from<B: BufferRef>(reader: &mut Reader<B>) -> Self

Implementors§