Function rustc::middle::trans::adt::type_of[src]

pub fn type_of(cx: &CrateContext, r: &Repr) -> Type

LLVM-level types are a little complicated.

C-like enums need to be actual ints, not wrapped in a struct, because that changes the ABI on some platforms (see issue #10308).

For nominal types, in some cases, we need to use LLVM named structs and fill in the actual contents in a second pass to prevent unbounded recursion; see also the comments in trans::type_of.