]> git.lizzy.rs Git - rust.git/commitdiff
Migrate `VariantKind` constructor to `Clean` impl.
authorCorey Farwell <coreyf@rwell.org>
Sun, 2 Oct 2016 23:59:48 +0000 (19:59 -0400)
committerCorey Farwell <coreyf@rwell.org>
Mon, 3 Oct 2016 01:58:22 +0000 (21:58 -0400)
https://github.com/rust-lang/rust/pull/36903#discussion_r81477884

src/librustdoc/clean/mod.rs

index b3e65293a86752da383fc1fc66f899eab5fdf405..a85e0193a97018c41e03a2c129ea47a698b0a45e 100644 (file)
@@ -2025,7 +2025,7 @@ fn clean(&self, cx: &DocContext) -> Item {
             deprecation: self.depr.clean(cx),
             def_id: cx.map.local_def_id(self.def.id()),
             inner: VariantItem(Variant {
-                kind: VariantKind::from_struct_def(&self.def, cx),
+                kind: self.def.clean(cx),
             }),
         }
     }
@@ -2079,14 +2079,14 @@ pub enum VariantKind {
     StructVariant(VariantStruct),
 }
 
-impl VariantKind {
-    fn from_struct_def(struct_def: &hir::VariantData, cx: &DocContext) -> VariantKind {
-        if struct_def.is_struct() {
-            StructVariant(struct_def.clean(cx))
-        } else if struct_def.is_unit() {
+impl Clean<VariantKind> for hir::VariantData {
+    fn clean(&self, cx: &DocContext) -> VariantKind {
+        if self.is_struct() {
+            StructVariant(self.clean(cx))
+        } else if self.is_unit() {
             CLikeVariant
         } else {
-            TupleVariant(struct_def.fields().iter().map(|x| x.ty.clean(cx)).collect())
+            TupleVariant(self.fields().iter().map(|x| x.ty.clean(cx)).collect())
         }
     }
 }