1
Fork 0

move LOCAL_CRATE to cstore

This commit is contained in:
Niko Matsakis 2015-09-01 12:35:05 -04:00
parent 8719f504ee
commit dc4a4ada58
28 changed files with 56 additions and 29 deletions

View file

@ -109,6 +109,10 @@ pub struct CStore {
pub intr: Rc<IdentInterner>,
}
/// Item definitions in the currently-compiled crate would have the CrateNum
/// LOCAL_CRATE in their DefId.
pub const LOCAL_CRATE: ast::CrateNum = 0;
impl CStore {
pub fn new(intr: Rc<IdentInterner>) -> CStore {
CStore {

View file

@ -20,6 +20,7 @@ use rustc_front::hir;
use back::svh::Svh;
use metadata::cstore::crate_metadata;
use metadata::cstore::LOCAL_CRATE;
use metadata::common::*;
use metadata::csearch::MethodInfo;
use metadata::csearch;
@ -29,7 +30,7 @@ use metadata::index;
use metadata::inline::InlinedItem;
use metadata::tydecode::TyDecoder;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::lang_items;
use middle::subst;
use middle::ty::{ImplContainer, TraitContainer};

View file

@ -17,12 +17,13 @@ use back::svh::Svh;
use session::config;
use metadata::common::*;
use metadata::cstore;
use metadata::cstore::LOCAL_CRATE;
use metadata::decoder;
use metadata::tyencode;
use metadata::index::{self, IndexEntry};
use metadata::inline::InlinedItemRef;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::dependency_format::Linkage;
use middle::stability;
use middle::ty::{self, Ty};

View file

@ -19,6 +19,7 @@ use rustc_front::fold::Folder;
use metadata::common as c;
use metadata::cstore as cstore;
use metadata::cstore::LOCAL_CRATE;
use session::Session;
use metadata::decoder;
use metadata::encoder as e;
@ -31,7 +32,7 @@ use middle::ty::adjustment;
use middle::ty::cast;
use middle::check_const::ConstQualif;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::privacy::{AllPublic, LastMod};
use middle::region;
use middle::subst;

View file

@ -10,7 +10,8 @@
pub use self::Def::*;
use middle::def_id::{DefId, LOCAL_CRATE};
use metadata::cstore::LOCAL_CRATE;
use middle::def_id::DefId;
use middle::privacy::LastPrivate;
use middle::subst::ParamSpace;
use util::nodemap::NodeMap;

View file

@ -8,6 +8,7 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.
use metadata::cstore::LOCAL_CRATE;
use middle::ty;
use syntax::ast::{CrateNum, NodeId};
use std::fmt;
@ -56,7 +57,3 @@ impl DefId {
}
/// Item definitions in the currently-compiled crate would have the CrateNum
/// LOCAL_CRATE in their DefId.
pub const LOCAL_CRATE: CrateNum = 0;

View file

@ -16,8 +16,9 @@
// reachable as well.
use front::map as ast_map;
use metadata::cstore::LOCAL_CRATE;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::ty;
use middle::privacy;
use session::config;

View file

@ -13,8 +13,9 @@
use session::Session;
use lint;
use metadata::cstore::LOCAL_CRATE;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::ty;
use middle::privacy::PublicItems;
use metadata::csearch;

View file

@ -17,7 +17,8 @@ use super::PredicateObligation;
use super::project;
use super::util;
use middle::def_id::{DefId, LOCAL_CRATE};
use metadata::cstore::LOCAL_CRATE;
use middle::def_id::DefId;
use middle::subst::{Subst, Substs, TypeSpace};
use middle::ty::{self, ToPolyTraitRef, Ty};
use middle::infer::{self, InferCtxt};

View file

@ -37,7 +37,8 @@ use super::{VtableImplData, VtableObjectData, VtableBuiltinData,
use super::object_safety;
use super::util;
use middle::def_id::{DefId, LOCAL_CRATE};
use metadata::cstore::LOCAL_CRATE;
use middle::def_id::DefId;
use middle::infer;
use middle::infer::{InferCtxt, TypeFreshener};
use middle::subst::{Subst, Substs, TypeSpace};

View file

@ -22,9 +22,10 @@ pub use self::LvaluePreference::*;
use front::map as ast_map;
use front::map::LinkedPath;
use metadata::csearch;
use metadata::cstore::LOCAL_CRATE;
use middle;
use middle::def::{self, ExportMap};
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::lang_items::{FnTraitLangItem, FnMutTraitLangItem, FnOnceTraitLangItem};
use middle::subst::{self, ParamSpace, Subst, Substs, VecPerParamSpace};
use middle::traits;

View file

@ -20,7 +20,8 @@ use borrowck::LoanPathKind::{LpVar, LpUpvar, LpDowncast, LpExtend};
use borrowck::LoanPathElem::{LpDeref, LpInterior};
use borrowck::move_data::InvalidMovePathIndex;
use borrowck::move_data::{MoveData, MovePathIndex};
use rustc::middle::def_id::{DefId, LOCAL_CRATE};
use rustc::metadata::cstore::LOCAL_CRATE;
use rustc::middle::def_id::{DefId};
use rustc::middle::ty;
use rustc::middle::mem_categorization as mc;

View file

@ -8,9 +8,10 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.
use metadata::cstore::LOCAL_CRATE;
use middle::ty;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use std::env;
use std::fs::{self, File};

View file

@ -35,9 +35,10 @@ use lint;
use llvm::{BasicBlockRef, Linkage, ValueRef, Vector, get_param};
use llvm;
use metadata::{csearch, encoder, loader};
use metadata::cstore::LOCAL_CRATE;
use middle::astencode;
use middle::cfg;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::lang_items::{LangItem, ExchangeMallocFnLangItem, StartFnLangItem};
use middle::weak_lang_items;
use middle::pat_util::simple_name;

View file

@ -22,8 +22,9 @@ use arena::TypedArena;
use back::link;
use session;
use llvm::{self, ValueRef, get_params};
use metadata::cstore::LOCAL_CRATE;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::infer::normalize_associated_type;
use middle::subst;
use middle::subst::{Substs};

View file

@ -13,6 +13,7 @@ use back::abi;
use llvm;
use llvm::{ConstFCmp, ConstICmp, SetLinkage, SetUnnamedAddr};
use llvm::{InternalLinkage, ValueRef, Bool, True};
use metadata::cstore::LOCAL_CRATE;
use middle::{check_const, def};
use middle::const_eval::{self, ConstVal};
use middle::const_eval::{const_int_checked_neg, const_uint_checked_neg};
@ -25,7 +26,7 @@ use middle::const_eval::{const_int_checked_shl, const_uint_checked_shl};
use middle::const_eval::{const_int_checked_shr, const_uint_checked_shr};
use middle::const_eval::EvalHint::ExprTypeChecked;
use middle::const_eval::eval_const_expr_partial;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use trans::{adt, closure, debuginfo, expr, inline, machine};
use trans::base::{self, push_ctxt};
use trans::common::*;

View file

@ -48,11 +48,12 @@
//! case but `&a` in the second. Basically, defaults that appear inside
//! an rptr (`&r.T`) use the region `r` that appears in the rptr.
use metadata::cstore::LOCAL_CRATE;
use middle::astconv_util::{prim_ty_to_ty, prohibit_type_params, prohibit_projection};
use middle::const_eval::{self, ConstVal};
use middle::const_eval::EvalHint::UncheckedExprHint;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::resolve_lifetime as rl;
use middle::privacy::{AllPublic, LastMod};
use middle::subst::{FnSpace, TypeSpace, SelfSpace, Subst, Substs, ParamSpace};

View file

@ -25,7 +25,8 @@ use super::UnresolvedTypeAction;
use super::write_call;
use CrateCtxt;
use middle::def_id::{DefId, LOCAL_CRATE};
use metadata::cstore::LOCAL_CRATE;
use middle::def_id::DefId;
use middle::infer;
use middle::ty::{self, LvaluePreference, Ty};
use syntax::codemap::Span;

View file

@ -10,7 +10,8 @@
use check::regionck::{self, Rcx};
use middle::def_id::{DefId, LOCAL_CRATE};
use metadata::cstore::LOCAL_CRATE;
use middle::def_id::DefId;
use middle::free_region::FreeRegionMap;
use middle::infer;
use middle::region;

View file

@ -83,9 +83,10 @@ use self::TupleArgumentsFlag::*;
use astconv::{self, ast_region_to_region, ast_ty_to_ty, AstConv, PathParamMode};
use check::_match::pat_ctxt;
use fmt_macros::{Parser, Piece, Position};
use metadata::cstore::LOCAL_CRATE;
use middle::astconv_util::prohibit_type_params;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use middle::infer;
use middle::infer::type_variable;
use middle::pat_util::{self, pat_id_map};

View file

@ -16,7 +16,8 @@
// mappings. That mapping code resides here.
use middle::def_id::{DefId, LOCAL_CRATE};
use metadata::cstore::LOCAL_CRATE;
use middle::def_id::DefId;
use middle::lang_items::UnsizeTraitLangItem;
use middle::subst::{self, Subst};
use middle::traits;

View file

@ -11,7 +11,8 @@
//! Orphan checker: every impl either implements a trait defined in this
//! crate or pertains to a type defined in this crate.
use middle::def_id::{DefId, LOCAL_CRATE};
use metadata::cstore::LOCAL_CRATE;
use middle::def_id::DefId;
use middle::traits;
use middle::ty;
use syntax::ast;

View file

@ -11,7 +11,8 @@
//! Overlap: No two impls for the same trait are implemented for the
//! same type.
use middle::def_id::{DefId, LOCAL_CRATE};
use metadata::cstore::LOCAL_CRATE;
use middle::def_id::DefId;
use middle::traits;
use middle::ty;
use middle::infer::{self, new_infer_ctxt};

View file

@ -65,8 +65,9 @@ There are some shortcomings in this design:
*/
use astconv::{self, AstConv, ty_of_arg, ast_ty_to_ty, ast_region_to_region};
use metadata::cstore::LOCAL_CRATE;
use middle::def;
use middle::def_id::{DefId, LOCAL_CRATE};
use middle::def_id::DefId;
use constrained_type_params as ctp;
use middle::lang_items::SizedTraitLangItem;
use middle::free_region::FreeRegionMap;

View file

@ -266,7 +266,8 @@ use self::ParamKind::*;
use arena;
use arena::TypedArena;
use middle::def_id::{DefId, LOCAL_CRATE};
use metadata::cstore::LOCAL_CRATE;
use middle::def_id::DefId;
use middle::resolve_lifetime as rl;
use middle::subst;
use middle::subst::{ParamSpace, FnSpace, TypeSpace, SelfSpace, VecPerParamSpace};

View file

@ -36,10 +36,11 @@ use syntax::ptr::P;
use rustc_trans::back::link;
use rustc::metadata::cstore;
use rustc::metadata::cstore::LOCAL_CRATE;
use rustc::metadata::csearch;
use rustc::metadata::decoder;
use rustc::middle::def;
use rustc::middle::def_id::{DefId, LOCAL_CRATE};
use rustc::middle::def_id::DefId;
use rustc::middle::subst::{self, ParamSpace, VecPerParamSpace};
use rustc::middle::ty;
use rustc::middle::stability;

View file

@ -18,7 +18,8 @@
use std::fmt;
use std::iter::repeat;
use rustc::middle::def_id::{DefId, LOCAL_CRATE};
use rustc::metadata::cstore::LOCAL_CRATE;
use rustc::middle::def_id::DefId;
use syntax::abi::Abi;
use syntax::ast;
use rustc_front::hir;

View file

@ -53,6 +53,7 @@ use externalfiles::ExternalHtml;
use serialize::json::{self, ToJson};
use syntax::{abi, ast, attr};
use rustc::metadata::cstore::LOCAL_CRATE;
use rustc::middle::def_id::{DefId, LOCAL_CRATE};
use rustc::util::nodemap::NodeSet;
use rustc_front::hir;