pub enum Token<ID> {
Error(String),
OperandName(&'static str),
Punctuation(&'static str),
OperandKindNamespacePrefix(&'static str),
EnumerandName(&'static str),
NumericLiteral(String),
StringLiteral(String),
Id(ID),
}
Expand description
The smallest unit produced by printing a (“logical”) SPIR-V operand.
All variants other than Id
contain a fully formatted string, and the
distinction between variants can be erased to obtain a plain-text version
(also except OperandKindNamespacePrefix
requiring an extra implicit .
).
Variants§
Error(String)
An inconsistency was detected in the operands to be printed.
For stylistic consistency, the error message is always found wrapped in
a block comment (i.e. the String
is always of the form "/* ... */"
).
OperandName(&'static str)
Punctuation(&'static str)
OperandKindNamespacePrefix(&'static str)
EnumerandName(&'static str)
NumericLiteral(String)
StringLiteral(String)
Id(ID)
Unprinted ID operand, of its original type (allowing post-processing).
Auto Trait Implementations§
impl<ID> Freeze for Token<ID>where
ID: Freeze,
impl<ID> RefUnwindSafe for Token<ID>where
ID: RefUnwindSafe,
impl<ID> Send for Token<ID>where
ID: Send,
impl<ID> Sync for Token<ID>where
ID: Sync,
impl<ID> Unpin for Token<ID>where
ID: Unpin,
impl<ID> UnwindSafe for Token<ID>where
ID: UnwindSafe,
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more