pub struct CompiledProgram {
pub entries: Vec<String>,
pub source_digest: u64,
pub artifact: Vec<u8>,
}Expand description
One compiled artifact, the entries it holds, and the source it came from.
An artifact carries more than one entry where the target allows it: slangc emits one MSL translation unit for a pair of stages, and the Metal runtime wants both in one library. DXIL has no such form, so a container there holds exactly one.
Fields§
§entries: Vec<String>Entry point names this artifact holds, as the shader source spells them.
source_digest: u64slang_source::source_digest of the assembled source this artifact was
built from. A renderer whose assembly digests differently has a template
the artifact predates and must compile rather than load.
artifact: Vec<u8>The emitted artifact: SPIR-V, a signed DXIL container, or MSL text.
Trait Implementations§
Source§impl Clone for CompiledProgram
impl Clone for CompiledProgram
Source§fn clone(&self) -> CompiledProgram
fn clone(&self) -> CompiledProgram
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CompiledProgram
impl Debug for CompiledProgram
Source§impl<'de> Deserialize<'de> for CompiledProgram
impl<'de> Deserialize<'de> for CompiledProgram
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for CompiledProgram
Source§impl PartialEq for CompiledProgram
impl PartialEq for CompiledProgram
Source§impl Serialize for CompiledProgram
impl Serialize for CompiledProgram
impl StructuralPartialEq for CompiledProgram
Auto Trait Implementations§
impl Freeze for CompiledProgram
impl RefUnwindSafe for CompiledProgram
impl Send for CompiledProgram
impl Sync for CompiledProgram
impl Unpin for CompiledProgram
impl UnsafeUnpin for CompiledProgram
impl UnwindSafe for CompiledProgram
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.