Struct chalk_engine::CompleteAnswer
source · pub struct CompleteAnswer<I: Interner> {
pub subst: Canonical<ConstrainedSubst<I>>,
pub ambiguous: bool,
}
Fields§
§subst: Canonical<ConstrainedSubst<I>>
Contains values for the unbound inference variables for which the table is true, along with any region constrained (which must still be proven, but not by chalk).
ambiguous: bool
If this flag is set, then the answer could be neither proven
nor disproven. This could be the size of the answer exceeded
max_size
or because of a negative loop (e.g., P :- not { P }
).
Trait Implementations§
Auto Trait Implementations§
impl<I> RefUnwindSafe for CompleteAnswer<I>where <I as Interner>::InternedCanonicalVarKinds: RefUnwindSafe, <I as Interner>::InternedConstraints: RefUnwindSafe, <I as Interner>::InternedSubstitution: RefUnwindSafe,
impl<I> Send for CompleteAnswer<I>where <I as Interner>::InternedCanonicalVarKinds: Send, <I as Interner>::InternedConstraints: Send, <I as Interner>::InternedSubstitution: Send,
impl<I> Sync for CompleteAnswer<I>where <I as Interner>::InternedCanonicalVarKinds: Sync, <I as Interner>::InternedConstraints: Sync, <I as Interner>::InternedSubstitution: Sync,
impl<I> Unpin for CompleteAnswer<I>where <I as Interner>::InternedCanonicalVarKinds: Unpin, <I as Interner>::InternedConstraints: Unpin, <I as Interner>::InternedSubstitution: Unpin,
impl<I> UnwindSafe for CompleteAnswer<I>where <I as Interner>::InternedCanonicalVarKinds: UnwindSafe, <I as Interner>::InternedConstraints: UnwindSafe, <I as Interner>::InternedSubstitution: UnwindSafe,
Blanket Implementations§
source§impl<T> Cast for T
impl<T> Cast for T
source§fn cast<U>(self, interner: <U as HasInterner>::Interner) -> Uwhere
Self: CastTo<U>,
U: HasInterner,
fn cast<U>(self, interner: <U as HasInterner>::Interner) -> Uwhere Self: CastTo<U>, U: HasInterner,
Cast a value to type
U
using CastTo
.