[rtems-central commit] content: Split long @defgroup lines

Sebastian Huber sebh at rtems.org
Fri Sep 11 15:25:42 UTC 2020


Module:    rtems-central
Branch:    master
Commit:    82ee7cecf052ce11dbfe0e05719c44744b906ecc
Changeset: http://git.rtems.org/rtems-central/commit/?id=82ee7cecf052ce11dbfe0e05719c44744b906ecc

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Fri Sep 11 16:29:55 2020 +0200

content: Split long @defgroup lines

---

 rtemsspec/content.py              |  5 ++++-
 rtemsspec/tests/test_content_c.py | 22 ++++++++++++++++++++++
 2 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/rtemsspec/content.py b/rtemsspec/content.py
index 131f8fe..5e8da8b 100644
--- a/rtemsspec/content.py
+++ b/rtemsspec/content.py
@@ -651,7 +651,10 @@ class CContent(Content):
 
     def open_defgroup_block(self, identifier: str, name: str) -> None:
         """ Opens a Doxygen @defgroup comment block. """
-        self._open_comment_block(["/**", f" * @defgroup {identifier} {name}"])
+        defgroup = [f" * @defgroup {identifier} {name}"]
+        if len(self._indent) + len(defgroup[0]) > 79:
+            defgroup = [f" * @defgroup {identifier} \\", f" *   {name}"]
+        self._open_comment_block(["/**"] + defgroup)
         self.gap = True
 
     def open_function_block(self, function: str) -> None:
diff --git a/rtemsspec/tests/test_content_c.py b/rtemsspec/tests/test_content_c.py
index 5cf3702..8a24caf 100644
--- a/rtemsspec/tests/test_content_c.py
+++ b/rtemsspec/tests/test_content_c.py
@@ -455,6 +455,28 @@ b
 """
 
 
+def test_defgroup():
+    content = CContent()
+    with content.defgroup_block("a", "b"):
+        content.add("c")
+    assert str(content) == """/**
+ * @defgroup a b
+ *
+ * c
+ */
+"""
+    content = CContent()
+    with content.defgroup_block(
+            "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+            "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"):
+        pass
+    assert str(content) == """/**
+ * @defgroup aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \\
+ *   bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+ */
+"""
+
+
 def test_prepend_copyrights_and_licenses():
     content = CContent()
     content.add("x")



More information about the vc mailing list