Synopsis is a multi-language source code introspection tool that provides a variety of representations for the parsed code to enable further processing such as documentation extraction, reverse engineering, and source-to-source translation. It provides a framework of C++ and Python APIs to access these representations and allows Processor objects to be defined and composed into processing pipelines, making this framework very flexible and extensible.
| Tags | Software Development Documentation Code Generators |
|---|---|
| Licenses | GPL LGPL |
| Operating Systems | POSIX Windows Windows |
| Implementation | C++ Python |
Recent releases


Changes: This release adds support for OS X. It fixes the way template specializations are handled in the ASG. It fixes a number of minor incompatibilities with Python 2.6. It fixes a number of validation errors for the HTML formatter.


Changes: More information is captured, such as relationships between primary class templates and their specializations and instantiations. The user interface was simplified. The Python parser now supports parsing of dependent (imported) files. The DocBook formatter has been rewritten. It now supports Javadoc and ReST document markup. The HTML formatter has been enhanced in many respects. Many bugs have been fixed. The C and C++ parsers have been enhanced, and many bugs have been fixed.


Changes: Support for C99 parsing has been greatly enhanced. Support for Python code cross-referencing has been added. The processing of source-embedded documentation has been greatly enhanced. As a result, this release supports multiple markup formats, such as Javadoc, and ReStructuredText. The latter requires python-docutils to be installed. Synopsis no longer depends on an external omniidl tool, as its IDL parser is now self-contained. The SXR server has been solidified and optimized. The HTML formatter has been greatly enhanced.


Changes: While this release mainly focusses on an internal redesign, there are still a number of major enhancements and new features. Synopsis now contains a new C parser. Lots of bugfixes were made to the C++ parser. A number of bugfixes were made to the HTML formatter. Synopsis' internals have been largely redesigned to eventually expose public C++ and Python APIs to the lower-level code representations such as parse trees or symbol tables.


Changes: This release adds a refactored cpp processor, a new C parser, a native win32 port, an sxr cross referencer, and many bugfixes, particularly in the C++ parser and the HTML formatter.
Transmits packets from a libpcap or raw file through a specified interface.
- All comments
Recent commentsLooks great
What I've seen of Synopsis so far looks very satisfying - I hope you bring out a perl parser pretty soon, (or ask me for some help on this ;-) cause most of our coding is perl
Keep up the good work!