Trait Decodable

Source
pub trait Decodable<D: Decoder>: Sized {
    // Required method
    fn decode(d: &mut D) -> Self;
}
Expand description

Trait for types that can be deserialized

This can be implemented using the Decodable, TyDecodable and MetadataDecodable macros.

  • Decodable should be used in crates that don’t depend on rustc_middle.
  • MetadataDecodable is used in rustc_metadata for types that contain rustc_metadata::rmeta::Lazy.
  • TyDecodable should be used for types that are only serialized in crate metadata or the incremental cache. This is most types in rustc_middle.

Required Methods§

Source

fn decode(d: &mut D) -> Self

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<'a> Decodable<MemDecoder<'a>> for Vec<u8>

Source§

fn decode(d: &mut MemDecoder<'a>) -> Self

Source§

impl<D: Decoder> Decodable<D> for Cow<'_, str>

Source§

fn decode(d: &mut D) -> Cow<'static, str>

Source§

impl<D: Decoder> Decodable<D> for bool

Source§

impl<D: Decoder> Decodable<D> for char

Source§

impl<D: Decoder> Decodable<D> for i8

Source§

impl<D: Decoder> Decodable<D> for i16

Source§

impl<D: Decoder> Decodable<D> for i32

Source§

impl<D: Decoder> Decodable<D> for i64

Source§

impl<D: Decoder> Decodable<D> for i128

Source§

impl<D: Decoder> Decodable<D> for isize

Source§

impl<D: Decoder> Decodable<D> for !

Source§

impl<D: Decoder> Decodable<D> for u8

Source§

impl<D: Decoder> Decodable<D> for u16

Source§

impl<D: Decoder> Decodable<D> for u32

Source§

impl<D: Decoder> Decodable<D> for u64

Source§

impl<D: Decoder> Decodable<D> for u128

Source§

impl<D: Decoder> Decodable<D> for ()

Source§

impl<D: Decoder> Decodable<D> for usize

Source§

impl<D: Decoder> Decodable<D> for String

Source§

impl<D: Decoder> Decodable<D> for NonZero<u32>

Source§

fn decode(d: &mut D) -> Self

Source§

impl<D: Decoder> Decodable<D> for PathBuf

Source§

impl<D: Decoder, A: Array<Item: Decodable<D>>> Decodable<D> for SmallVec<A>

Source§

impl<D: Decoder, K, V> Decodable<D> for BTreeMap<K, V>
where K: Decodable<D> + PartialEq + Ord, V: Decodable<D>,

Source§

impl<D: Decoder, K, V, S> Decodable<D> for HashMap<K, V, S>
where K: Decodable<D> + Hash + Eq, V: Decodable<D>, S: BuildHasher + Default,

Source§

fn decode(d: &mut D) -> HashMap<K, V, S>

Source§

impl<D: Decoder, K, V, S> Decodable<D> for IndexMap<K, V, S>
where K: Decodable<D> + Hash + Eq, V: Decodable<D>, S: BuildHasher + Default,

Source§

fn decode(d: &mut D) -> IndexMap<K, V, S>

Source§

impl<D: Decoder, T0: Decodable<D>, T1: Decodable<D>, T2: Decodable<D>, T3: Decodable<D>, T4: Decodable<D>, T5: Decodable<D>, T6: Decodable<D>, T7: Decodable<D>, T8: Decodable<D>, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

impl<D: Decoder, T1: Decodable<D>, T2: Decodable<D>> Decodable<D> for Result<T1, T2>

Source§

fn decode(d: &mut D) -> Result<T1, T2>

Source§

impl<D: Decoder, T1: Decodable<D>, T2: Decodable<D>, T3: Decodable<D>, T4: Decodable<D>, T5: Decodable<D>, T6: Decodable<D>, T7: Decodable<D>, T8: Decodable<D>, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

impl<D: Decoder, T2: Decodable<D>, T3: Decodable<D>, T4: Decodable<D>, T5: Decodable<D>, T6: Decodable<D>, T7: Decodable<D>, T8: Decodable<D>, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

impl<D: Decoder, T3: Decodable<D>, T4: Decodable<D>, T5: Decodable<D>, T6: Decodable<D>, T7: Decodable<D>, T8: Decodable<D>, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

impl<D: Decoder, T4: Decodable<D>, T5: Decodable<D>, T6: Decodable<D>, T7: Decodable<D>, T8: Decodable<D>, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T4, T5, T6, T7, T8, T9, T10, T11)

Source§

impl<D: Decoder, T5: Decodable<D>, T6: Decodable<D>, T7: Decodable<D>, T8: Decodable<D>, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T5, T6, T7, T8, T9, T10, T11)

Source§

impl<D: Decoder, T6: Decodable<D>, T7: Decodable<D>, T8: Decodable<D>, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T6, T7, T8, T9, T10, T11)

Source§

impl<D: Decoder, T7: Decodable<D>, T8: Decodable<D>, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T7, T8, T9, T10, T11)

Source§

impl<D: Decoder, T8: Decodable<D>, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T8, T9, T10, T11)

Source§

impl<D: Decoder, T9: Decodable<D>, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T9, T10, T11)

Source§

impl<D: Decoder, T10: Decodable<D>, T11: Decodable<D>> Decodable<D> for (T10, T11)

Source§

impl<D: Decoder, T11: Decodable<D>> Decodable<D> for (T11,)

Source§

impl<D: Decoder, T> Decodable<D> for BTreeSet<T>
where T: Decodable<D> + PartialEq + Ord,

Source§

impl<D: Decoder, T> Decodable<D> for PhantomData<T>

Source§

impl<D: Decoder, T, S> Decodable<D> for HashSet<T, S>
where T: Decodable<D> + Hash + Eq, S: BuildHasher + Default,

Source§

fn decode(d: &mut D) -> HashSet<T, S>

Source§

impl<D: Decoder, T, S> Decodable<D> for IndexSet<T, S>
where T: Decodable<D> + Hash + Eq, S: BuildHasher + Default,

Source§

impl<D: Decoder, T: Decodable<D> + ToOwned> Decodable<D> for Cow<'static, [T]>
where [T]: ToOwned<Owned = Vec<T>>,

Source§

fn decode(d: &mut D) -> Cow<'static, [T]>

Source§

impl<D: Decoder, T: Decodable<D> + Copy> Decodable<D> for Cell<T>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for Option<T>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for Box<[T]>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for Box<T>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for VecDeque<T>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for Rc<[T]>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for Rc<T>

Source§

fn decode(d: &mut D) -> Rc<T>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for Arc<[T]>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for Arc<T>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for Vec<T>

Source§

default fn decode(d: &mut D) -> Vec<T>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for RefCell<T>

Source§

impl<D: Decoder, T: Decodable<D>> Decodable<D> for ThinVec<T>

Source§

impl<D: Decoder, const N: usize> Decodable<D> for [u8; N]

Source§

fn decode(d: &mut D) -> [u8; N]

Implementors§

Source§

impl<'a> Decodable<MemDecoder<'a>> for IntEncodedWithFixedSize

impl<D: Decoder> Decodable<D> for FieldIdx

impl<D: Decoder> Decodable<D> for VariantIdx

impl<__D: Decoder> Decodable<__D> for Integer

impl<__D: Decoder> Decodable<__D> for IntegerType

impl<__D: Decoder> Decodable<__D> for Align

impl<__D: Decoder> Decodable<__D> for ReprFlags

impl<__D: Decoder> Decodable<__D> for ReprOptions

impl<__D: Decoder> Decodable<__D> for Size

impl<__D: SpanDecoder> Decodable<__D> for ExternAbi

impl<D: Decoder> Decodable<D> for NodeId

impl<D: Decoder, T: 'static + Decodable<D>> Decodable<D> for P<T>

impl<D: Decoder, T: Decodable<D>> Decodable<D> for P<[T]>

impl<K, __D: SpanDecoder> Decodable<__D> for Item<K>
where K: Decodable<__D>,

impl<ModId, __D: SpanDecoder> Decodable<__D> for StrippedCfgItem<ModId>
where ModId: Decodable<__D>,

impl<__D: SpanDecoder> Decodable<__D> for AsmMacro

impl<__D: SpanDecoder> Decodable<__D> for AssocItemKind

impl<__D: SpanDecoder> Decodable<__D> for AttrArgs

impl<__D: SpanDecoder> Decodable<__D> for AttrKind

impl<__D: SpanDecoder> Decodable<__D> for AttrStyle

impl<__D: SpanDecoder> Decodable<__D> for BinOpKind

impl<__D: SpanDecoder> Decodable<__D> for BorrowKind

impl<__D: SpanDecoder> Decodable<__D> for BoundPolarity

impl<__D: SpanDecoder> Decodable<__D> for ByRef

impl<__D: SpanDecoder> Decodable<__D> for CaptureBy

impl<__D: SpanDecoder> Decodable<__D> for ClosureBinder

impl<__D: SpanDecoder> Decodable<__D> for Const

impl<__D: SpanDecoder> Decodable<__D> for CoroutineKind

impl<__D: SpanDecoder> Decodable<__D> for Defaultness

impl<__D: SpanDecoder> Decodable<__D> for ExprKind

impl<__D: SpanDecoder> Decodable<__D> for Extern

impl<__D: SpanDecoder> Decodable<__D> for FloatTy

impl<__D: SpanDecoder> Decodable<__D> for FnRetTy

impl<__D: SpanDecoder> Decodable<__D> for ForLoopKind

impl<__D: SpanDecoder> Decodable<__D> for GenBlockKind

impl<__D: SpanDecoder> Decodable<__D> for GenericArg

impl<__D: SpanDecoder> Decodable<__D> for GenericArgs

impl<__D: SpanDecoder> Decodable<__D> for GenericBound

impl<__D: SpanDecoder> Decodable<__D> for ImplPolarity

impl<__D: SpanDecoder> Decodable<__D> for Inline

impl<__D: SpanDecoder> Decodable<__D> for IntTy

impl<__D: SpanDecoder> Decodable<__D> for IsAuto

impl<__D: SpanDecoder> Decodable<__D> for ItemKind

impl<__D: SpanDecoder> Decodable<__D> for LitFloatType

impl<__D: SpanDecoder> Decodable<__D> for LitIntType

impl<__D: SpanDecoder> Decodable<__D> for LitKind

impl<__D: SpanDecoder> Decodable<__D> for LocalKind

impl<__D: SpanDecoder> Decodable<__D> for MacStmtStyle

impl<__D: SpanDecoder> Decodable<__D> for MatchKind

impl<__D: SpanDecoder> Decodable<__D> for MetaItemInner

impl<__D: SpanDecoder> Decodable<__D> for MetaItemKind

impl<__D: SpanDecoder> Decodable<__D> for ModKind

impl<__D: SpanDecoder> Decodable<__D> for PatFieldsRest

impl<__D: SpanDecoder> Decodable<__D> for PatKind

impl<__D: SpanDecoder> Decodable<__D> for RangeEnd

impl<__D: SpanDecoder> Decodable<__D> for RangeLimits

impl<__D: SpanDecoder> Decodable<__D> for RangeSyntax

impl<__D: SpanDecoder> Decodable<__D> for Recovered

impl<__D: SpanDecoder> Decodable<__D> for Safety

impl<__D: SpanDecoder> Decodable<__D> for SelfKind

impl<__D: SpanDecoder> Decodable<__D> for StmtKind

impl<__D: SpanDecoder> Decodable<__D> for StrStyle

impl<__D: SpanDecoder> Decodable<__D> for StructRest

impl<__D: SpanDecoder> Decodable<__D> for Term

impl<__D: SpanDecoder> Decodable<__D> for TyKind

impl<__D: SpanDecoder> Decodable<__D> for TyPatKind

impl<__D: SpanDecoder> Decodable<__D> for UintTy

impl<__D: SpanDecoder> Decodable<__D> for UnOp

impl<__D: SpanDecoder> Decodable<__D> for UnsafeSource

impl<__D: SpanDecoder> Decodable<__D> for UseTreeKind

impl<__D: SpanDecoder> Decodable<__D> for VariantData

impl<__D: SpanDecoder> Decodable<__D> for DiffActivity

impl<__D: SpanDecoder> Decodable<__D> for DiffMode

impl<__D: SpanDecoder> Decodable<__D> for Kind

impl<__D: SpanDecoder> Decodable<__D> for FormatCount

impl<__D: SpanDecoder> Decodable<__D> for FormatSign

impl<__D: SpanDecoder> Decodable<__D> for FormatTrait

impl<__D: SpanDecoder> Decodable<__D> for BinOpToken

impl<__D: SpanDecoder> Decodable<__D> for CommentKind

impl<__D: SpanDecoder> Decodable<__D> for Delimiter

impl<__D: SpanDecoder> Decodable<__D> for IdentIsRaw

impl<__D: SpanDecoder> Decodable<__D> for LitKind

impl<__D: SpanDecoder> Decodable<__D> for MetaVarKind

impl<__D: SpanDecoder> Decodable<__D> for Nonterminal

impl<__D: SpanDecoder> Decodable<__D> for NtExprKind

impl<__D: SpanDecoder> Decodable<__D> for NtPatKind

impl<__D: SpanDecoder> Decodable<__D> for TokenKind

impl<__D: SpanDecoder> Decodable<__D> for AttrTokenTree

impl<__D: SpanDecoder> Decodable<__D> for Spacing

impl<__D: SpanDecoder> Decodable<__D> for TokenTree

impl<__D: SpanDecoder> Decodable<__D> for AnonConst

impl<__D: SpanDecoder> Decodable<__D> for Arm

impl<__D: SpanDecoder> Decodable<__D> for AttrItem

impl<__D: SpanDecoder> Decodable<__D> for Attribute

impl<__D: SpanDecoder> Decodable<__D> for BareFnTy

impl<__D: SpanDecoder> Decodable<__D> for BindingMode

impl<__D: SpanDecoder> Decodable<__D> for Block

impl<__D: SpanDecoder> Decodable<__D> for Closure

impl<__D: SpanDecoder> Decodable<__D> for ConstItem

impl<__D: SpanDecoder> Decodable<__D> for Crate

impl<__D: SpanDecoder> Decodable<__D> for Delegation

impl<__D: SpanDecoder> Decodable<__D> for DelegationMac

impl<__D: SpanDecoder> Decodable<__D> for DelimArgs

impl<__D: SpanDecoder> Decodable<__D> for EnumDef

impl<__D: SpanDecoder> Decodable<__D> for Expr

impl<__D: SpanDecoder> Decodable<__D> for ExprField

impl<__D: SpanDecoder> Decodable<__D> for FieldDef

impl<__D: SpanDecoder> Decodable<__D> for Fn

impl<__D: SpanDecoder> Decodable<__D> for FnContract

impl<__D: SpanDecoder> Decodable<__D> for FnDecl

impl<__D: SpanDecoder> Decodable<__D> for FnHeader

impl<__D: SpanDecoder> Decodable<__D> for FnSig

impl<__D: SpanDecoder> Decodable<__D> for ForeignMod

impl<__D: SpanDecoder> Decodable<__D> for GenericParam

impl<__D: SpanDecoder> Decodable<__D> for Generics

impl<__D: SpanDecoder> Decodable<__D> for Impl

impl<__D: SpanDecoder> Decodable<__D> for InlineAsm

impl<__D: SpanDecoder> Decodable<__D> for InlineAsmSym

impl<__D: SpanDecoder> Decodable<__D> for Label

impl<__D: SpanDecoder> Decodable<__D> for Lifetime

impl<__D: SpanDecoder> Decodable<__D> for Local

impl<__D: SpanDecoder> Decodable<__D> for MacCall

impl<__D: SpanDecoder> Decodable<__D> for MacCallStmt

impl<__D: SpanDecoder> Decodable<__D> for MacroDef

impl<__D: SpanDecoder> Decodable<__D> for MetaItem

impl<__D: SpanDecoder> Decodable<__D> for MetaItemLit

impl<__D: SpanDecoder> Decodable<__D> for MethodCall

impl<__D: SpanDecoder> Decodable<__D> for ModSpans

impl<__D: SpanDecoder> Decodable<__D> for MutTy

impl<__D: SpanDecoder> Decodable<__D> for NormalAttr

impl<__D: SpanDecoder> Decodable<__D> for Param

impl<__D: SpanDecoder> Decodable<__D> for Pat

impl<__D: SpanDecoder> Decodable<__D> for PatField

impl<__D: SpanDecoder> Decodable<__D> for Path

impl<__D: SpanDecoder> Decodable<__D> for PathSegment

impl<__D: SpanDecoder> Decodable<__D> for PolyTraitRef

impl<__D: SpanDecoder> Decodable<__D> for QSelf

impl<__D: SpanDecoder> Decodable<__D> for StaticItem

impl<__D: SpanDecoder> Decodable<__D> for Stmt

impl<__D: SpanDecoder> Decodable<__D> for StrLit

impl<__D: SpanDecoder> Decodable<__D> for StructExpr

impl<__D: SpanDecoder> Decodable<__D> for Trait

impl<__D: SpanDecoder> Decodable<__D> for TraitRef

impl<__D: SpanDecoder> Decodable<__D> for Ty

impl<__D: SpanDecoder> Decodable<__D> for TyAlias

impl<__D: SpanDecoder> Decodable<__D> for TyPat

impl<__D: SpanDecoder> Decodable<__D> for UseTree

impl<__D: SpanDecoder> Decodable<__D> for Variant

impl<__D: SpanDecoder> Decodable<__D> for Visibility

impl<__D: SpanDecoder> Decodable<__D> for WhereClause

impl<__D: SpanDecoder> Decodable<__D> for AutoDiffAttrs

impl<__D: SpanDecoder> Decodable<__D> for AutoDiffItem

impl<__D: SpanDecoder> Decodable<__D> for FncTree

impl<__D: SpanDecoder> Decodable<__D> for Type

impl<__D: SpanDecoder> Decodable<__D> for TypeTree

impl<__D: SpanDecoder> Decodable<__D> for FormatArgs

impl<__D: SpanDecoder> Decodable<__D> for FormatOptions

impl<__D: SpanDecoder> Decodable<__D> for Lit

impl<__D: SpanDecoder> Decodable<__D> for Token

impl<__D: SpanDecoder> Decodable<__D> for AttrsTarget

impl<__D: SpanDecoder> Decodable<__D> for DelimSpacing

impl<__D: SpanDecoder> Decodable<__D> for DelimSpan

impl<__D: SpanDecoder> Decodable<__D> for TokenStream

impl<__D: SpanDecoder> Decodable<__D> for Movability

impl<__D: SpanDecoder> Decodable<__D> for Mutability

impl<__D: SpanDecoder> Decodable<__D> for Pinnedness

impl<__D: SpanDecoder> Decodable<__D> for InlineAttr

impl<__D: SpanDecoder> Decodable<__D> for IntType

impl<__D: SpanDecoder> Decodable<__D> for OptimizeAttr

impl<__D: SpanDecoder> Decodable<__D> for ReprAttr

impl<__D: SpanDecoder> Decodable<__D> for StableSince

impl<__D: SpanDecoder> Decodable<__D> for Deprecation

impl<__D: SpanDecoder> Decodable<__D> for RustcVersion

impl<__D: SpanDecoder> Decodable<__D> for Stability

impl<__D: SpanDecoder> Decodable<__D> for ModuleKind

impl<__D: SpanDecoder> Decodable<__D> for CrateInfo

impl<__D: SpanDecoder> Decodable<__D> for NativeLib

impl<D: Decoder> Decodable<D> for Fingerprint

impl<D: Decoder> Decodable<D> for Pu128

impl<D: Decoder> Decodable<D> for Hash128

impl<D: Decoder> Decodable<D> for Hash64

impl<K, V, __D: Decoder> Decodable<__D> for SortedMap<K, V>
where K: Decodable<__D>, V: Decodable<__D>,

impl<K, V, __D: Decoder> Decodable<__D> for UnordMap<K, V>
where K: Decodable<__D> + Eq + Hash, V: Decodable<__D>,

impl<V, __D: Decoder> Decodable<__D> for UnordBag<V>
where V: Decodable<__D>,

impl<V, __D: Decoder> Decodable<__D> for UnordSet<V>
where V: Decodable<__D> + Eq + Hash,

impl<__D: Decoder> Decodable<__D> for Svh

impl<__D: SpanDecoder> Decodable<__D> for DiagMessage

impl<__D: SpanDecoder> Decodable<__D> for MultiSpan

impl<D: Decoder> Decodable<D> for ErrCode

impl<__D: SpanDecoder> Decodable<__D> for DiagArgValue

impl<__D: SpanDecoder> Decodable<__D> for Level

impl<__D: SpanDecoder> Decodable<__D> for Style

impl<__D: SpanDecoder> Decodable<__D> for Suggestions

impl<__D: SpanDecoder> Decodable<__D> for DiagLocation

impl<__D: SpanDecoder> Decodable<__D> for IsLint

impl<__D: SpanDecoder> Decodable<__D> for DiagInner

impl<__D: SpanDecoder> Decodable<__D> for Subdiag

impl<__D: SpanDecoder> Decodable<__D> for Substitution

impl<__D: SpanDecoder> Decodable<__D> for KleeneOp

impl<__D: SpanDecoder> Decodable<__D> for TokenTree

impl<__D: SpanDecoder> Decodable<__D> for MetaVarExpr

impl<__D: SpanDecoder> Decodable<__D> for Delimited

impl<__D: SpanDecoder> Decodable<__D> for KleeneToken

impl<D, __D: SpanDecoder> Decodable<__D> for OpaqueTyOrigin<D>
where D: Decodable<__D>,

impl<D: Decoder> Decodable<D> for ItemLocalId

impl<Id, __D: SpanDecoder> Decodable<__D> for Res<Id>
where Id: Decodable<__D>,

impl<__D: SpanDecoder> Decodable<__D> for CtorKind

impl<__D: SpanDecoder> Decodable<__D> for CtorOf

impl<__D: SpanDecoder> Decodable<__D> for DefKind

impl<__D: SpanDecoder> Decodable<__D> for Namespace

impl<__D: SpanDecoder> Decodable<__D> for DefPathData

impl<__D: SpanDecoder> Decodable<__D> for AttrArgs

impl<__D: SpanDecoder> Decodable<__D> for AttrKind

impl<__D: SpanDecoder> Decodable<__D> for ClosureKind

impl<__D: SpanDecoder> Decodable<__D> for Constness

impl<__D: SpanDecoder> Decodable<__D> for CoroutineKind

impl<__D: SpanDecoder> Decodable<__D> for Defaultness

impl<__D: SpanDecoder> Decodable<__D> for IsAsync

impl<__D: SpanDecoder> Decodable<__D> for MatchSource

impl<__D: SpanDecoder> Decodable<__D> for PrimTy

impl<__D: SpanDecoder> Decodable<__D> for RpitContext

impl<__D: SpanDecoder> Decodable<__D> for Safety

impl<__D: SpanDecoder> Decodable<__D> for LangItem

impl<__D: SpanDecoder> Decodable<__D> for DefKey

impl<__D: SpanDecoder> Decodable<__D> for DefPath

impl<__D: SpanDecoder> Decodable<__D> for AttrItem

impl<__D: SpanDecoder> Decodable<__D> for AttrPath

impl<__D: SpanDecoder> Decodable<__D> for Attribute

impl<__D: SpanDecoder> Decodable<__D> for ForeignItemId

impl<__D: SpanDecoder> Decodable<__D> for ImplItemId

impl<__D: SpanDecoder> Decodable<__D> for ItemId

impl<__D: SpanDecoder> Decodable<__D> for TraitItemId

impl<__D: SpanDecoder> Decodable<__D> for HirId

impl<__D: SpanDecoder> Decodable<__D> for OwnerId

impl<D: Decoder, I: Idx, T: Decodable<D>> Decodable<D> for IndexVec<I, T>

impl<R, C, __D: Decoder> Decodable<__D> for BitMatrix<R, C>
where R: Decodable<__D> + Idx, C: Decodable<__D> + Idx,

impl<T, __D: Decoder> Decodable<__D> for DenseBitSet<T>
where T: Decodable<__D>,

impl<T, __D: Decoder> Decodable<__D> for FiniteBitSet<T>
where T: Decodable<__D> + FiniteBitSetTy,

impl<__D: SpanDecoder> Decodable<__D> for Applicability

impl<__D: SpanDecoder> Decodable<__D> for Level

impl<'a, 'tcx> Decodable<DecodeContext<'a, 'tcx>> for &'tcx [(Clause<'tcx>, Span)]

impl<'a, 'tcx> Decodable<DecodeContext<'a, 'tcx>> for DefPathHashMapRef<'static>

impl<'a, 'tcx> Decodable<DecodeContext<'a, 'tcx>> for ExpnIndex

impl<'a, 'tcx> Decodable<DecodeContext<'a, 'tcx>> for SpanData

impl<'a, 'tcx, I: Idx, T> Decodable<DecodeContext<'a, 'tcx>> for LazyTable<I, T>

impl<'a, 'tcx, T> Decodable<DecodeContext<'a, 'tcx>> for LazyArray<T>

impl<'a, 'tcx, T> Decodable<DecodeContext<'a, 'tcx>> for LazyValue<T>

impl<'tcx, '__a> Decodable<DecodeContext<'__a, 'tcx>> for CrateHeader

impl<'tcx, '__a> Decodable<DecodeContext<'__a, 'tcx>> for CrateRoot

impl<'tcx, '__a> Decodable<DecodeContext<'__a, 'tcx>> for IncoherentImpls

impl<'tcx, '__a> Decodable<DecodeContext<'__a, 'tcx>> for LazyTables

impl<'tcx, '__a> Decodable<DecodeContext<'__a, 'tcx>> for ProcMacroData

impl<'tcx, '__a> Decodable<DecodeContext<'__a, 'tcx>> for TraitImpls

impl<__D: SpanDecoder> Decodable<__D> for CrateDep

impl<__D: SpanDecoder> Decodable<__D> for SpanTag

impl<__D: TyDecoder> Decodable<__D> for VariantData

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx UnordMap<DefId, EarlyBinder<'tcx, Ty<'tcx>>>

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx UnordSet<LocalDefId>

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx IndexVec<Promoted, Body<'tcx>>

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx Graph

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [(ExportedSymbol<'tcx>, SymbolExportInfo)]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [(Clause<'tcx>, Span)]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [InlineAsmTemplatePiece]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [Variance]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [Attribute]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [DeducedParamAttrs]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [DefId]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [LocalDefId]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [Spanned<MonoItem<'tcx>>]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [Span]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for &'tcx [Ident]

impl<'a, 'tcx> Decodable<CacheDecoder<'a, 'tcx>> for Vec<u8>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx ImplSource<'tcx, ()>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx Body<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx BorrowCheckResult<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx TypeckResults<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx List<(VariantIdx, FieldIdx)>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx List<BoundVariableKind>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx List<FieldIdx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx List<Ty<'tcx>>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx List<LocalDefId>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx List<PolyExistentialPredicate<'tcx>>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for &'tcx ListWithCachedTypeInfo<Clause<'tcx>>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for AllocId

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for ConstAllocation<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for CtfeProvenance

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for Place<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for Pattern<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for AdtDef<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for Clause<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for Const<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for GenericArg<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for ParamEnv<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for Predicate<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for Region<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for SymbolName<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for Term<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for Ty<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for ValTree<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for CanonicalVarInfos<'tcx>

impl<'tcx, D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<D> for GenericArgsRef<'tcx>

impl<'tcx, N, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ImplSource<'tcx, N>
where ImplSourceUserDefinedData<'tcx, N>: Decodable<__D>, ThinVec<N>: Decodable<__D>,

impl<'tcx, N, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ImplSourceUserDefinedData<'tcx, N>
where ThinVec<N>: Decodable<__D>,

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ExportedSymbol<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for AggregateKind<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for BindingForm<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ClosureOutlivesSubject<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Const<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ConstValue<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ConstraintCategory<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for InlineAsmOperand<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for LocalInfo<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for MentionedItem<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for NonDivergingIntrinsic<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for NullOp<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Operand<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Rvalue<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for StatementKind<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for TerminatorKind<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for VarDebugInfoContents<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for GlobalAlloc<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for MonoItem<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ObligationCauseCode<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for InstanceKind<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for UserTypeKind<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ValTreeKind<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for LayoutError<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for NormalizationError<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for PatternKind<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Place<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for PlaceWithHirId<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Projection<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for GlobalId<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for BasicBlockData<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for BasicBlocks<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Body<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for BorrowCheckResult<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ClosureOutlivesRequirement<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ClosureOutlivesSubjectTy<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ClosureRegionRequirements<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ConstAlloc<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ConstOperand<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for CopyNonOverlapping<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for CoroutineInfo<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for CoroutineLayout<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for CoroutineSavedTy<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for LocalDecl<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for MirSource<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for SourceScopeData<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Statement<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Terminator<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for UnevaluatedConst<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for VarBindingForm<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for VarDebugInfo<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for VarDebugInfoFragment<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for DerivedCause<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for DerivedHostCause<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for IfExpressionCause<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ImplDerivedCause<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ImplDerivedHostCause<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for InternedObligationCauseCode<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for MatchExpressionArmCause<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ObligationCause<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for UnifyReceiverContext<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Adjustment<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for BoundConst<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for CanonicalUserTypeAnnotation<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for CapturedPlace<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ClosureSizeProfileData<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ConstConditions<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Expr<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for GenericPredicates<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for ImplTraitHeader<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Instance<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for OpaqueHiddenType<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for TypeckResults<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for UserArgs<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for UserSelfTy<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for UserType<'tcx>

impl<'tcx, __D: TyDecoder<I = TyCtxt<'tcx>>> Decodable<__D> for Value<'tcx>

impl<D: TyDecoder, T: Decodable<D>> Decodable<D> for ClearCrossCrate<T>

impl<D: Decoder> Decodable<D> for Cache

impl<D: Decoder> Decodable<D> for ConditionId

impl<D: Decoder> Decodable<D> for CounterId

impl<D: Decoder> Decodable<D> for BasicBlock

impl<D: Decoder> Decodable<D> for Local

impl<D: Decoder> Decodable<D> for Promoted

impl<D: Decoder> Decodable<D> for SourceScope

impl<D: Decoder> Decodable<D> for ScalarInt

impl<D: Decoder, Prov: Provenance + Decodable<D>> Decodable<D> for ProvenanceMap<Prov>

impl<Id, __D: SpanDecoder> Decodable<__D> for Visibility<Id>
where Id: Decodable<__D>,

impl<Node: Idx, __D: TyDecoder> Decodable<__D> for NodeFlowData<Node>
where IndexVec<Node, Node>: Decodable<__D>,

impl<O, __D: TyDecoder> Decodable<__D> for AssertKind<O>
where O: Decodable<__D>,

impl<Prov, __D: TyDecoder> Decodable<__D> for Scalar<Prov>
where Pointer<Prov>: Decodable<__D>,

impl<Prov, __D: TyDecoder> Decodable<__D> for Pointer<Prov>
where Prov: Decodable<__D>,

impl<Prov: Provenance, Extra, Bytes, __D: TyDecoder> Decodable<__D> for Allocation<Prov, Extra, Bytes>
where Bytes: Decodable<__D>, ProvenanceMap<Prov>: Decodable<__D>, Extra: Decodable<__D>,

impl<T, __D: TyDecoder> Decodable<__D> for Set1<T>
where T: Decodable<__D>,

impl<T, __D: TyDecoder> Decodable<__D> for Placeholder<T>
where T: Decodable<__D>,

impl<V, T, __D: TyDecoder> Decodable<__D> for ProjectionElem<V, T>
where T: Decodable<__D>, V: Decodable<__D>,

impl<__D: TyDecoder> Decodable<__D> for PlaceBase

impl<__D: TyDecoder> Decodable<__D> for ProjectionKind

impl<__D: TyDecoder> Decodable<__D> for Reexport

impl<__D: TyDecoder> Decodable<__D> for ScopeData

impl<__D: TyDecoder> Decodable<__D> for ResolvedArg

impl<__D: TyDecoder> Decodable<__D> for CovTerm

impl<__D: TyDecoder> Decodable<__D> for CoverageKind

impl<__D: TyDecoder> Decodable<__D> for MappingKind

impl<__D: TyDecoder> Decodable<__D> for Op

impl<__D: TyDecoder> Decodable<__D> for AnalysisPhase

impl<__D: TyDecoder> Decodable<__D> for BinOp

impl<__D: TyDecoder> Decodable<__D> for BorrowKind

impl<__D: TyDecoder> Decodable<__D> for CallSource

impl<__D: TyDecoder> Decodable<__D> for CastKind

impl<__D: TyDecoder> Decodable<__D> for CoercionSource

impl<__D: TyDecoder> Decodable<__D> for FakeBorrowKind

impl<__D: TyDecoder> Decodable<__D> for FakeReadCause

impl<__D: TyDecoder> Decodable<__D> for InlineAsmMacro

impl<__D: TyDecoder> Decodable<__D> for MirPhase

impl<__D: TyDecoder> Decodable<__D> for MutBorrowKind

impl<__D: TyDecoder> Decodable<__D> for RawPtrKind

impl<__D: TyDecoder> Decodable<__D> for RetagKind

impl<__D: TyDecoder> Decodable<__D> for RuntimePhase

impl<__D: TyDecoder> Decodable<__D> for UnOp

impl<__D: TyDecoder> Decodable<__D> for UnwindAction

impl<__D: TyDecoder> Decodable<__D> for InitMaskBlocks

impl<__D: TyDecoder> Decodable<__D> for ErrorHandled

impl<__D: TyDecoder> Decodable<__D> for Linkage

impl<__D: TyDecoder> Decodable<__D> for IsConstable

impl<__D: TyDecoder> Decodable<__D> for OverlapMode

impl<__D: TyDecoder> Decodable<__D> for CastKind

impl<__D: TyDecoder> Decodable<__D> for Adjust

impl<__D: TyDecoder> Decodable<__D> for AllowTwoPhase

impl<__D: TyDecoder> Decodable<__D> for AutoBorrow

impl<__D: TyDecoder> Decodable<__D> for PointerCoercion

impl<__D: TyDecoder> Decodable<__D> for CastKind

impl<__D: TyDecoder> Decodable<__D> for AdtKind

impl<__D: TyDecoder> Decodable<__D> for Asyncness

impl<__D: TyDecoder> Decodable<__D> for BorrowKind

impl<__D: TyDecoder> Decodable<__D> for BoundRegionKind

impl<__D: TyDecoder> Decodable<__D> for BoundTyKind

impl<__D: TyDecoder> Decodable<__D> for ExprKind

impl<__D: TyDecoder> Decodable<__D> for ReifyReason

impl<__D: TyDecoder> Decodable<__D> for UpvarCapture

impl<__D: TyDecoder> Decodable<__D> for VariantDiscr

impl<__D: TyDecoder> Decodable<__D> for ModChild

impl<__D: TyDecoder> Decodable<__D> for CodegenFnAttrs

impl<__D: TyDecoder> Decodable<__D> for TargetFeature

impl<__D: TyDecoder> Decodable<__D> for Scope

impl<__D: TyDecoder> Decodable<__D> for BranchSpan

impl<__D: TyDecoder> Decodable<__D> for ConditionInfo

impl<__D: TyDecoder> Decodable<__D> for CoverageIdsInfo

impl<__D: TyDecoder> Decodable<__D> for CoverageInfoHi

impl<__D: TyDecoder> Decodable<__D> for DecisionInfo

impl<__D: TyDecoder> Decodable<__D> for Expression

impl<__D: TyDecoder> Decodable<__D> for MCDCBranchSpan

impl<__D: TyDecoder> Decodable<__D> for Mapping

impl<__D: TyDecoder> Decodable<__D> for InitMask

impl<__D: TyDecoder> Decodable<__D> for BlockTailInfo

impl<__D: TyDecoder> Decodable<__D> for ConstQualifs

impl<__D: TyDecoder> Decodable<__D> for SourceInfo

impl<__D: TyDecoder> Decodable<__D> for SwitchTargets

impl<__D: TyDecoder> Decodable<__D> for Children

impl<__D: TyDecoder> Decodable<__D> for Graph

impl<__D: TyDecoder> Decodable<__D> for OverloadedDeref

impl<__D: TyDecoder> Decodable<__D> for AdtDefData

impl<__D: TyDecoder> Decodable<__D> for AdtFlags

impl<__D: TyDecoder> Decodable<__D> for BoundRegion

impl<__D: TyDecoder> Decodable<__D> for BoundTy

impl<__D: TyDecoder> Decodable<__D> for CaptureInfo

impl<__D: TyDecoder> Decodable<__D> for FieldDef

impl<__D: TyDecoder> Decodable<__D> for GenericParamDef

impl<__D: TyDecoder> Decodable<__D> for Generics

impl<__D: TyDecoder> Decodable<__D> for LateParamRegion

impl<__D: TyDecoder> Decodable<__D> for ParamConst

impl<__D: TyDecoder> Decodable<__D> for ParamTy

impl<__D: TyDecoder> Decodable<__D> for RvalueScopes

impl<__D: TyDecoder> Decodable<__D> for UpvarId

impl<__D: TyDecoder> Decodable<__D> for UpvarPath

impl<__D: TyDecoder> Decodable<__D> for VariantDef

impl<__D: TyDecoder> Decodable<__D> for VariantFlags

impl<__D: SpanDecoder> Decodable<__D> for Linkage

impl<__D: SpanDecoder> Decodable<__D> for WellFormedLoc

impl<__D: SpanDecoder> Decodable<__D> for AssocKind

impl<__D: SpanDecoder> Decodable<__D> for ModuleItems

impl<__D: SpanDecoder> Decodable<__D> for Footer

impl<__D: SpanDecoder> Decodable<__D> for AssocItem

impl<__D: SpanDecoder> Decodable<__D> for Destructor

impl<__D: SpanDecoder> Decodable<__D> for IntrinsicDef

impl<__D: SpanDecoder> Decodable<__D> for TraitDef

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for NestedGoals<I>
where Vec<Goal<I, NormalizesTo<I>>>: Decodable<__D>, Vec<(GoalSource, Goal<I, I::Predicate>)>: Decodable<__D>,

impl<__D: SpanDecoder> Decodable<__D> for WorkProductId

impl<__D: SpanDecoder> Decodable<__D> for WorkProduct

impl<__D: SpanDecoder> Decodable<__D> for CrateType

impl<__D: SpanDecoder> Decodable<__D> for OomStrategy

impl<__D: SpanDecoder> Decodable<__D> for OutFileName

impl<__D: SpanDecoder> Decodable<__D> for OutputType

impl<__D: SpanDecoder> Decodable<__D> for CrateDepKind

impl<__D: SpanDecoder> Decodable<__D> for PathKind

impl<__D: SpanDecoder> Decodable<__D> for NativeLibKind

impl<__D: SpanDecoder> Decodable<__D> for OutputTypes

impl<__D: SpanDecoder> Decodable<__D> for CrateSource

impl<__D: SpanDecoder> Decodable<__D> for DllImport

impl<__D: SpanDecoder> Decodable<__D> for ForeignModule

impl<__D: SpanDecoder> Decodable<__D> for NativeLib

impl<__D: SpanDecoder> Decodable<__D> for NativeLib

impl<D: Decoder> Decodable<D> for BytePos

impl<D: SpanDecoder> Decodable<D> for DefId

impl<D: SpanDecoder> Decodable<D> for ExpnId

impl<D: SpanDecoder> Decodable<D> for AttrId

impl<D: SpanDecoder> Decodable<D> for Span

impl<D: SpanDecoder> Decodable<D> for Symbol

impl<T, __D: SpanDecoder> Decodable<__D> for Spanned<T>
where T: Decodable<__D>,

impl<__D: SpanDecoder> Decodable<__D> for Edition

impl<__D: SpanDecoder> Decodable<__D> for FileName

impl<__D: SpanDecoder> Decodable<__D> for RealFileName

impl<__D: SpanDecoder> Decodable<__D> for AstPass

impl<__D: SpanDecoder> Decodable<__D> for ExpnKind

impl<__D: SpanDecoder> Decodable<__D> for MacroKind

impl<__D: SpanDecoder> Decodable<__D> for Transparency

impl<__D: SpanDecoder> Decodable<__D> for DefPathHash

impl<__D: SpanDecoder> Decodable<__D> for LocalModDefId

impl<__D: SpanDecoder> Decodable<__D> for ModDefId

impl<__D: SpanDecoder> Decodable<__D> for StableCrateId

impl<__D: SpanDecoder> Decodable<__D> for ExpnData

impl<__D: SpanDecoder> Decodable<__D> for ExpnHash

impl<__D: SpanDecoder> Decodable<__D> for MultiByteChar

impl<__D: SpanDecoder> Decodable<__D> for NormalizedPos

impl<__D: SpanDecoder> Decodable<__D> for Ident

impl<D: Decoder> Decodable<D> for TargetTuple

impl<__D: SpanDecoder> Decodable<__D> for InlineAsmArch

impl<__D: SpanDecoder> Decodable<__D> for InlineAsmReg

impl<__D: SpanDecoder> Decodable<__D> for OnBrokenPipe

impl<__D: SpanDecoder> Decodable<__D> for PanicStrategy

impl<__D: SpanDecoder> Decodable<__D> for SanitizerSet

impl<D: Decoder> Decodable<D> for BoundVar

impl<D: Decoder> Decodable<D> for ConstVid

impl<D: Decoder> Decodable<D> for FloatVid

impl<D: Decoder> Decodable<D> for IntVid

impl<D: Decoder> Decodable<D> for RegionVid

impl<D: Decoder> Decodable<D> for TyVid

impl<DefId, __D: TyDecoder> Decodable<__D> for SimplifiedType<DefId>
where DefId: Decodable<__D>,

impl<I: Interner, A, __D: TyDecoder<I = I>> Decodable<__D> for OutlivesPredicate<I, A>
where A: Decodable<__D>, I::Region: Decodable<__D>,

impl<I: Interner, D: TyDecoder<I = I>> Decodable<D> for Binder<I, FnSig<I>>

impl<I: Interner, D: TyDecoder<I = I>> Decodable<D> for Binder<I, FnSigTys<I>>

impl<I: Interner, D: TyDecoder<I = I>> Decodable<D> for Binder<I, TraitRef<I>>

impl<I: Interner, D: TyDecoder<I = I>> Decodable<D> for UnsafeBinderInner<I>
where I::Ty: TypeVisitable<I> + Decodable<D>, I::BoundVarKinds: Decodable<D>,

impl<I: Interner, P, __D: TyDecoder<I = I>> Decodable<__D> for Goal<I, P>
where I::ParamEnv: Decodable<__D>, P: Decodable<__D>,

impl<I: Interner, P, __D: TyDecoder<I = I>> Decodable<__D> for QueryInput<I, P>
where Goal<I, P>: Decodable<__D>, I::PredefinedOpaques: Decodable<__D>,

impl<I: Interner, T, __D: TyDecoder<I = I>> Decodable<__D> for EarlyBinder<I, T>
where T: Decodable<__D>, PhantomData<I>: Decodable<__D>,

impl<I: Interner, V, __D: TyDecoder<I = I>> Decodable<__D> for Canonical<I, V>
where V: Decodable<__D>, I::CanonicalVars: Decodable<__D>,

impl<I: Interner, V, __D: TyDecoder<I = I>> Decodable<__D> for CanonicalQueryInput<I, V>
where Canonical<I, V>: Decodable<__D>, TypingMode<I>: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for CanonicalVarKind<I>

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for ClauseKind<I>

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for ConstKind<I>

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for GenericArgKind<I>
where I::Region: Decodable<__D>, I::Ty: Decodable<__D>, I::Const: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for PredicateKind<I>
where ClauseKind<I>: Decodable<__D>, I::DefId: Decodable<__D>, SubtypePredicate<I>: Decodable<__D>, CoercePredicate<I>: Decodable<__D>, I::Const: Decodable<__D>, NormalizesTo<I>: Decodable<__D>, I::Term: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for TermKind<I>
where I::Ty: Decodable<__D>, I::Const: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for TyKind<I>
where I::AdtDef: Decodable<__D>, I::GenericArgs: Decodable<__D>, I::DefId: Decodable<__D>, I::Ty: Decodable<__D>, I::Const: Decodable<__D>, I::Pat: Decodable<__D>, I::Region: Decodable<__D>, Binder<I, FnSigTys<I>>: Decodable<__D>, FnHeader<I>: Decodable<__D>, UnsafeBinderInner<I>: Decodable<__D>, I::BoundExistentialPredicates: Decodable<__D>, I::Tys: Decodable<__D>, AliasTy<I>: Decodable<__D>, I::ParamTy: Decodable<__D>, I::BoundTy: Decodable<__D>, I::PlaceholderTy: Decodable<__D>, I::ErrorGuaranteed: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for TypingMode<I>

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for PredefinedOpaquesData<I>
where Vec<(OpaqueTypeKey<I>, I::Ty)>: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for AliasTerm<I>
where I::GenericArgs: Decodable<__D>, I::DefId: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for AliasTy<I>
where I::GenericArgs: Decodable<__D>, I::DefId: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for CanonicalVarInfo<I>
where CanonicalVarKind<I>: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for CanonicalVarValues<I>
where I::GenericArgs: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for CoercePredicate<I>
where I::Ty: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for ExistentialProjection<I>
where I::DefId: Decodable<__D>, I::GenericArgs: Decodable<__D>, I::Term: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for ExistentialTraitRef<I>
where I::DefId: Decodable<__D>, I::GenericArgs: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for FnHeader<I>
where I::Safety: Decodable<__D>, I::Abi: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for FnSig<I>
where I::Tys: Decodable<__D>, I::Safety: Decodable<__D>, I::Abi: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for FnSigTys<I>
where I::Tys: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for HostEffectPredicate<I>
where TraitRef<I>: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for NormalizesTo<I>
where AliasTerm<I>: Decodable<__D>, I::Term: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for OpaqueTypeKey<I>
where I::LocalDefId: Decodable<__D>, I::GenericArgs: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for ProjectionPredicate<I>
where AliasTerm<I>: Decodable<__D>, I::Term: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for SubtypePredicate<I>
where I::Ty: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for TraitPredicate<I>
where TraitRef<I>: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for TraitRef<I>
where I::DefId: Decodable<__D>, I::GenericArgs: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for TypeAndMut<I>
where I::Ty: Decodable<__D>,

impl<I: Interner, __D: TyDecoder<I = I>> Decodable<__D> for UnevaluatedConst<I>
where I::DefId: Decodable<__D>, I::GenericArgs: Decodable<__D>,

impl<__D: SpanDecoder> Decodable<__D> for AliasTermKind

impl<__D: SpanDecoder> Decodable<__D> for AliasTyKind

impl<__D: SpanDecoder> Decodable<__D> for ClosureKind

impl<__D: SpanDecoder> Decodable<__D> for DynKind

impl<__D: SpanDecoder> Decodable<__D> for FloatTy

impl<__D: SpanDecoder> Decodable<__D> for InferTy

impl<__D: SpanDecoder> Decodable<__D> for IntTy

impl<__D: SpanDecoder> Decodable<__D> for UintTy

impl<__D: SpanDecoder> Decodable<__D> for Variance

impl<__D: TyDecoder> Decodable<__D> for BoundConstness

impl<__D: TyDecoder> Decodable<__D> for ImplPolarity

impl<__D: TyDecoder> Decodable<__D> for InferConst

impl<__D: SpanDecoder> Decodable<__D> for CallData

impl<__D: SpanDecoder> Decodable<__D> for CallLocation

impl<__D: SpanDecoder> Decodable<__D> for SyntaxRange