1
Fork 0

Derives for ast.

This commit is contained in:
Camille GILLOT 2019-11-10 18:32:43 +01:00
parent 31298b41d6
commit e85c195174
3 changed files with 4 additions and 25 deletions

View file

@ -119,10 +119,6 @@ impl<'a> HashStable<StableHashingContext<'a>> for hir::ImplItemId {
} }
} }
impl_stable_hash_for!(struct ast::Label {
ident
});
impl<'a> HashStable<StableHashingContext<'a>> for hir::Ty { impl<'a> HashStable<StableHashingContext<'a>> for hir::Ty {
fn hash_stable(&self, hcx: &mut StableHashingContext<'a>, hasher: &mut StableHasher) { fn hash_stable(&self, hcx: &mut StableHashingContext<'a>, hasher: &mut StableHasher) {
hcx.while_hashing_hir_bodies(true, |hcx| { hcx.while_hashing_hir_bodies(true, |hcx| {

View file

@ -125,23 +125,6 @@ impl<'ctx> syntax::StableHashingContextLike for StableHashingContext<'ctx> {
} }
} }
impl_stable_hash_for!(enum ::syntax::ast::NestedMetaItem {
MetaItem(meta_item),
Literal(lit)
});
impl_stable_hash_for!(struct ::syntax::ast::MetaItem {
path,
kind,
span
});
impl_stable_hash_for!(enum ::syntax::ast::MetaItemKind {
Word,
List(nested_items),
NameValue(lit)
});
impl<'a> HashStable<StableHashingContext<'a>> for SourceFile { impl<'a> HashStable<StableHashingContext<'a>> for SourceFile {
fn hash_stable(&self, hcx: &mut StableHashingContext<'a>, hasher: &mut StableHasher) { fn hash_stable(&self, hcx: &mut StableHashingContext<'a>, hasher: &mut StableHasher) {
let SourceFile { let SourceFile {

View file

@ -55,7 +55,7 @@ mod tests;
/// ``` /// ```
/// ///
/// `'outer` is a label. /// `'outer` is a label.
#[derive(Clone, RustcEncodable, RustcDecodable, Copy)] #[derive(Clone, RustcEncodable, RustcDecodable, Copy, HashStable_Generic)]
pub struct Label { pub struct Label {
pub ident: Ident, pub ident: Ident,
} }
@ -483,7 +483,7 @@ pub struct Crate {
/// Possible values inside of compile-time attribute lists. /// Possible values inside of compile-time attribute lists.
/// ///
/// E.g., the '..' in `#[name(..)]`. /// E.g., the '..' in `#[name(..)]`.
#[derive(Clone, RustcEncodable, RustcDecodable, Debug)] #[derive(Clone, RustcEncodable, RustcDecodable, Debug, HashStable_Generic)]
pub enum NestedMetaItem { pub enum NestedMetaItem {
/// A full MetaItem, for recursive meta items. /// A full MetaItem, for recursive meta items.
MetaItem(MetaItem), MetaItem(MetaItem),
@ -496,7 +496,7 @@ pub enum NestedMetaItem {
/// A spanned compile-time attribute item. /// A spanned compile-time attribute item.
/// ///
/// E.g., `#[test]`, `#[derive(..)]`, `#[rustfmt::skip]` or `#[feature = "foo"]`. /// E.g., `#[test]`, `#[derive(..)]`, `#[rustfmt::skip]` or `#[feature = "foo"]`.
#[derive(Clone, RustcEncodable, RustcDecodable, Debug)] #[derive(Clone, RustcEncodable, RustcDecodable, Debug, HashStable_Generic)]
pub struct MetaItem { pub struct MetaItem {
pub path: Path, pub path: Path,
pub kind: MetaItemKind, pub kind: MetaItemKind,
@ -506,7 +506,7 @@ pub struct MetaItem {
/// A compile-time attribute item. /// A compile-time attribute item.
/// ///
/// E.g., `#[test]`, `#[derive(..)]` or `#[feature = "foo"]`. /// E.g., `#[test]`, `#[derive(..)]` or `#[feature = "foo"]`.
#[derive(Clone, RustcEncodable, RustcDecodable, Debug)] #[derive(Clone, RustcEncodable, RustcDecodable, Debug, HashStable_Generic)]
pub enum MetaItemKind { pub enum MetaItemKind {
/// Word meta item. /// Word meta item.
/// ///