Projects / Synopsis


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.

Operating Systems

Recent releases

  •  21 Jul 2010 13:54

    Release Notes: This is a bugfix release, with improvements to all components, including parsers, formatters, and processors.

    •  04 Jan 2009 17:04

      Release Notes: 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.

      •  20 Mar 2008 15:27

        Release Notes: 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.

        •  21 Dec 2006 01:32

          Release Notes: 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.

          •  10 Jun 2005 05:08

            Release Notes: 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.

            Recent comments

            29 Nov 2001 07:23 drsinister

            Looks 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!


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.