#[repr(C)]pub struct ShaderCreateInfoEXT<'a> {Show 15 fields
pub s_type: StructureType,
pub p_next: *const c_void,
pub flags: ShaderCreateFlagsEXT,
pub stage: ShaderStageFlags,
pub next_stage: ShaderStageFlags,
pub code_type: ShaderCodeTypeEXT,
pub code_size: usize,
pub p_code: *const c_void,
pub p_name: *const u8,
pub set_layout_count: u32,
pub p_set_layouts: *const DescriptorSetLayout,
pub push_constant_range_count: u32,
pub p_push_constant_ranges: *const PushConstantRange,
pub p_specialization_info: *const SpecializationInfo<'a>,
pub _marker: PhantomData<&'a ()>,
}Expand description
Fields§
§s_type: StructureType§p_next: *const c_void§flags: ShaderCreateFlagsEXT§stage: ShaderStageFlags§next_stage: ShaderStageFlags§code_type: ShaderCodeTypeEXT§code_size: usize§p_code: *const c_void§p_name: *const u8§set_layout_count: u32§p_set_layouts: *const DescriptorSetLayout§push_constant_range_count: u32§p_push_constant_ranges: *const PushConstantRange§p_specialization_info: *const SpecializationInfo<'a>§_marker: PhantomData<&'a ()>Implementations§
Source§impl<'a> ShaderCreateInfoEXT<'a>
impl<'a> ShaderCreateInfoEXT<'a>
pub fn flags(self, flags: ShaderCreateFlagsEXT) -> ShaderCreateInfoEXT<'a>
pub fn stage(self, stage: ShaderStageFlags) -> ShaderCreateInfoEXT<'a>
pub fn next_stage(self, next_stage: ShaderStageFlags) -> ShaderCreateInfoEXT<'a>
pub fn code_type(self, code_type: ShaderCodeTypeEXT) -> ShaderCreateInfoEXT<'a>
pub fn code(self, code: &'a [u8]) -> ShaderCreateInfoEXT<'a>
pub fn name(self, name: &'a CStr) -> ShaderCreateInfoEXT<'a>
pub unsafe fn name_as_c_str(&self) -> Option<&CStr>
pub fn set_layouts( self, set_layouts: &'a [DescriptorSetLayout], ) -> ShaderCreateInfoEXT<'a>
pub fn push_constant_ranges( self, push_constant_ranges: &'a [PushConstantRange], ) -> ShaderCreateInfoEXT<'a>
pub fn specialization_info( self, specialization_info: &'a SpecializationInfo<'a>, ) -> ShaderCreateInfoEXT<'a>
Sourcepub fn push_next<T>(self, next: &'a mut T) -> ShaderCreateInfoEXT<'a>where
T: ExtendsShaderCreateInfoEXT + ?Sized,
pub fn push_next<T>(self, next: &'a mut T) -> ShaderCreateInfoEXT<'a>where
T: ExtendsShaderCreateInfoEXT + ?Sized,
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 x.push_next(&mut D), then the
chain will look like A -> D -> B -> C.
Trait Implementations§
Source§impl<'a> Clone for ShaderCreateInfoEXT<'a>
impl<'a> Clone for ShaderCreateInfoEXT<'a>
Source§fn clone(&self) -> ShaderCreateInfoEXT<'a>
fn clone(&self) -> ShaderCreateInfoEXT<'a>
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a> Debug for ShaderCreateInfoEXT<'a>
impl<'a> Debug for ShaderCreateInfoEXT<'a>
Source§impl Default for ShaderCreateInfoEXT<'_>
impl Default for ShaderCreateInfoEXT<'_>
Source§fn default() -> ShaderCreateInfoEXT<'_>
fn default() -> ShaderCreateInfoEXT<'_>
Returns the “default value” for a type. Read more
Source§impl<'a> TaggedStructure for ShaderCreateInfoEXT<'a>
impl<'a> TaggedStructure for ShaderCreateInfoEXT<'a>
const STRUCTURE_TYPE: StructureType = StructureType::SHADER_CREATE_INFO_EXT
impl<'a> Copy for ShaderCreateInfoEXT<'a>
impl Send for ShaderCreateInfoEXT<'_>
impl Sync for ShaderCreateInfoEXT<'_>
Auto Trait Implementations§
impl<'a> Freeze for ShaderCreateInfoEXT<'a>
impl<'a> RefUnwindSafe for ShaderCreateInfoEXT<'a>
impl<'a> Unpin for ShaderCreateInfoEXT<'a>
impl<'a> UnwindSafe for ShaderCreateInfoEXT<'a>
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)