From: дмитрий к. <use...@gm...> - 2012-07-16 21:23:51
|
*Done:* 1. Implemented nice error reporting, now it outputs file name and line information in case doxygen parsing errors and warnings. I'm really excited about the way such information is already stored in swig dynamic object system (DOH), but unfortunately only STL strings are used deeply in doxygen parser, so I was to implement it myself. 2. Implemented parsing support for almost all commands that doxygen supports, even if they are ignored in JavaDoc and PyDoc converters. Also included two testcases, one with all doxygen tags and one with only those that are translated. 3. Refactored TokenList class, re-implemented tokenizer with STL, fixed some bugs. 4. Implemented translating support for most of non-ignored java tags that are listed in project plan. Also added runtime test to check that. *Commits:* 1. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13313 2. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13314 3. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13315 4. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13316 5. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13317 6. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13319 7. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13320 8. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13321 9. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13322 10. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13325 11. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13326 12. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13327 13. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13328 14. http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13329 *Next week:* 1. Still fix errors and bugs. Find a way to correctly parse unsupported tags and latex formulas. 2. Fix implementation of the JavaDocConverter class, produce a nicer comment output. 3. Correct the class PythonDocConverter the same way as I did it in JavaDocConverter, so that it would be easy to implement new tags support. 4. Implement better tests, with parts of code (and doxygen comments) from some real projects. *Open issues:* 1. Comment parsing still works not very good. li_boost_shared_ptr_bits is broken by my changes. 2. Attaching comments to the vars and constants in python is unsupported right now. 3. Currently doxygen comments with no node to attach seem to fail the swig with 'syntax error'. And fixing that is not so trivial. 4. Current tokenizer in doxygen parser seems to be not very practical. It strips all the whitespaces, and in some cases it's not possible to recover them all. And also it stores all the parsed words, which doubles the memory. So, maybe it needs to be replaced with something else some time. For example, we could just find all the '\' and '@' in text string and just store their locations, not the whole words. And work directly with the comment string. -- Regards, Dmitry Kabak |