Module rustc::ty::util[][src]

🔬 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?

misc. type-system utilities too small to deserve their own file

Re-exports

use hir::def::Def;
use hir::def_id::DefId;
use hir::map::DefPathData;
use hir::map::Node;
use hir;
use ich::NodeIdHashingMode;
use middle::const_val::ConstVal;
use traits;
use ty;
use ty::Ty;
use ty::TyCtxt;
use ty::TypeFoldable;
use ty::fold::TypeVisitor;
use ty::subst::UnpackedKind;
use ty::maps::TyCtxtAt;
use ty::TypeVariants::*;
use ty::layout::Integer;
use ty::layout::IntegerExt;
use util::common::ErrorReported;
use middle::lang_items;
use mir::interpret::Value;
use mir::interpret::PrimVal;
use rustc_data_structures::stable_hasher::StableHasher;
use rustc_data_structures::stable_hasher::StableHasherResult;
use rustc_data_structures::stable_hasher::HashStable;
use rustc_data_structures::fx::FxHashMap;
use std::cmp;
use std::fmt;
use std::hash::Hash;
use std::intrinsics;
use syntax::ast;
use syntax::attr;
use syntax::attr::SignedInt;
use syntax::attr::UnsignedInt;
use syntax_pos::Span;
use syntax_pos::DUMMY_SP;

Structs

Discr [
Experimental
]
TypeIdHasher [
Experimental
]

Enums

CopyImplementationError [
Experimental
]
ExplicitSelf [
Experimental
]
Representability [
Experimental
]

Describes whether a type is representable. For types that are not representable, 'SelfRecursive' and 'ContainsRecursive' are used to distinguish between types that are recursive with themselves and types that contain a different recursive type. These cases can therefore be treated differently when reporting errors.

Traits

IntTypeExt [
Experimental
]

Functions

is_copy_raw [
Experimental
]
is_freeze_raw [
Experimental
]
is_sized_raw [
Experimental
]
needs_drop_raw [
Experimental
]
provide [
Experimental
]