pub struct ShaderCreateInfoEXTBuilder<'a> { /* private fields */ }

Implementations§

source§

impl<'a> ShaderCreateInfoEXTBuilder<'a>

source

pub fn flags(self, flags: ShaderCreateFlagsEXT) -> Self

source

pub fn stage(self, stage: ShaderStageFlags) -> Self

source

pub fn next_stage(self, next_stage: ShaderStageFlags) -> Self

source

pub fn code_type(self, code_type: ShaderCodeTypeEXT) -> Self

source

pub fn code(self, code: &'a [u8]) -> Self

source

pub fn name(self, name: &'a CStr) -> Self

source

pub fn set_layouts(self, set_layouts: &'a [DescriptorSetLayout]) -> Self

source

pub fn push_constant_ranges( self, push_constant_ranges: &'a [PushConstantRange] ) -> Self

source

pub fn specialization_info( self, specialization_info: &'a SpecializationInfo ) -> Self

source

pub fn push_next<T: ExtendsShaderCreateInfoEXT>(self, next: &'a mut T) -> Self

Prepends the given extension struct between the root and the first pointer. This method only exists on structs that can be passed to a function directly. Only valid extension structs can be pushed into the chain. If the chain looks like A -> B -> C, and you call builder.push_next(&mut D), then the chain will look like A -> D -> B -> C.

source

pub fn build(self) -> ShaderCreateInfoEXT

Calling build will discard all the lifetime information. Only call this if necessary! Builders implement Deref targeting their corresponding Vulkan struct, so references to builders can be passed directly to Vulkan functions.

Trait Implementations§

source§

impl<'a> Deref for ShaderCreateInfoEXTBuilder<'a>

§

type Target = ShaderCreateInfoEXT

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl<'a> DerefMut for ShaderCreateInfoEXTBuilder<'a>

source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.