summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2017-05-31 16:08:36 +0200
committerMartin Liska <marxin@gcc.gnu.org>2017-05-31 14:08:36 +0000
commit7f1b5019a5f760a936ab56aa76417a9cf12b3deb (patch)
treec229959c3b82d51042f83fe3cf9f45ba801a5b29 /contrib
parent67b8dbacf69243ffc6ac999fd4928af83fbf6c04 (diff)
downloadgcc-7f1b5019a5f760a936ab56aa76417a9cf12b3deb.tar.gz
Doxygen: transform ENUM_BITFIELD and comments starting with '/**'.
2017-05-31 Martin Liska <mliska@suse.cz> * filter_params.py: Transform ENUM_BITFIELD and comments starting with '/**' From-SVN: r248741
Diffstat (limited to 'contrib')
-rw-r--r--contrib/ChangeLog5
-rw-r--r--contrib/filter_params.py30
2 files changed, 35 insertions, 0 deletions
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 20b390db223..e2cbd7902fc 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,8 @@
+2017-05-31 Martin Liska <mliska@suse.cz>
+
+ * filter_params.py:
+ Transform ENUM_BITFIELD and comments starting with '/**'
+
2017-05-31 David Malcolm <dmalcolm@redhat.com>
Martin Liska <mliska@suse.cz>
diff --git a/contrib/filter_params.py b/contrib/filter_params.py
index f94d201bbf8..a82a8d5728c 100644
--- a/contrib/filter_params.py
+++ b/contrib/filter_params.py
@@ -34,6 +34,11 @@ def filter_src(text):
# so that doxygen will parse them.
#
# Only comments that begin on the left-most column are converted.
+ #
+ text = re.sub(r'^/\*\* ',
+ r'/** @verbatim ',
+ text,
+ flags=re.MULTILINE)
text = re.sub(r'^/\* ',
r'/** @verbatim ',
text,
@@ -58,6 +63,11 @@ def filter_src(text):
r'(\1)',
text)
+ # Replace 'ENUM_BITFIELD(enum_name)' with 'enum enum_name'.
+ text = re.sub('ENUM_BITFIELD\s*\(([^\)]*)\)',
+ r'enum \1',
+ text)
+
return text
class FilteringTests(unittest.TestCase):
@@ -81,6 +91,21 @@ class FilteringTests(unittest.TestCase):
' NEXT_LINE\n'
' FINAL_LINE. @endverbatim */\n'))
+ def test_comment_example_gengtype(self):
+ self.assert_filters_to(
+ ('/** Allocate and initialize an input buffer state.\n'
+ ' * @param file A readable stream.\n'
+ ' * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.\n'
+ ' * \n'
+ ' * @return the allocated buffer state.\n'
+ ' */'),
+ ('/** @verbatim Allocate and initialize an input buffer state.\n'
+ ' * @param file A readable stream.\n'
+ ' * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.\n'
+ ' * \n'
+ ' * @return the allocated buffer state.\n'
+ ' @endverbatim */'))
+
def test_oneliner_comment(self):
self.assert_filters_to(
'/* Returns the string representing CLASS. */\n',
@@ -131,6 +156,11 @@ class FilteringTests(unittest.TestCase):
'char *strcpy PARAMS ((char *dest, char *source));\n',
'char *strcpy (char *dest, char *source);\n')
+ def test_ENUM_BITFIELD(self):
+ self.assert_filters_to(
+ ' ENUM_BITFIELD (sym_intent) intent:2;\n',
+ ' enum sym_intent intent:2;\n')
+
def act_on_files(argv):
for filename in argv[1:]:
with open(filename) as f: