pub struct Lowered {
pub diagnostics: Diagnostics<LoweringDiagnostic>,
pub signature: Signature,
pub variables: Arena<Variable>,
pub blocks: Blocks,
pub parameters: Vec<VariableId>,
}Expand description
A lowered function code using flat blocks.
Fields§
§diagnostics: Diagnostics<LoweringDiagnostic>Diagnostics produced while lowering.
signature: SignatureFunction signature.
variables: Arena<Variable>Arena of allocated lowered variables.
blocks: BlocksArena of allocated lowered blocks.
parameters: Vec<VariableId>function parameters, including implicits.
Trait Implementations§
Source§impl DebugWithDb<LoweredFormatter<'_>> for Lowered
impl DebugWithDb<LoweredFormatter<'_>> for Lowered
impl Eq for Lowered
impl StructuralPartialEq for Lowered
Auto Trait Implementations§
impl Freeze for Lowered
impl RefUnwindSafe for Lowered
impl Send for Lowered
impl Sync for Lowered
impl Unpin for Lowered
impl UnwindSafe for Lowered
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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