Enum ShaderKind

Source
#[repr(C)]
pub enum ShaderKind {
Show 30 variants Vertex = 0, Fragment = 1, Compute = 2, Geometry = 3, TessControl = 4, TessEvaluation = 5, InferFromSource = 6, DefaultVertex = 7, DefaultFragment = 8, DefaultCompute = 9, DefaultGeometry = 10, DefaultTessControl = 11, DefaultTessEvaluation = 12, SpirvAssembly = 13, RayGeneration = 14, AnyHit = 15, ClosestHit = 16, Miss = 17, Intersection = 18, Callable = 19, DefaultRayGeneration = 20, DefaultAnyHit = 21, DefaultClosestHit = 22, DefaultMiss = 23, DefaultIntersection = 24, DefaultCallable = 25, Task = 26, Mesh = 27, DefaultTask = 28, DefaultMesh = 29,
}
Expand description

Shader kind.

  • The <stage> enumerants are forced shader kinds, which force the compiler to compile the source code as the specified kind of shader, regardless of #pragma directives in the source code.
  • The Default<stage> enumerants are default shader kinds, which allow the compiler to fall back to compile the source code as the specified kind of shader when #pragma is not found in the source code.

Variants§

§

Vertex = 0

§

Fragment = 1

§

Compute = 2

§

Geometry = 3

§

TessControl = 4

§

TessEvaluation = 5

§

InferFromSource = 6

Deduce the shader kind from #pragma directives in the source code.

Compiler will emit error if #pragma annotation is not found.

§

DefaultVertex = 7

§

DefaultFragment = 8

§

DefaultCompute = 9

§

DefaultGeometry = 10

§

DefaultTessControl = 11

§

DefaultTessEvaluation = 12

§

SpirvAssembly = 13

§

RayGeneration = 14

§

AnyHit = 15

§

ClosestHit = 16

§

Miss = 17

§

Intersection = 18

§

Callable = 19

§

DefaultRayGeneration = 20

§

DefaultAnyHit = 21

§

DefaultClosestHit = 22

§

DefaultMiss = 23

§

DefaultIntersection = 24

§

DefaultCallable = 25

§

Task = 26

§

Mesh = 27

§

DefaultTask = 28

§

DefaultMesh = 29

Trait Implementations§

Source§

impl Clone for ShaderKind

Source§

fn clone(&self) -> ShaderKind

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ShaderKind

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl PartialEq for ShaderKind

Source§

fn eq(&self, other: &ShaderKind) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for ShaderKind

Source§

impl Eq for ShaderKind

Source§

impl StructuralPartialEq for ShaderKind

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> Downcast<T> for T

Source§

fn downcast(&self) -> &T

Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

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>,

Source§

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.
Source§

impl<T> Upcast<T> for T

Source§

fn upcast(&self) -> Option<&T>

Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V