Rebase fallout

This commit is contained in:
Oliver Schneider 2018-09-11 12:06:37 +02:00
parent 1ec86708ca
commit 8053f6319a
2 changed files with 27 additions and 5 deletions

View file

@ -16,7 +16,7 @@ use std::fmt;
use std::u32;
newtype_index! {
pub struct CrateNum {
pub struct CrateId {
ENCODABLE = custom
}
}
@ -38,7 +38,7 @@ pub enum CrateNum {
impl ::std::fmt::Debug for CrateNum {
fn fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
match self {
CrateNum::Index(id) => write!(fmt, "crate{}", id.0),
CrateNum::Index(id) => write!(fmt, "crate{}", id.private),
CrateNum::Invalid => write!(fmt, "invalid crate"),
CrateNum::BuiltinMacros => write!(fmt, "bultin macros crate"),
CrateNum::ReservedForIncrCompCache => write!(fmt, "crate for decoding incr comp cache"),
@ -48,7 +48,7 @@ impl ::std::fmt::Debug for CrateNum {
/// Item definitions in the currently-compiled crate would have the CrateNum
/// LOCAL_CRATE in their DefId.
pub const LOCAL_CRATE: CrateNum = CrateNum::Index(CrateId(0));
pub const LOCAL_CRATE: CrateNum = CrateNum::Index(CrateId::from_u32_const(0));
impl Idx for CrateNum {
@ -71,13 +71,35 @@ impl CrateNum {
CrateNum::from_usize(x)
}
pub fn from_usize(x: usize) -> CrateNum {
CrateNum::Index(CrateId::from_usize(x))
}
pub fn from_u32(x: u32) -> CrateNum {
CrateNum::Index(CrateId::from_u32(x))
}
pub fn as_usize(self) -> usize {
match self {
CrateNum::Index(id) => id.as_usize(),
_ => bug!("tried to get index of nonstandard crate {:?}", self),
}
}
pub fn as_u32(self) -> u32 {
match self {
CrateNum::Index(id) => id.as_u32(),
_ => bug!("tried to get index of nonstandard crate {:?}", self),
}
}
pub fn as_def_id(&self) -> DefId { DefId { krate: *self, index: CRATE_DEF_INDEX } }
}
impl fmt::Display for CrateNum {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
match self {
CrateNum::Index(id) => fmt::Display::fmt(&id.0, f),
CrateNum::Index(id) => fmt::Display::fmt(&id.private, f),
CrateNum::Invalid => write!(f, "invalid crate"),
CrateNum::BuiltinMacros => write!(f, "bultin macros crate"),
CrateNum::ReservedForIncrCompCache => write!(f, "crate for decoding incr comp cache"),

View file

@ -143,7 +143,7 @@ pub enum ScopeData {
/// and thus does not include EXPR_2, but covers the `...`.
newtype_index! {
pub struct FirstStatementIndex;
pub struct FirstStatementIndex { .. }
}
impl_stable_hash_for!(struct ::middle::region::FirstStatementIndex { private });