Enum rustc_trait_selection::solve::inspect::build::DebugSolver
source · enum DebugSolver<'tcx> {
Root,
GoalEvaluation(WipGoalEvaluation<'tcx>),
CanonicalGoalEvaluation(WipCanonicalGoalEvaluation<'tcx>),
AddedGoalsEvaluation(WipAddedGoalsEvaluation<'tcx>),
GoalEvaluationStep(WipGoalEvaluationStep<'tcx>),
Probe(WipProbe<'tcx>),
}
Expand description
The current state of the proof tree builder, at most places in the code, only one or two variants are actually possible.
We simply ICE in case that assumption is broken.
Variants§
Root
GoalEvaluation(WipGoalEvaluation<'tcx>)
CanonicalGoalEvaluation(WipCanonicalGoalEvaluation<'tcx>)
AddedGoalsEvaluation(WipAddedGoalsEvaluation<'tcx>)
GoalEvaluationStep(WipGoalEvaluationStep<'tcx>)
Probe(WipProbe<'tcx>)
Trait Implementations§
source§impl<'tcx> Debug for DebugSolver<'tcx>
impl<'tcx> Debug for DebugSolver<'tcx>
source§impl<'tcx> From<WipAddedGoalsEvaluation<'tcx>> for DebugSolver<'tcx>
impl<'tcx> From<WipAddedGoalsEvaluation<'tcx>> for DebugSolver<'tcx>
source§fn from(g: WipAddedGoalsEvaluation<'tcx>) -> DebugSolver<'tcx>
fn from(g: WipAddedGoalsEvaluation<'tcx>) -> DebugSolver<'tcx>
Converts to this type from the input type.
source§impl<'tcx> From<WipCanonicalGoalEvaluation<'tcx>> for DebugSolver<'tcx>
impl<'tcx> From<WipCanonicalGoalEvaluation<'tcx>> for DebugSolver<'tcx>
source§fn from(g: WipCanonicalGoalEvaluation<'tcx>) -> DebugSolver<'tcx>
fn from(g: WipCanonicalGoalEvaluation<'tcx>) -> DebugSolver<'tcx>
Converts to this type from the input type.
source§impl<'tcx> From<WipGoalEvaluation<'tcx>> for DebugSolver<'tcx>
impl<'tcx> From<WipGoalEvaluation<'tcx>> for DebugSolver<'tcx>
source§fn from(g: WipGoalEvaluation<'tcx>) -> DebugSolver<'tcx>
fn from(g: WipGoalEvaluation<'tcx>) -> DebugSolver<'tcx>
Converts to this type from the input type.
source§impl<'tcx> From<WipGoalEvaluationStep<'tcx>> for DebugSolver<'tcx>
impl<'tcx> From<WipGoalEvaluationStep<'tcx>> for DebugSolver<'tcx>
source§fn from(g: WipGoalEvaluationStep<'tcx>) -> DebugSolver<'tcx>
fn from(g: WipGoalEvaluationStep<'tcx>) -> DebugSolver<'tcx>
Converts to this type from the input type.
source§impl<'tcx> From<WipProbe<'tcx>> for DebugSolver<'tcx>
impl<'tcx> From<WipProbe<'tcx>> for DebugSolver<'tcx>
source§fn from(p: WipProbe<'tcx>) -> DebugSolver<'tcx>
fn from(p: WipProbe<'tcx>) -> DebugSolver<'tcx>
Converts to this type from the input type.
Auto Trait Implementations§
impl<'tcx> !RefUnwindSafe for DebugSolver<'tcx>
impl<'tcx> !Send for DebugSolver<'tcx>
impl<'tcx> !Sync for DebugSolver<'tcx>
impl<'tcx> Unpin for DebugSolver<'tcx>
impl<'tcx> !UnwindSafe for DebugSolver<'tcx>
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
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 184 bytes
Size for each variant:
Root
: 0 bytesGoalEvaluation
: 184 bytesCanonicalGoalEvaluation
: 120 bytesAddedGoalsEvaluation
: 32 bytesGoalEvaluationStep
: 120 bytesProbe
: 88 bytes