[−][src]Enum rustc::ty::TyKind
🔬 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?
NB: If you change this, you'll probably want to change the corresponding AST structure in libsyntax/ast.rs as well.
Variants
Bool🔬 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?
The primitive boolean type. Written as bool.
Char🔬 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?
The primitive character type; holds a Unicode scalar value
(a non-surrogate code point). Written as char.
Int(IntTy)🔬 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 primitive signed integer type. For example, i32.
Uint(UintTy)🔬 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 primitive unsigned integer type. For example, u32.
Float(FloatTy)🔬 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 primitive floating-point type. For example, f64.
Adt(&'tcx AdtDef, &'tcx Substs<'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?
Structures, enumerations and unions.
Substs here, possibly against intuition, may contain Params.
That is, even after substitution it is possible that there are type
variables. This happens when the Adt corresponds to an ADT
definition and not a concrete use of it.
Foreign(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?
Str🔬 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?
The pointee of a string slice. Written as str.
Array(Ty<'tcx>, &'tcx Const<'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?
An array with the given length. Written as [T; n].
Slice(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?
The pointee of an array slice. Written as [T].
RawPtr(TypeAndMut<'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 raw pointer. Written as *mut T or *const T
Ref(Region<'tcx>, Ty<'tcx>, Mutability)🔬 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 reference; a pointer with an associated lifetime. Written as
&'a mut T or &'a T.
FnDef(DefId, &'tcx Substs<'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?
The anonymous type of a function declaration/definition. Each function has a unique type.
FnPtr(PolyFnSig<'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 pointer to a function. Written as fn() -> i32.
Dynamic(Binder<&'tcx List<ExistentialPredicate<'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 trait, defined with trait.
Closure(DefId, ClosureSubsts<'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?
The anonymous type of a closure. Used to represent the type of
|a| a.
Generator(DefId, GeneratorSubsts<'tcx>, GeneratorMovability)🔬 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?
The anonymous type of a generator. Used to represent the type of
|a| yield a.
GeneratorWitness(Binder<&'tcx List<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 representin the types stored inside a generator. This should only appear in GeneratorInteriors.
Never🔬 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?
The never type !
Tuple(&'tcx List<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 tuple type. For example, (i32, bool).
Projection(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?
The projection of an associated type. For example,
<T as Trait<..>>::N.
Opaque(DefId, &'tcx Substs<'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?
Opaque (impl Trait) type found in a return type.
The DefId comes either from
- the
impl Traitast::Ty node, - or the
existential typedeclaration The substitutions are for the generics of the function in question. After typeck, the concrete type can be found in thetypesmap.
Param(ParamTy)🔬 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 parameter; for example, T in `fn f
Infer(InferTy)🔬 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 variable used during type-checking.
Error🔬 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 placeholder for a type which could not be computed; this is propagated to avoid useless error messages.
Trait Implementations
impl<'a, 'gcx> HashStable<StableHashingContext<'a>> for TyKind<'gcx>[src]
impl<'a, 'gcx> HashStable<StableHashingContext<'a>> for TyKind<'gcx>fn hash_stable<W: StableHasherResult>(
&self,
hcx: &mut StableHashingContext<'a>,
hasher: &mut StableHasher<W>
)[src]
fn hash_stable<W: StableHasherResult>(
&self,
hcx: &mut StableHashingContext<'a>,
hasher: &mut StableHasher<W>
)🔬 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: 'lcx, 'lcx> Borrow<TyKind<'lcx>> for Interned<'tcx, TyS<'tcx>>[src]
impl<'tcx: 'lcx, 'lcx> Borrow<TyKind<'lcx>> for Interned<'tcx, TyS<'tcx>>impl<'tcx> Clone for TyKind<'tcx>[src]
impl<'tcx> Clone for TyKind<'tcx>fn clone(&self) -> TyKind<'tcx>[src]
fn clone(&self) -> TyKind<'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> PartialEq for TyKind<'tcx>[src]
impl<'tcx> PartialEq for TyKind<'tcx>fn eq(&self, other: &TyKind<'tcx>) -> bool[src]
fn eq(&self, other: &TyKind<'tcx>) -> boolThis method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, other: &TyKind<'tcx>) -> bool[src]
fn ne(&self, other: &TyKind<'tcx>) -> boolThis method tests for !=.
impl<'tcx> Eq for TyKind<'tcx>[src]
impl<'tcx> Eq for TyKind<'tcx>fn assert_receiver_is_total_eq(&self)[src]
fn assert_receiver_is_total_eq(&self)impl<'tcx> PartialOrd for TyKind<'tcx>[src]
impl<'tcx> PartialOrd for TyKind<'tcx>fn partial_cmp(&self, other: &TyKind<'tcx>) -> Option<Ordering>[src]
fn partial_cmp(&self, other: &TyKind<'tcx>) -> Option<Ordering>This method returns an ordering between self and other values if one exists. Read more
fn lt(&self, other: &TyKind<'tcx>) -> bool[src]
fn lt(&self, other: &TyKind<'tcx>) -> boolThis method tests less than (for self and other) and is used by the < operator. Read more
fn le(&self, other: &TyKind<'tcx>) -> bool[src]
fn le(&self, other: &TyKind<'tcx>) -> boolThis method tests less than or equal to (for self and other) and is used by the <= operator. Read more
fn gt(&self, other: &TyKind<'tcx>) -> bool[src]
fn gt(&self, other: &TyKind<'tcx>) -> boolThis method tests greater than (for self and other) and is used by the > operator. Read more
fn ge(&self, other: &TyKind<'tcx>) -> bool[src]
fn ge(&self, other: &TyKind<'tcx>) -> boolThis method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
impl<'tcx> Ord for TyKind<'tcx>[src]
impl<'tcx> Ord for TyKind<'tcx>fn cmp(&self, other: &TyKind<'tcx>) -> Ordering[src]
fn cmp(&self, other: &TyKind<'tcx>) -> OrderingThis method returns an Ordering between self and other. Read more
fn max(self, other: Self) -> Self1.21.0[src]
fn max(self, other: Self) -> SelfCompares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self1.21.0[src]
fn min(self, other: Self) -> SelfCompares and returns the minimum of two values. Read more
impl<'tcx> Hash for TyKind<'tcx>[src]
impl<'tcx> Hash for TyKind<'tcx>fn hash<__H: Hasher>(&self, state: &mut __H)[src]
fn hash<__H: Hasher>(&self, state: &mut __H)Feeds this value into the given [Hasher]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, 1.3.0[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, Feeds a slice of this type into the given [Hasher]. Read more
impl<'tcx> Debug for TyKind<'tcx>[src]
impl<'tcx> Debug for TyKind<'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> Encodable for TyKind<'tcx>[src]
impl<'tcx> Encodable for TyKind<'tcx>fn encode<__S: Encoder>(&self, s: &mut __S) -> Result<(), __S::Error>[src]
fn encode<__S: Encoder>(&self, s: &mut __S) -> Result<(), __S::Error>🔬 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> Decodable for TyKind<'tcx>[src]
impl<'tcx> Decodable for TyKind<'tcx>fn decode<__D: Decoder>(d: &mut __D) -> Result<TyKind<'tcx>, __D::Error>[src]
fn decode<__D: Decoder>(d: &mut __D) -> Result<TyKind<'tcx>, __D::Error>🔬 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> Print for TyKind<'tcx>[src]
impl<'tcx> Print for TyKind<'tcx>fn print<F: Write>(&self, f: &mut F, cx: &mut PrintContext) -> Result[src]
fn print<F: Write>(&self, f: &mut F, cx: &mut PrintContext) -> Result🔬 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 print_to_string(&self, cx: &mut PrintContext) -> String[src]
fn print_to_string(&self, cx: &mut PrintContext) -> String🔬 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 print_display<F: Write>(&self, f: &mut F, cx: &mut PrintContext) -> Result[src]
fn print_display<F: Write>(&self, f: &mut F, cx: &mut PrintContext) -> Result🔬 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 print_display_to_string(&self, cx: &mut PrintContext) -> String[src]
fn print_display_to_string(&self, cx: &mut PrintContext) -> String🔬 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 print_debug<F: Write>(&self, f: &mut F, cx: &mut PrintContext) -> Result[src]
fn print_debug<F: Write>(&self, f: &mut F, cx: &mut PrintContext) -> Result🔬 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 print_debug_to_string(&self, cx: &mut PrintContext) -> String[src]
fn print_debug_to_string(&self, cx: &mut PrintContext) -> String🔬 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> Display for TyKind<'tcx>[src]
impl<'tcx> Display for TyKind<'tcx>Auto Trait Implementations
Blanket Implementations
impl<T> MaybeResult for T[src]
impl<T> MaybeResult for Tfn from_ok(T) -> T[src]
fn from_ok(T) -> T🔬 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 map_same<F>(Self, F) -> T where
F: FnOnce(T) -> T, [src]
fn map_same<F>(Self, F) -> T where
F: FnOnce(T) -> T, 🔬 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<'a, T> Captures for T where
T: ?Sized, [src]
impl<'a, T> Captures for T where
T: ?Sized, impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, type Owned = T
fn to_owned(&self) -> T[src]
fn to_owned(&self) -> TCreates owned data from borrowed data, usually by cloning. Read more
fn clone_into(&self, target: &mut T)[src]
fn clone_into(&self, target: &mut T)🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> From for T[src]
impl<T> From for Timpl<T> ToString for T where
T: Display + ?Sized, [src]
impl<T> ToString for T where
T: Display + ?Sized, impl<T, U> Into for T where
U: From<T>, [src]
impl<T, U> Into for T where
U: From<T>, impl<T, U> TryFrom for T where
T: From<U>, [src]
impl<T, U> TryFrom for T where
T: From<U>, type Error = !
try_from)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>try_from)Performs the conversion.
impl<T> Borrow for T where
T: ?Sized, [src]
impl<T> Borrow for T where
T: ?Sized, ⓘImportant traits for &'a mut Rfn borrow(&self) -> &T[src]
fn borrow(&self) -> &TImmutably borrows from an owned value. Read more
impl<T, U> TryInto for T where
U: TryFrom<T>, [src]
impl<T, U> TryInto for T where
U: TryFrom<T>, type Error = <U as TryFrom<T>>::Error
try_from)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>try_from)Performs the conversion.
impl<T> BorrowMut for T where
T: ?Sized, [src]
impl<T> BorrowMut for T where
T: ?Sized, ⓘImportant traits for &'a mut Rfn borrow_mut(&mut self) -> &mut T[src]
fn borrow_mut(&mut self) -> &mut TMutably borrows from an owned value. Read more
impl<T> Any for T where
T: 'static + ?Sized, [src]
impl<T> Any for T where
T: 'static + ?Sized, fn get_type_id(&self) -> TypeId[src]
fn get_type_id(&self) -> TypeId🔬 This is a nightly-only experimental API. (get_type_id)
this method will likely be replaced by an associated static
Gets the TypeId of self. Read more
impl<T> Encodable for T where
T: UseSpecializedEncodable + ?Sized, [src]
impl<T> Encodable for T where
T: UseSpecializedEncodable + ?Sized, fn encode<E>(&self, e: &mut E) -> Result<(), <E as Encoder>::Error> where
E: Encoder, [src]
fn encode<E>(&self, e: &mut E) -> Result<(), <E as Encoder>::Error> where
E: Encoder, 🔬 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<T> Decodable for T where
T: UseSpecializedDecodable, [src]
impl<T> Decodable for T where
T: UseSpecializedDecodable, fn decode<D>(d: &mut D) -> Result<T, <D as Decoder>::Error> where
D: Decoder, [src]
fn decode<D>(d: &mut D) -> Result<T, <D as Decoder>::Error> where
D: Decoder, 🔬 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<E> SpecializationError for E[src]
impl<E> SpecializationError for Efn not_found<S, T>(trait_name: &'static str, method_name: &'static str) -> E where
T: ?Sized, [src]
fn not_found<S, T>(trait_name: &'static str, method_name: &'static str) -> E where
T: ?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?
Create an error for a missing method specialization. Defaults to panicking with type, trait & method names. S is the encoder/decoder state type, T is the type being encoded/decoded, and the arguments are the names of the trait and method that should've been overridden. Read more
impl<T> Erased for T[src]
impl<T> Erased for Timpl<T> Send for T where
T: ?Sized, [src]
impl<T> Send for T where
T: ?Sized, impl<T> Sync for T where
T: ?Sized, [src]
impl<T> Sync for T where
T: ?Sized, impl<T> Erased for T
impl<T> Erased for T