1
Fork 0

rustc: make comments on CrateContext doc comments

This commit is contained in:
Corey Richardson 2014-04-01 07:11:23 -04:00
parent b8ef9fd9c9
commit 3b4a5174c0

View file

@ -51,45 +51,45 @@ pub struct CrateContext {
pub link_meta: LinkMeta, pub link_meta: LinkMeta,
pub drop_glues: RefCell<HashMap<ty::t, ValueRef>>, pub drop_glues: RefCell<HashMap<ty::t, ValueRef>>,
pub tydescs: RefCell<HashMap<ty::t, @tydesc_info>>, pub tydescs: RefCell<HashMap<ty::t, @tydesc_info>>,
// Set when running emit_tydescs to enforce that no more tydescs are /// Set when running emit_tydescs to enforce that no more tydescs are
// created. /// created.
pub finished_tydescs: Cell<bool>, pub finished_tydescs: Cell<bool>,
// Track mapping of external ids to local items imported for inlining /// Track mapping of external ids to local items imported for inlining
pub external: RefCell<DefIdMap<Option<ast::NodeId>>>, pub external: RefCell<DefIdMap<Option<ast::NodeId>>>,
// Backwards version of the `external` map (inlined items to where they /// Backwards version of the `external` map (inlined items to where they
// came from) /// came from)
pub external_srcs: RefCell<NodeMap<ast::DefId>>, pub external_srcs: RefCell<NodeMap<ast::DefId>>,
// A set of static items which cannot be inlined into other crates. This /// A set of static items which cannot be inlined into other crates. This
// will pevent in IIItem() structures from being encoded into the metadata /// will pevent in IIItem() structures from being encoded into the metadata
// that is generated /// that is generated
pub non_inlineable_statics: RefCell<NodeSet>, pub non_inlineable_statics: RefCell<NodeSet>,
// Cache instances of monomorphized functions /// Cache instances of monomorphized functions
pub monomorphized: RefCell<HashMap<mono_id, ValueRef>>, pub monomorphized: RefCell<HashMap<mono_id, ValueRef>>,
pub monomorphizing: RefCell<DefIdMap<uint>>, pub monomorphizing: RefCell<DefIdMap<uint>>,
// Cache generated vtables /// Cache generated vtables
pub vtables: RefCell<HashMap<(ty::t, mono_id), ValueRef>>, pub vtables: RefCell<HashMap<(ty::t, mono_id), ValueRef>>,
// Cache of constant strings, /// Cache of constant strings,
pub const_cstr_cache: RefCell<HashMap<InternedString, ValueRef>>, pub const_cstr_cache: RefCell<HashMap<InternedString, ValueRef>>,
// Reverse-direction for const ptrs cast from globals. /// Reverse-direction for const ptrs cast from globals.
// Key is an int, cast from a ValueRef holding a *T, /// Key is an int, cast from a ValueRef holding a *T,
// Val is a ValueRef holding a *[T]. /// Val is a ValueRef holding a *[T].
// ///
// Needed because LLVM loses pointer->pointee association /// Needed because LLVM loses pointer->pointee association
// when we ptrcast, and we have to ptrcast during translation /// when we ptrcast, and we have to ptrcast during translation
// of a [T] const because we form a slice, a [*T,int] pair, not /// of a [T] const because we form a slice, a [*T,int] pair, not
// a pointer to an LLVM array type. /// a pointer to an LLVM array type.
pub const_globals: RefCell<HashMap<int, ValueRef>>, pub const_globals: RefCell<HashMap<int, ValueRef>>,
// Cache of emitted const values /// Cache of emitted const values
pub const_values: RefCell<NodeMap<ValueRef>>, pub const_values: RefCell<NodeMap<ValueRef>>,
// Cache of external const values /// Cache of external const values
pub extern_const_values: RefCell<DefIdMap<ValueRef>>, pub extern_const_values: RefCell<DefIdMap<ValueRef>>,
pub impl_method_cache: RefCell<HashMap<(ast::DefId, ast::Name), ast::DefId>>, pub impl_method_cache: RefCell<HashMap<(ast::DefId, ast::Name), ast::DefId>>,
// Cache of closure wrappers for bare fn's. /// Cache of closure wrappers for bare fn's.
pub closure_bare_wrapper_cache: RefCell<HashMap<ValueRef, ValueRef>>, pub closure_bare_wrapper_cache: RefCell<HashMap<ValueRef, ValueRef>>,
pub lltypes: RefCell<HashMap<ty::t, Type>>, pub lltypes: RefCell<HashMap<ty::t, Type>>,
@ -104,9 +104,9 @@ pub struct CrateContext {
pub int_type: Type, pub int_type: Type,
pub opaque_vec_type: Type, pub opaque_vec_type: Type,
pub builder: BuilderRef_res, pub builder: BuilderRef_res,
// Set when at least one function uses GC. Needed so that /// Set when at least one function uses GC. Needed so that
// decl_gc_metadata knows whether to link to the module metadata, which /// decl_gc_metadata knows whether to link to the module metadata, which
// is not emitted by LLVM's GC pass when no functions use GC. /// is not emitted by LLVM's GC pass when no functions use GC.
pub uses_gc: bool, pub uses_gc: bool,
pub dbg_cx: Option<debuginfo::CrateDebugContext>, pub dbg_cx: Option<debuginfo::CrateDebugContext>,
} }