Enum rustc::traits::ObligationCauseCode [−][src]
pub enum ObligationCauseCode<'tcx> {
MiscObligation,
SliceOrArrayElem,
TupleElem,
ProjectionWf(ProjectionTy<'tcx>),
ItemObligation(DefId),
ReferenceOutlivesReferent(Ty<'tcx>),
ObjectTypeBound(Ty<'tcx>, Region<'tcx>),
ObjectCastObligation(Ty<'tcx>),
AssignmentLhsSized,
TupleInitializerSized,
StructInitializerSized,
VariableType(NodeId),
SizedReturnType,
SizedYieldType,
RepeatVec,
FieldSized(AdtKind),
ConstSized,
SharedStatic,
BuiltinDerivedObligation(DerivedObligationCause<'tcx>),
ImplDerivedObligation(DerivedObligationCause<'tcx>),
CompareImplMethodObligation {
item_name: Name,
impl_item_def_id: DefId,
trait_item_def_id: DefId,
},
ExprAssignable,
MatchExpressionArm {
arm_span: Span,
source: MatchSource,
},
IfExpression,
IfExpressionWithNoElse,
MainFunctionType,
StartFunctionType,
IntrinsicType,
MethodReceiver,
ReturnNoExpression,
ReturnType(NodeId),
BlockTailExpression(NodeId),
}🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Variants
MiscObligation🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Not well classified or should be obvious from span.
SliceOrArrayElem🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
A slice or array is WF only if T: Sized
TupleElem🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
A tuple is WF only if its middle elements are Sized
ProjectionWf(ProjectionTy<'tcx>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
This is the trait reference from the given projection
ItemObligation(DefId)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
In an impl of trait X for type Y, type Y must also implement all supertraits of X.
ReferenceOutlivesReferent(Ty<'tcx>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
A type like &'a T is WF only if T: 'a.
ObjectTypeBound(Ty<'tcx>, Region<'tcx>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
A type like Box<Foo<'a> + 'b> is WF only if 'b: 'a.
ObjectCastObligation(Ty<'tcx>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Obligation incurred due to an object cast.
AssignmentLhsSized🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
L = X implies that L is Sized
TupleInitializerSized🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
(x1, .., xn) must be Sized
StructInitializerSized🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
S { ... } must be Sized
VariableType(NodeId)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Type of each variable must be Sized
SizedReturnType🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Return type must be Sized
SizedYieldType🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Yield type must be Sized
RepeatVec🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
[T,..n] --> T must be Copy
FieldSized(AdtKind)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Types of fields (other than the last) in a struct must be sized.
ConstSized🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Constant expressions must be sized.
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
static items must have Sync type
BuiltinDerivedObligation(DerivedObligationCause<'tcx>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
ImplDerivedObligation(DerivedObligationCause<'tcx>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
CompareImplMethodObligation🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
error derived when matching traits/impls; see ObligationCause for more details
Fields of CompareImplMethodObligation
item_name: Name | 🔬 This is a nightly-only experimental API. ( |
impl_item_def_id: DefId | 🔬 This is a nightly-only experimental API. ( |
trait_item_def_id: DefId | 🔬 This is a nightly-only experimental API. ( |
ExprAssignable🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Checking that this expression can be assigned where it needs to be
MatchExpressionArm🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Computing common supertype in the arms of a match expression
Fields of MatchExpressionArm
arm_span: Span | 🔬 This is a nightly-only experimental API. ( |
source: MatchSource | 🔬 This is a nightly-only experimental API. ( |
IfExpression🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Computing common supertype in an if expression
IfExpressionWithNoElse🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Computing common supertype of an if expression with no else counter-part
MainFunctionType🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
main has wrong type
StartFunctionType🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
start has wrong type
IntrinsicType🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
intrinsic has wrong type
MethodReceiver🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
method receiver
ReturnNoExpression🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
return with no expression
ReturnType(NodeId)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
return with an expression
BlockTailExpression(NodeId)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Block implicit return
Trait Implementations
impl<'a, 'tcx> Lift<'tcx> for ObligationCauseCode<'a>[src]
impl<'a, 'tcx> Lift<'tcx> for ObligationCauseCode<'a>type Lifted = ObligationCauseCode<'tcx>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn lift_to_tcx<'b, 'gcx>(
&self,
tcx: TyCtxt<'b, 'gcx, 'tcx>
) -> Option<Self::Lifted>[src]
fn lift_to_tcx<'b, 'gcx>(
&self,
tcx: TyCtxt<'b, 'gcx, 'tcx>
) -> Option<Self::Lifted>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
impl<'tcx> Clone for ObligationCauseCode<'tcx>[src]
impl<'tcx> Clone for ObligationCauseCode<'tcx>fn clone(&self) -> ObligationCauseCode<'tcx>[src]
fn clone(&self) -> ObligationCauseCode<'tcx>Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)Performs copy-assignment from source. Read more
impl<'tcx> Debug for ObligationCauseCode<'tcx>[src]
impl<'tcx> Debug for ObligationCauseCode<'tcx>fn fmt(&self, f: &mut Formatter) -> Result[src]
fn fmt(&self, f: &mut Formatter) -> ResultFormats the value using the given formatter. Read more
impl<'tcx> PartialEq for ObligationCauseCode<'tcx>[src]
impl<'tcx> PartialEq for ObligationCauseCode<'tcx>fn eq(&self, other: &ObligationCauseCode<'tcx>) -> bool[src]
fn eq(&self, other: &ObligationCauseCode<'tcx>) -> boolThis method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, other: &ObligationCauseCode<'tcx>) -> bool[src]
fn ne(&self, other: &ObligationCauseCode<'tcx>) -> boolThis method tests for !=.
impl<'tcx> Eq for ObligationCauseCode<'tcx>[src]
impl<'tcx> Eq for ObligationCauseCode<'tcx>fn assert_receiver_is_total_eq(&self)[src]
fn assert_receiver_is_total_eq(&self)impl<'tcx> Hash for ObligationCauseCode<'tcx>[src]
impl<'tcx> Hash for ObligationCauseCode<'tcx>Auto Trait Implementations
impl<'tcx> !Send for ObligationCauseCode<'tcx>
impl<'tcx> !Send for ObligationCauseCode<'tcx>impl<'tcx> !Sync for ObligationCauseCode<'tcx>
impl<'tcx> !Sync for ObligationCauseCode<'tcx>