From: Mark Rousskov Date: Fri, 3 Aug 2018 22:10:33 +0000 (-0600) Subject: Remove dependency on rustc::ty from code_stats X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=7f138e1e558828506f8eb801b77f0bfc60d738e0;p=rust.git Remove dependency on rustc::ty from code_stats --- diff --git a/src/librustc/session/code_stats.rs b/src/librustc/session/code_stats.rs index 1eee6508c59..32865acb298 100644 --- a/src/librustc/session/code_stats.rs +++ b/src/librustc/session/code_stats.rs @@ -8,11 +8,8 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -use ty::AdtKind; -use ty::layout::{Align, Size}; - +use rustc_target::abi::{Align, Size}; use rustc_data_structures::fx::{FxHashSet}; - use std::cmp::{self, Ordering}; #[derive(Clone, PartialEq, Eq, Hash, Debug)] @@ -38,16 +35,6 @@ pub struct FieldInfo { pub align: u64, } -impl From for DataTypeKind { - fn from(kind: AdtKind) -> Self { - match kind { - AdtKind::Struct => DataTypeKind::Struct, - AdtKind::Enum => DataTypeKind::Enum, - AdtKind::Union => DataTypeKind::Union, - } - } -} - #[derive(Copy, Clone, PartialEq, Eq, Hash, Debug)] pub enum DataTypeKind { Struct, diff --git a/src/librustc/ty/mod.rs b/src/librustc/ty/mod.rs index 6c5713d233a..0c962fff272 100644 --- a/src/librustc/ty/mod.rs +++ b/src/librustc/ty/mod.rs @@ -37,6 +37,7 @@ use util::captures::Captures; use util::nodemap::{NodeSet, DefIdMap, FxHashMap}; use arena::SyncDroplessArena; +use session::DataTypeKind; use serialize::{self, Encodable, Encoder}; use std::cell::RefCell; @@ -1810,6 +1811,16 @@ fn hash_stable(&self, #[derive(Copy, Clone, Debug, Eq, PartialEq, Hash)] pub enum AdtKind { Struct, Union, Enum } +impl Into for AdtKind { + fn into(self) -> DataTypeKind { + match self { + AdtKind::Struct => DataTypeKind::Struct, + AdtKind::Union => DataTypeKind::Union, + AdtKind::Enum => DataTypeKind::Enum, + } + } +} + bitflags! { #[derive(RustcEncodable, RustcDecodable, Default)] pub struct ReprFlags: u8 {