pub struct ExpressionInfo {
pub uniformity: Uniformity,
pub ref_count: usize,
assignable_global: Option<Handle<GlobalVariable>>,
pub ty: TypeResolution,
}Expand description
Information about an expression in a function body.
Fields§
§uniformity: UniformityWhether this expression is uniform, and why.
If this expression’s value is not uniform, this is the handle
of the expression from which this one’s non-uniformity
originates. Otherwise, this is None.
ref_count: usizeThe number of direct references to this expression in statements and other expressions.
This is a local reference count only, it may be non-zero for expressions that are ultimately unused.
assignable_global: Option<Handle<GlobalVariable>>The global variable into which this expression produces a pointer.
This is None unless this expression is either a
GlobalVariable, or an Access or AccessIndex that
ultimately refers to some part of a global.
Load expressions applied to pointer-typed arguments could
refer to globals, but we leave this as None for them.
ty: TypeResolutionThe type of this expression.
Implementations§
Trait Implementations§
Source§impl Clone for ExpressionInfo
impl Clone for ExpressionInfo
Source§fn clone(&self) -> ExpressionInfo
fn clone(&self) -> ExpressionInfo
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more