Initial commit for version 2.0.x patch release
[OpenFOAM-2.0.x.git] / bin / tools / doxyFilter.awk
blobaebfbbaf31b797c35614a3c8b2ca5427914d7ebc
1 # -----------------------------------------------------------------------------
2 # ========= |
3 # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4 # \\ / O peration |
5 # \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
6 # \\/ M anipulation |
7 # -----------------------------------------------------------------------------
8 # License
9 # This file is part of OpenFOAM.
11 # OpenFOAM is free software: you can redistribute it and/or modify it
12 # under the terms of the GNU General Public License as published by
13 # the Free Software Foundation, either version 3 of the License, or
14 # (at your option) any later version.
16 # OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19 # for more details.
21 # You should have received a copy of the GNU General Public License
22 # along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
24 # Script
25 # doxyFilter.awk
27 # Description
28 # Converts cocoon style sentinel strings into doxygen style strings
30 # Assumes comment strings are formatted as follows
31 # //- general description
32 # // more information
33 # // and even more information
34 # This should be re-formatted as the following
35 # //! general description
36 # /*!
37 # more information
38 # and even more information
39 # */
40 # The intermediate "/*! ... */" block is left-justified to handle
41 # possible verbatim text
42 # -----------------------------------------------------------------------------
44 BEGIN {
45 state = 0
48 /^ *\/\/-/ {
49 state = 1
50 sub(/\/\/-/, "//!")
51 print
52 next
56 /^ *\/\// {
57 # start comment block
58 if (state == 1)
60 printf "/*! "
61 state = 2
64 # inside comment block
65 if (state == 2)
67 if (!sub(/^ *\/\/ /, ""))
69 sub(/^ *\/\//, "")
73 print
74 next
79 # end comment block
80 if (state == 2)
82 printf "*/ "
84 state = 0
85 print
86 next
89 # -----------------------------------------------------------------------------