diff options
| author | varkor <github@varkor.com> | 2018-05-26 23:21:08 +0100 |
|---|---|---|
| committer | varkor <github@varkor.com> | 2018-06-20 12:21:08 +0100 |
| commit | e1d888c7225786530dae2461567e991f398388cf (patch) | |
| tree | 9dfe0820628b915474bcd1bab7bf61a681f22deb /src/libsyntax_ext/deriving | |
| parent | 2c6ff2469a94e37b9605a43bc861de66830a94d4 (diff) | |
| download | rust-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.rs | 5 | ||||
| -rw-r--r-- | src/libsyntax_ext/deriving/generic/mod.rs | 5 |
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 |
