diff options
| author | Noah Lev <camelidcamel@gmail.com> | 2021-11-07 08:52:28 -0800 |
|---|---|---|
| committer | Noah Lev <camelidcamel@gmail.com> | 2021-11-07 08:52:28 -0800 |
| commit | 543aea6c03fde24aa35f2bfbff7915868d074bca (patch) | |
| tree | e3520d47b3cfc978fc0c8ae1bd43b520eaba701c /src/librustdoc/json | |
| parent | 7b7023cb723775fa20bda42e97dbc44abe7ecb0c (diff) | |
| download | rust-543aea6c03fde24aa35f2bfbff7915868d074bca.tar.gz rust-543aea6c03fde24aa35f2bfbff7915868d074bca.zip | |
Use an enum to record polarity in `clean::Impl`
Diffstat (limited to 'src/librustdoc/json')
| -rw-r--r-- | src/librustdoc/json/conversions.rs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/librustdoc/json/conversions.rs b/src/librustdoc/json/conversions.rs index 94069b99c7d..8dc7a33cb13 100644 --- a/src/librustdoc/json/conversions.rs +++ b/src/librustdoc/json/conversions.rs @@ -500,8 +500,7 @@ impl FromWithTcx<clean::Trait> for Trait { impl FromWithTcx<clean::Impl> for Impl { fn from_tcx(impl_: clean::Impl, tcx: TyCtxt<'_>) -> Self { let provided_trait_methods = impl_.provided_trait_methods(tcx); - let clean::Impl { unsafety, generics, trait_, for_, items, negative_polarity, kind } = - impl_; + let clean::Impl { unsafety, generics, trait_, for_, items, polarity, kind } = impl_; // FIXME: should `trait_` be a clean::Path equivalent in JSON? let trait_ = trait_.map(|path| { let did = path.def_id(); @@ -513,6 +512,10 @@ impl FromWithTcx<clean::Impl> for Impl { clean::ImplKind::Auto => (true, None), clean::ImplKind::Blanket(ty) => (false, Some(*ty)), }; + let negative_polarity = match polarity { + clean::ImplPolarity::Positive => false, + clean::ImplPolarity::Negative => true, + }; Impl { is_unsafe: unsafety == rustc_hir::Unsafety::Unsafe, generics: generics.into_tcx(tcx), |
