https://github.com/owenca updated 
https://github.com/llvm/llvm-project/pull/111285

>From b1bcd59b45230dd3b82c09ae0a32ce45f2ff9bdc Mon Sep 17 00:00:00 2001
From: Owen Pan <owenpi...@gmail.com>
Date: Sun, 6 Oct 2024 02:27:59 -0700
Subject: [PATCH] [clang-format][NFC] Clean up AlignConsecutiveStyle

---
 clang/docs/ClangFormatStyleOptions.rst     | 79 ++++++++++++----------
 clang/include/clang/Format/Format.h        | 13 ++--
 clang/lib/Format/Format.cpp                | 17 +----
 clang/unittests/Format/ConfigParseTest.cpp | 23 +++----
 4 files changed, 63 insertions(+), 69 deletions(-)

diff --git a/clang/docs/ClangFormatStyleOptions.rst 
b/clang/docs/ClangFormatStyleOptions.rst
index a16edb0989b05c..27c3e12087dd26 100644
--- a/clang/docs/ClangFormatStyleOptions.rst
+++ b/clang/docs/ClangFormatStyleOptions.rst
@@ -249,7 +249,7 @@ the configuration (without a prefix: ``Auto``).
 .. _AlignArrayOfStructures:
 
 **AlignArrayOfStructures** (``ArrayInitializerAlignmentStyle``) 
:versionbadge:`clang-format 13` :ref:`ΒΆ <AlignArrayOfStructures>`
-  if not ``None``, when using initialization for an array of structs
+  If not ``None``, when using initialization for an array of structs
   aligns the fields into columns.
 
 
@@ -307,11 +307,12 @@ the configuration (without a prefix: ``Auto``).
   Alignment options.
 
   They can also be read as a whole for compatibility. The choices are:
-  - None
-  - Consecutive
-  - AcrossEmptyLines
-  - AcrossComments
-  - AcrossEmptyLinesAndComments
+
+  * ``None``
+  * ``Consecutive``
+  * ``AcrossEmptyLines``
+  * ``AcrossComments``
+  * ``AcrossEmptyLinesAndComments``
 
   For example, to align across empty lines and not across comments, either
   of these work.
@@ -449,11 +450,12 @@ the configuration (without a prefix: ``Auto``).
   Alignment options.
 
   They can also be read as a whole for compatibility. The choices are:
-  - None
-  - Consecutive
-  - AcrossEmptyLines
-  - AcrossComments
-  - AcrossEmptyLinesAndComments
+
+  * ``None``
+  * ``Consecutive``
+  * ``AcrossEmptyLines``
+  * ``AcrossComments``
+  * ``AcrossEmptyLinesAndComments``
 
   For example, to align across empty lines and not across comments, either
   of these work.
@@ -591,11 +593,12 @@ the configuration (without a prefix: ``Auto``).
   Alignment options.
 
   They can also be read as a whole for compatibility. The choices are:
-  - None
-  - Consecutive
-  - AcrossEmptyLines
-  - AcrossComments
-  - AcrossEmptyLinesAndComments
+
+  * ``None``
+  * ``Consecutive``
+  * ``AcrossEmptyLines``
+  * ``AcrossComments``
+  * ``AcrossEmptyLinesAndComments``
 
   For example, to align across empty lines and not across comments, either
   of these work.
@@ -734,11 +737,12 @@ the configuration (without a prefix: ``Auto``).
   Alignment options.
 
   They can also be read as a whole for compatibility. The choices are:
-  - None
-  - Consecutive
-  - AcrossEmptyLines
-  - AcrossComments
-  - AcrossEmptyLinesAndComments
+
+  * ``None``
+  * ``Consecutive``
+  * ``AcrossEmptyLines``
+  * ``AcrossComments``
+  * ``AcrossEmptyLinesAndComments``
 
   For example, to align across empty lines and not across comments, either
   of these work.
@@ -996,11 +1000,12 @@ the configuration (without a prefix: ``Auto``).
   Alignment options.
 
   They can also be read as a whole for compatibility. The choices are:
-  - None
-  - Consecutive
-  - AcrossEmptyLines
-  - AcrossComments
-  - AcrossEmptyLinesAndComments
+
+  * ``None``
+  * ``Consecutive``
+  * ``AcrossEmptyLines``
+  * ``AcrossComments``
+  * ``AcrossEmptyLinesAndComments``
 
   For example, to align across empty lines and not across comments, either
   of these work.
@@ -1136,11 +1141,12 @@ the configuration (without a prefix: ``Auto``).
   Alignment options.
 
   They can also be read as a whole for compatibility. The choices are:
-  - None
-  - Consecutive
-  - AcrossEmptyLines
-  - AcrossComments
-  - AcrossEmptyLinesAndComments
+
+  * ``None``
+  * ``Consecutive``
+  * ``AcrossEmptyLines``
+  * ``AcrossComments``
+  * ``AcrossEmptyLinesAndComments``
 
   For example, to align across empty lines and not across comments, either
   of these work.
@@ -1276,11 +1282,12 @@ the configuration (without a prefix: ``Auto``).
   Alignment options.
 
   They can also be read as a whole for compatibility. The choices are:
-  - None
-  - Consecutive
-  - AcrossEmptyLines
-  - AcrossComments
-  - AcrossEmptyLinesAndComments
+
+  * ``None``
+  * ``Consecutive``
+  * ``AcrossEmptyLines``
+  * ``AcrossComments``
+  * ``AcrossEmptyLinesAndComments``
 
   For example, to align across empty lines and not across comments, either
   of these work.
diff --git a/clang/include/clang/Format/Format.h 
b/clang/include/clang/Format/Format.h
index 53a9577e0f72e7..7070720fa66ccb 100644
--- a/clang/include/clang/Format/Format.h
+++ b/clang/include/clang/Format/Format.h
@@ -131,7 +131,7 @@ struct FormatStyle {
     /// Don't align array initializer columns.
     AIAS_None
   };
-  /// if not ``None``, when using initialization for an array of structs
+  /// If not ``None``, when using initialization for an array of structs
   /// aligns the fields into columns.
   ///
   /// \note
@@ -145,11 +145,12 @@ struct FormatStyle {
   /// Alignment options.
   ///
   /// They can also be read as a whole for compatibility. The choices are:
-  /// - None
-  /// - Consecutive
-  /// - AcrossEmptyLines
-  /// - AcrossComments
-  /// - AcrossEmptyLinesAndComments
+  ///
+  /// * ``None``
+  /// * ``Consecutive``
+  /// * ``AcrossEmptyLines``
+  /// * ``AcrossComments``
+  /// * ``AcrossEmptyLinesAndComments``
   ///
   /// For example, to align across empty lines and not across comments, either
   /// of these work.
diff --git a/clang/lib/Format/Format.cpp b/clang/lib/Format/Format.cpp
index 5350c66ea5132b..432110de85c85d 100644
--- a/clang/lib/Format/Format.cpp
+++ b/clang/lib/Format/Format.cpp
@@ -44,11 +44,7 @@ struct 
ScalarEnumerationTraits<FormatStyle::BreakBeforeNoexceptSpecifierStyle> {
 
 template <> struct MappingTraits<FormatStyle::AlignConsecutiveStyle> {
   static void enumInput(IO &IO, FormatStyle::AlignConsecutiveStyle &Value) {
-    IO.enumCase(Value, "None",
-                FormatStyle::AlignConsecutiveStyle(
-                    {/*Enabled=*/false, /*AcrossEmptyLines=*/false,
-                     /*AcrossComments=*/false, /*AlignCompound=*/false,
-                     /*AlignFunctionPointers=*/false, /*PadOperators=*/true}));
+    IO.enumCase(Value, "None", FormatStyle::AlignConsecutiveStyle({}));
     IO.enumCase(Value, "Consecutive",
                 FormatStyle::AlignConsecutiveStyle(
                     {/*Enabled=*/true, /*AcrossEmptyLines=*/false,
@@ -76,11 +72,7 @@ template <> struct 
MappingTraits<FormatStyle::AlignConsecutiveStyle> {
                     {/*Enabled=*/true, /*AcrossEmptyLines=*/false,
                      /*AcrossComments=*/false, /*AlignCompound=*/false,
                      /*AlignFunctionPointers=*/false, /*PadOperators=*/true}));
-    IO.enumCase(Value, "false",
-                FormatStyle::AlignConsecutiveStyle(
-                    {/*Enabled=*/false, /*AcrossEmptyLines=*/false,
-                     /*AcrossComments=*/false, /*AlignCompound=*/false,
-                     /*AlignFunctionPointers=*/false, /*PadOperators=*/true}));
+    IO.enumCase(Value, "false", FormatStyle::AlignConsecutiveStyle({}));
   }
 
   static void mapping(IO &IO, FormatStyle::AlignConsecutiveStyle &Value) {
@@ -1441,11 +1433,6 @@ FormatStyle getLLVMStyle(FormatStyle::LanguageKind 
Language) {
   LLVMStyle.AlignAfterOpenBracket = FormatStyle::BAS_Align;
   LLVMStyle.AlignArrayOfStructures = FormatStyle::AIAS_None;
   LLVMStyle.AlignConsecutiveAssignments = {};
-  LLVMStyle.AlignConsecutiveAssignments.AcrossComments = false;
-  LLVMStyle.AlignConsecutiveAssignments.AcrossEmptyLines = false;
-  LLVMStyle.AlignConsecutiveAssignments.AlignCompound = false;
-  LLVMStyle.AlignConsecutiveAssignments.AlignFunctionPointers = false;
-  LLVMStyle.AlignConsecutiveAssignments.Enabled = false;
   LLVMStyle.AlignConsecutiveAssignments.PadOperators = true;
   LLVMStyle.AlignConsecutiveBitFields = {};
   LLVMStyle.AlignConsecutiveDeclarations = {};
diff --git a/clang/unittests/Format/ConfigParseTest.cpp 
b/clang/unittests/Format/ConfigParseTest.cpp
index b8bdfaaa74e10e..b39ec7ddc06729 100644
--- a/clang/unittests/Format/ConfigParseTest.cpp
+++ b/clang/unittests/Format/ConfigParseTest.cpp
@@ -300,12 +300,8 @@ TEST(ConfigParseTest, ParsesConfiguration) {
 #define CHECK_ALIGN_CONSECUTIVE(FIELD)                                         
\
   do {                                                                         
\
     Style.FIELD.Enabled = true;                                                
\
-    CHECK_PARSE(                                                               
\
-        #FIELD ": None", FIELD,                                                
\
-        FormatStyle::AlignConsecutiveStyle(                                    
\
-            {/*Enabled=*/false, /*AcrossEmptyLines=*/false,                    
\
-             /*AcrossComments=*/false, /*AlignCompound=*/false,                
\
-             /*AlignFunctionPointers=*/false, /*PadOperators=*/true}));        
\
+    CHECK_PARSE(#FIELD ": None", FIELD,                                        
\
+                FormatStyle::AlignConsecutiveStyle({}));                       
\
     CHECK_PARSE(                                                               
\
         #FIELD ": Consecutive", FIELD,                                         
\
         FormatStyle::AlignConsecutiveStyle(                                    
\
@@ -319,18 +315,20 @@ TEST(ConfigParseTest, ParsesConfiguration) {
              /*AcrossComments=*/false, /*AlignCompound=*/false,                
\
              /*AlignFunctionPointers=*/false, /*PadOperators=*/true}));        
\
     CHECK_PARSE(                                                               
\
-        #FIELD ": AcrossEmptyLinesAndComments", FIELD,                         
\
+        #FIELD ": AcrossComments", FIELD,                                      
\
         FormatStyle::AlignConsecutiveStyle(                                    
\
-            {/*Enabled=*/true, /*AcrossEmptyLines=*/true,                      
\
+            {/*Enabled=*/true, /*AcrossEmptyLines=*/false,                     
\
              /*AcrossComments=*/true, /*AlignCompound=*/false,                 
\
              /*AlignFunctionPointers=*/false, /*PadOperators=*/true}));        
\
-    /* For backwards compability, false / true should still parse */           
\
     CHECK_PARSE(                                                               
\
-        #FIELD ": false", FIELD,                                               
\
+        #FIELD ": AcrossEmptyLinesAndComments", FIELD,                         
\
         FormatStyle::AlignConsecutiveStyle(                                    
\
-            {/*Enabled=*/false, /*AcrossEmptyLines=*/false,                    
\
-             /*AcrossComments=*/false, /*AlignCompound=*/false,                
\
+            {/*Enabled=*/true, /*AcrossEmptyLines=*/true,                      
\
+             /*AcrossComments=*/true, /*AlignCompound=*/false,                 
\
              /*AlignFunctionPointers=*/false, /*PadOperators=*/true}));        
\
+    /* For backwards compability, false / true should still parse */           
\
+    CHECK_PARSE(#FIELD ": false", FIELD,                                       
\
+                FormatStyle::AlignConsecutiveStyle({}));                       
\
     CHECK_PARSE(                                                               
\
         #FIELD ": true", FIELD,                                                
\
         FormatStyle::AlignConsecutiveStyle(                                    
\
@@ -342,6 +340,7 @@ TEST(ConfigParseTest, ParsesConfiguration) {
     CHECK_PARSE_NESTED_BOOL(FIELD, AcrossEmptyLines);                          
\
     CHECK_PARSE_NESTED_BOOL(FIELD, AcrossComments);                            
\
     CHECK_PARSE_NESTED_BOOL(FIELD, AlignCompound);                             
\
+    CHECK_PARSE_NESTED_BOOL(FIELD, AlignFunctionPointers);                     
\
     CHECK_PARSE_NESTED_BOOL(FIELD, PadOperators);                              
\
   } while (false)
 

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to