Canonical source-shaped function instance identity from pinned
rustc_middle/src/ty/instance.rs. Saved frames retain every shim kind and
payload; a definition ID alone is not function-instance identity.
- FnPtr : CallReifyReason
- Vtable : CallReifyReason
Instances For
@[instance_reducible]
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[instance_reducible]
All variants and payloads of pinned ty::ShimKind.
- VTable (definition : MIR.DefId) : CallShimKind
- Reify (definition : MIR.DefId) (reason : Option CallReifyReason) : CallShimKind
- FnPtr (definition : MIR.DefId) (ty : MIR.TyId) : CallShimKind
- ClosureOnce (callOnce closure : MIR.DefId) (trackCaller : Bool) : CallShimKind
- ConstructCoroutineInClosure (definition : MIR.DefId) (receiverByRef : Bool) : CallShimKind
- ThreadLocal (definition : MIR.DefId) : CallShimKind
- FutureDropPoll (definition : MIR.DefId) (proxy impl : MIR.TyId) : CallShimKind
- DropGlue (definition : MIR.DefId) (ty : Option MIR.TyId) : CallShimKind
- Clone (definition : MIR.DefId) (ty : MIR.TyId) : CallShimKind
- FnPtrAsPtr (definition : MIR.DefId) (ty : MIR.TyId) : CallShimKind
- FnPtrFromPtr (definition : MIR.DefId) (ty : MIR.TyId) : CallShimKind
- AsyncDropGlueCtor (definition : MIR.DefId) (ty : MIR.TyId) : CallShimKind
- AsyncDropGlue (definition : MIR.DefId) (ty : MIR.TyId) : CallShimKind
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[instance_reducible]
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[instance_reducible]
- Item (definition : MIR.DefId) : CallInstanceKind
- Intrinsic (definition : MIR.DefId) : CallInstanceKind
- LlvmIntrinsic (definition : MIR.DefId) : CallInstanceKind
- Virtual (definition : MIR.DefId) (index : Nat) : CallInstanceKind
- Shim (shim : CallShimKind) : CallInstanceKind
Instances For
@[instance_reducible]
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Item a) (Miri.Interpreter.CallInstanceKind.Item b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Item definition) (Miri.Interpreter.CallInstanceKind.Intrinsic definition_1) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Item definition) (Miri.Interpreter.CallInstanceKind.LlvmIntrinsic definition_1) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Item definition) (Miri.Interpreter.CallInstanceKind.Virtual definition_1 index) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Item definition) (Miri.Interpreter.CallInstanceKind.Shim shim) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Intrinsic definition) (Miri.Interpreter.CallInstanceKind.Item definition_1) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Intrinsic definition) (Miri.Interpreter.CallInstanceKind.LlvmIntrinsic definition_1) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Intrinsic definition) (Miri.Interpreter.CallInstanceKind.Virtual definition_1 index) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Intrinsic definition) (Miri.Interpreter.CallInstanceKind.Shim shim) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.LlvmIntrinsic definition) (Miri.Interpreter.CallInstanceKind.Item definition_1) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.LlvmIntrinsic definition) (Miri.Interpreter.CallInstanceKind.Intrinsic definition_1) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.LlvmIntrinsic definition) (Miri.Interpreter.CallInstanceKind.Virtual definition_1 index) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.LlvmIntrinsic definition) (Miri.Interpreter.CallInstanceKind.Shim shim) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Virtual definition index) (Miri.Interpreter.CallInstanceKind.Item definition_1) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Virtual definition index) (Miri.Interpreter.CallInstanceKind.Intrinsic definition_1) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Virtual definition index) (Miri.Interpreter.CallInstanceKind.LlvmIntrinsic definition_1) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Virtual definition index) (Miri.Interpreter.CallInstanceKind.Shim shim) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Shim shim) (Miri.Interpreter.CallInstanceKind.Item definition) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Shim shim) (Miri.Interpreter.CallInstanceKind.Intrinsic definition) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Shim shim) (Miri.Interpreter.CallInstanceKind.LlvmIntrinsic definition) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Shim shim) (Miri.Interpreter.CallInstanceKind.Virtual definition index) = isFalse ⋯
- Miri.Interpreter.instDecidableEqCallInstanceKind.decEq (Miri.Interpreter.CallInstanceKind.Shim a) (Miri.Interpreter.CallInstanceKind.Shim b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
Instances For
- kind : CallInstanceKind
- args : Array MIR.GenericArg
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[instance_reducible]
Equations
@[instance_reducible]
Equations
Instances For
Pinned ShimKind::def_id: ClosureOnce selects call_once, not closure.
Equations
- (Miri.Interpreter.CallShimKind.VTable a).defId = a
- (Miri.Interpreter.CallShimKind.Reify a a_1).defId = a
- (Miri.Interpreter.CallShimKind.FnPtr a a_1).defId = a
- (Miri.Interpreter.CallShimKind.ClosureOnce a a_1 a_2).defId = a
- (Miri.Interpreter.CallShimKind.ConstructCoroutineInClosure a a_1).defId = a
- (Miri.Interpreter.CallShimKind.ThreadLocal a).defId = a
- (Miri.Interpreter.CallShimKind.FutureDropPoll a a_1 a_2).defId = a
- (Miri.Interpreter.CallShimKind.DropGlue a a_1).defId = a
- (Miri.Interpreter.CallShimKind.Clone a a_1).defId = a
- (Miri.Interpreter.CallShimKind.FnPtrAsPtr a a_1).defId = a
- (Miri.Interpreter.CallShimKind.FnPtrFromPtr a a_1).defId = a
- (Miri.Interpreter.CallShimKind.AsyncDropGlueCtor a a_1).defId = a
- (Miri.Interpreter.CallShimKind.AsyncDropGlue a a_1).defId = a