diff options
author | Klaus Weidenbach <Klaus.Weidenbach@gmx.net> | 2017-05-04 00:43:55 +0200 |
---|---|---|
committer | Mario Vavti <mario@mariovavti.com> | 2017-05-05 12:45:34 +0200 |
commit | 54259593ea9c61b3d585ccc3a9ca0bfe4e032fed (patch) | |
tree | 089dc879229c3eb131227710c50e96487f2cd5ad /util | |
parent | 73cb270b14b7cc61074eeaf7469024b800fc582b (diff) | |
download | volse-hubzilla-54259593ea9c61b3d585ccc3a9ca0bfe4e032fed.tar.gz volse-hubzilla-54259593ea9c61b3d585ccc3a9ca0bfe4e032fed.tar.bz2 volse-hubzilla-54259593ea9c61b3d585ccc3a9ca0bfe4e032fed.zip |
:bulb: Add Doxygen fix for @var member variable documentation.
Add an input filter to Doxygen to parse @var class member variable
documentation, so it is bit more compatible how anybody else interpretes
it.
Diffstat (limited to 'util')
-rw-r--r-- | util/Doxyfile | 3 | ||||
-rw-r--r-- | util/Doxygen_phpvarfilter.php | 18 |
2 files changed, 21 insertions, 0 deletions
diff --git a/util/Doxyfile b/util/Doxyfile index 1bca6cbd4..7be774a81 100644 --- a/util/Doxyfile +++ b/util/Doxyfile @@ -32,3 +32,6 @@ DOT_IMAGE_FORMAT = svg INTERACTIVE_SVG = YES CLASS_GRAPH = YES COLLABORATION_GRAPH = NO +# fix @var (https://bugzilla.gnome.org/show_bug.cgi?id=626105) +#INPUT_FILTER = "sed -e 's/@var\s/@see /'" +INPUT_FILTER = "php util/Doxygen_phpvarfilter.php" diff --git a/util/Doxygen_phpvarfilter.php b/util/Doxygen_phpvarfilter.php new file mode 100644 index 000000000..da6cf1666 --- /dev/null +++ b/util/Doxygen_phpvarfilter.php @@ -0,0 +1,18 @@ +<?php +/** + * @file Doxygen_phpvarfilter.php + * @brief A Doxygen INPUT_FILTER to parse \@var member variable documentation. + * + * An input filter for Doxygen to parse \@var class member variable documentation, + * so it is a bit more compatible how anybody else interpretes it. + * + * @see http://stackoverflow.com/questions/4325224/doxygen-how-to-describe-class-member-variables-in-php/8472180#8472180 + */ + +$source = file_get_contents($argv[1]); + +$regexp = '#\@var\s+([^\s]+)([^/]+)/\s+(var|public|protected|private)\s+(\$[^\s;=]+)#'; +$replac = '${2} */ ${3} ${1} ${4}'; +$source = preg_replace($regexp, $replac, $source); + +echo $source; |