about summary refs log tree commit diff
path: root/src/libsyntax_ext/deriving
diff options
context:
space:
mode:
authorvarkor <github@varkor.com>2018-05-26 23:21:08 +0100
committervarkor <github@varkor.com>2018-06-20 12:21:08 +0100
commite1d888c7225786530dae2461567e991f398388cf (patch)
tree9dfe0820628b915474bcd1bab7bf61a681f22deb /src/libsyntax_ext/deriving
parent2c6ff2469a94e37b9605a43bc861de66830a94d4 (diff)
downloadrust-e1d888c7225786530dae2461567e991f398388cf.tar.gz
rust-e1d888c7225786530dae2461567e991f398388cf.zip
Remove methods from ast::GenericParam and ast::Generics
Diffstat (limited to 'src/libsyntax_ext/deriving')
-rw-r--r--src/libsyntax_ext/deriving/clone.rs5
-rw-r--r--src/libsyntax_ext/deriving/generic/mod.rs5
2 files changed, 8 insertions, 2 deletions
diff --git a/src/libsyntax_ext/deriving/clone.rs b/src/libsyntax_ext/deriving/clone.rs
index 40d49b49960..5f943a4cd00 100644
--- a/src/libsyntax_ext/deriving/clone.rs
+++ b/src/libsyntax_ext/deriving/clone.rs
@@ -49,7 +49,10 @@ pub fn expand_deriving_clone(cx: &mut ExtCtxt,
                 ItemKind::Struct(_, Generics { ref params, .. }) |
                 ItemKind::Enum(_, Generics { ref params, .. }) => {
                     if attr::contains_name(&annitem.attrs, "rustc_copy_clone_marker") &&
-                        !params.iter().any(|param| param.is_type_param())
+                        !params.iter().any(|param| match param.kind {
+                            ast::GenericParamKindAST::Type { .. } => true,
+                            _ => false,
+                        })
                     {
                         bounds = vec![];
                         is_shallow = true;
diff --git a/src/libsyntax_ext/deriving/generic/mod.rs b/src/libsyntax_ext/deriving/generic/mod.rs
index cbf7b1e0876..e461c9640d1 100644
--- a/src/libsyntax_ext/deriving/generic/mod.rs
+++ b/src/libsyntax_ext/deriving/generic/mod.rs
@@ -422,7 +422,10 @@ impl<'a> TraitDef<'a> {
                     ast::ItemKind::Struct(_, ref generics) |
                     ast::ItemKind::Enum(_, ref generics) |
                     ast::ItemKind::Union(_, ref generics) => {
-                        !generics.params.iter().any(|p| p.is_type_param())
+                        !generics.params.iter().any(|param| match param.kind {
+                            ast::GenericParamKindAST::Type { .. } => true,
+                            _ => false,
+                        })
                     }
                     _ => {
                         // Non-ADT derive is an error, but it should have been