buf = []
doxy = 0
+example = 0
def commentblock(buf)
unless buf == []
#make variables in function descriptions shown in bold
gsub!(/\$[A-Z_]+/) {|m| m.delete!("$").reverse.downcase!.concat(" b@").reverse}
- case $_
- when /^\s*$/
- if doxy == 1
- buf.push($_)
- end
- when /\/\*=\*\//
- commentblock(buf)
+ if example == 1
+ case $_
+ when /#endif/
+ buf.push($_.gsub!(/#endif/, "@endcode"))
+ example = 0
+ else
+ buf.push($_)
+ end
+
+ else # when example == 0
+
+ case $_
+
+ when /^\s*$/
+ if doxy == 1 # empty line in doxygen comment
+ buf.push($_)
+ end
+
+ when /\/\*=\*\// #/*=*/ (flush)
+ commentblock(buf)
buf = []
-
- when /^\/\*\s.*\*\// # /* comment */ type comment
- if doxy == 1
- # should be included only in the example code
- ## We used to do the following substituion as a workaround of
- ## a Doxygen bug.
- ## buf.push($_.gsub!(/\*\//, " ").gsub!(/\/\*/, "//"))
- buf.push($_)
- end
- when /\/\*\s.*\*\// # code + /* comment */ type comment
- if doxy == 1
- # should be included in the example code
- ## See the above comment.
- ## buf.push($_.gsub!(/\*\//, " ").gsub!(/\/\*/, "//"))
- buf.push($_) # should be included in the example code
- else
+ when /^\/\*\s.*\*\// # /* comment */ type comment
+# if doxy == 1
+# # should be included only in the example code
+# ## We used to do the following substituion as a workaround of
+# ## a Doxygen bug.
+# ## buf.push($_.gsub!(/\*\//, " ").gsub!(/\/\*/, "//"))
+# buf.push($_)
+# end
+
+ when /\/\*\s.*\*\// # code + /* comment */ type comment
+# if doxy == 1
+# # should be included in the example code
+# ## See the above comment.
+# ## buf.push($_.gsub!(/\*\//, " ").gsub!(/\/\*/, "//"))
+# buf.push($_) # should be included in the example code
+# else
if doxy == 0
commentblock(buf)
buf = []
print $_.gsub!(/\/\*\s.*\*\//," ") # should be omiited in code
- end
+# end
end
when /\/\*{2,3}ja.*\*\// #japanese one liner
doxy = 1
when /EXAMPLE_CODE/
+ #start example code lines
buf.push($_.gsub!(/#if EXAMPLE_CODE/, "\n \n @par Example:\n @code"))
- doxy = 1
+ example = 1
- when /#endif/
- if doxy == 1
- buf.push($_.gsub!(/#endif/, "@endcode"))
- else
- commentblock(buf)
- buf = []
- print $_
- end
- doxy = 0
when /\*\//
if doxy == 1
buf.push($_.gsub!(/\*\//, " "))
buf = []
print($_)
end
+ end
end
end