about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorSergi-Ferrez <sergiferrezpuig@gmail.com>2024-06-04 02:11:37 +0200
committerSergi-Ferrez <sergiferrezpuig@gmail.com>2024-06-04 02:47:06 +0200
commitb7a8f1f225db2fef723317a4bfb4cc649cc9ff84 (patch)
treed93d304f10702fa04b38d940873b40e619f7dddb /src
parent7c52d2db6348b038276198e88a835125849f322e (diff)
downloadrust-b7a8f1f225db2fef723317a4bfb4cc649cc9ff84.tar.gz
rust-b7a8f1f225db2fef723317a4bfb4cc649cc9ff84.zip
Include trailing commas in functions
Diffstat (limited to 'src')
-rw-r--r--src/librustdoc/html/format.rs22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/librustdoc/html/format.rs b/src/librustdoc/html/format.rs
index d20cef745ab..de92fb80b93 100644
--- a/src/librustdoc/html/format.rs
+++ b/src/librustdoc/html/format.rs
@@ -1431,20 +1431,16 @@ impl clean::FnDecl {
         cx: &Context<'_>,
     ) -> fmt::Result {
         let amp = if f.alternate() { "&" } else { "&amp;" };
-
+        
         write!(f, "(")?;
         if let Some(n) = line_wrapping_indent
             && !self.inputs.values.is_empty()
         {
             write!(f, "\n{}", Indent(n + 4))?;
         }
+
+        let last_input_index = self.inputs.values.len() - 1;
         for (i, input) in self.inputs.values.iter().enumerate() {
-            if i > 0 {
-                match line_wrapping_indent {
-                    None => write!(f, ", ")?,
-                    Some(n) => write!(f, ",\n{}", Indent(n + 4))?,
-                };
-            }
             if let Some(selfty) = input.to_self() {
                 match selfty {
                     clean::SelfValue => {
@@ -1477,18 +1473,24 @@ impl clean::FnDecl {
                 write!(f, "{}: ", input.name)?;
                 input.type_.print(cx).fmt(f)?;
             }
+            match line_wrapping_indent {
+                None if i == last_input_index => (),
+                None => write!(f, ", ")?,
+                Some(_n) if i == last_input_index => write!(f, ",\n")?,
+                Some(n) => write!(f, ",\n{}", Indent(n + 4))?,
+            }
         }
 
         if self.c_variadic {
             match line_wrapping_indent {
-                None => write!(f, ", ...")?,
-                Some(n) => write!(f, "\n{}...", Indent(n + 4))?,
+                None => write!(f, "...")?,
+                Some(n) => write!(f, "{}...\n", Indent(n + 4))?,
             };
         }
 
         match line_wrapping_indent {
             None => write!(f, ")")?,
-            Some(n) => write!(f, "\n{})", Indent(n))?,
+            Some(n) => write!(f, "{})", Indent(n))?,
         };
 
         self.print_output(cx).fmt(f)