Module rustc_codegen_llvm::debuginfo::metadata[][src]

Modules

Macros

Returns from the enclosing function if the type metadata with the given unique ID can be found in the type map.

Structs

Describes the members of an enum value; an enum is described as a union of structs in DWARF. This MemberDescriptionFactory provides the description for the members of this union; so for every variant of the given enum, this factory will produce one MemberDescription (all with no name and a fixed offset of zero bytes).

Description of a type member, which can either be a regular field (as in structs or tuples) or an enum variant.

Creates MemberDescriptions for the fields of a struct.

Creates MemberDescriptions for the fields of a tuple.

The TypeMap is where the CrateDebugContext holds the type metadata nodes created so far. The metadata nodes are indexed by UniqueTypeId, and, for faster lookup, also by Ty. The TypeMap is responsible for creating UniqueTypeIds.

Enums

A factory for MemberDescriptions. It produces a list of member descriptions for some record-like type. MemberDescriptionFactorys are used to defer the creation of type member descriptions in order to break cycles arising from recursive type definitions.

A description of some recursive type. It can either be already finished (as with FinalMetadata) or it is not yet finished, but contains all information needed to generate the missing parts of the description. See the documentation section on Recursive Types at the top of this file for more information.

Constants

Traits

Functions

Returns names of captured upvars for closures and generators.

Creates debug information for a composite type, that is, anything that results in a LLVM struct.

Computes the type parameters for a type, if any, for the given metadata.

Creates debug information for the given global variable.

A convenience wrapper around LLVMRustDIBuilderCreateStructType(). Does not do any caching, does not add any fields to the struct. This can be done later with set_members_of_composite_type().

Creates debug information for the given vtable, which is for the given type.

Returns a tuple of (1) type_metadata_stub of the variant, (2) a MemberDescriptionFactory for producing the descriptions of the fields of the variant. This is a rudimentary version of a full RecursiveTypeDescription.

Creates an “extension” of an existing DIScope into another file.

DWARF variant support is only available starting in LLVM 8, but on MSVC we have to use the fallback mode, because LLVM doesn’t lower variant parts to PDB.

Generates LLVM debuginfo for a vtable.