pub enum Nodes {
Show 20 variants
Null,
Scope {
name: String,
children: Vec<NodeReference>,
},
Struct {
name: String,
template: Option<NodeReference>,
fields: Vec<NodeReference>,
types: Vec<NodeReference>,
},
Member {
name: String,
type: NodeReference,
count: Option<NonZeroUsize>,
},
Function {
name: String,
params: Vec<NodeReference>,
return_type: NodeReference,
statements: Vec<NodeReference>,
},
Conditional {
condition: NodeReference,
statements: Vec<NodeReference>,
},
ForLoop {
initializer: NodeReference,
condition: NodeReference,
update: NodeReference,
statements: Vec<NodeReference>,
},
Specialization {
name: String,
type: NodeReference,
},
Expression(Expressions),
Raw {
glsl: Option<String>,
hlsl: Option<String>,
msl: Option<String>,
input: Vec<NodeReference>,
output: Vec<NodeReference>,
},
Binding {
name: String,
slot: u32,
read: bool,
write: bool,
type: BindingTypes,
count: Option<NonZeroU32>,
},
PushConstant {
members: Vec<NodeReference>,
},
Intrinsic {
name: String,
elements: Vec<NodeReference>,
return: NodeReference,
},
Input {
name: String,
format: NodeReference,
location: u8,
},
Output {
name: String,
format: NodeReference,
location: u8,
count: Option<NonZeroUsize>,
},
TaskPayload {
name: String,
format: NodeReference,
count: NonZeroUsize,
},
Workgroup {
name: String,
format: NodeReference,
},
Parameter {
name: String,
type: NodeReference,
},
Literal {
name: String,
value: NodeReference,
},
Const {
name: String,
type: NodeReference,
value: NodeReference,
},
}Variants§
Null
Scope
Struct
Member
Function
Conditional
ForLoop
Fields
§
initializer: NodeReference§
condition: NodeReference§
update: NodeReference§
statements: Vec<NodeReference>Specialization
Expression(Expressions)
Raw
Binding
PushConstant
Fields
§
members: Vec<NodeReference>Intrinsic
Input
Output
TaskPayload
Workgroup
Parameter
Literal
Const
A named module-level value known at compile time.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Nodes
impl !Send for Nodes
impl !Sync for Nodes
impl !UnwindSafe for Nodes
impl Freeze for Nodes
impl Unpin for Nodes
impl UnsafeUnpin for Nodes
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