Trait Init

Source
pub trait Init: Sized {
    // Required method
    fn init(self, context: &mut CubeContext) -> Self;
}
Expand description

Trait to be implemented by cube types implementations.

Required Methods§

Source

fn init(self, context: &mut CubeContext) -> Self

Initialize a type within a context.

You can return the same value when the variable is a non-mutable data structure or if the type can not be deeply cloned/copied.

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 Init for ()

Source§

fn init(self, _context: &mut CubeContext) -> Self

Source§

impl<P1: Init> Init for (P1,)

Source§

fn init(self, context: &mut CubeContext) -> Self

Source§

impl<P1: Init, P2: Init> Init for (P1, P2)

Source§

fn init(self, context: &mut CubeContext) -> Self

Source§

impl<P1: Init, P2: Init, P3: Init> Init for (P1, P2, P3)

Source§

fn init(self, context: &mut CubeContext) -> Self

Source§

impl<P1: Init, P2: Init, P3: Init, P4: Init> Init for (P1, P2, P3, P4)

Source§

fn init(self, context: &mut CubeContext) -> Self

Source§

impl<P1: Init, P2: Init, P3: Init, P4: Init, P5: Init> Init for (P1, P2, P3, P4, P5)

Source§

fn init(self, context: &mut CubeContext) -> Self

Source§

impl<P1: Init, P2: Init, P3: Init, P4: Init, P5: Init, P6: Init> Init for (P1, P2, P3, P4, P5, P6)

Source§

fn init(self, context: &mut CubeContext) -> Self

Source§

impl<T: Init> Init for Option<T>

Source§

fn init(self, context: &mut CubeContext) -> Self

Source§

impl<T: Init> Init for Vec<T>

Source§

fn init(self, context: &mut CubeContext) -> Self

Implementors§