[Synopsis-changes] Synopsis/Synopsis/demo/C++/GapBuffer synopsis.py,NONE,1.1 Makefile,NONE,1.1

Stefan Seefeld stefan at synopsis.fresco.org
Tue Nov 18 07:33:14 UTC 2003


Update of /cvs/synopsis/Synopsis/demo/C++/GapBuffer
In directory frida:/tmp/cvs-serv25110

Added Files:
	synopsis.py Makefile 
Log Message:
synopsis resurrected. Yay \!

--- NEW FILE: synopsis.py ---
#! /usr/bin/env python

from Synopsis.process import process
from Synopsis.Processor import *
from Synopsis.Parsers import Cxx
from Synopsis.Processors import *
from Synopsis.Formatters import HTML
from Synopsis.Formatters.HTML import Page
from Synopsis.Formatters.HTML.Pages import *
from Synopsis.Formatters import TexInfo

parser = Cxx.Parser(syntax_prefix = 'links',
                    xref_prefix = 'xref')

linker = Composite(Unduplicator(),     # remove duplicate and forward declarations
                   Stripper(),         # strip prefix (see Linker.Stripper.Stripper docs)
                   NameMapper(),       # apply name mapping if any (prefix adding, etc.)
                   SSDComments(),      # filter out any non-'//' comments
                   Grouper1(),         # group declarations according to '@group' tags
                   CommentStripper(),  # strip any 'suspicious' comments
                   Previous(),         # attach '//<-' comments
                   Dummies(),          # drop 'dummy' declarations
                   EmptyNS(),          # skip empty namespaces
                   AccessRestrictor()) # filter out unwanted ('private', say) declarations

xref = XRefCompiler(prefix = 'xref')

html = HTML.Formatter(stylesheet_file = '../../html.css',
                      pages = [FramesIndex(),
                               Scope(),
                               ModuleListing(),
                               ModuleIndexer(),
                               FileListing(),
                               FileIndexer(),
                               FileDetails(),
                               FileSource(prefix='links'),
                               InheritanceTree(),
                               InheritanceGraph(),
                               NameIndex(),
                               XRef(xref_file = 'GapBuffer.xref')])

template = Page.Template(template='sxr.tmpl',
                         copy_files = ['logo.png'])

sxr = HTML.Formatter(stylesheet_file = '../../html.css',
                     pages = [DirBrowse(template = template),
                              Scope(template = template),
                              ModuleListing(template = template),
                              InheritanceTree(template = template),
                              InheritanceGraph(template = template),
                              FileSource(prefix = 'links',
                                         #toc_from = 'XRef',
                                         template = template),
                              RawFile(template = template),
                              NameIndex(template = template),
                              XRef(xref_file = 'GapBuffer.xref',
                                   link_to_scope = True,
                                   template = template)])

texinfo = TexInfo.Formatter()

process(parse = Composite(parser, linker),
        xref = xref,
        link = linker,
        html = html,
        sxr = sxr,
        texinfo = texinfo)

--- NEW FILE: Makefile ---
synopsis := python synopsis.py

all:	html sxr texi pdf

html: GapBuffer.xref GapBuffer.syn
	$(synopsis) html --output=$@ GapBuffer.syn

sxr:	GapBuffer.syn GapBuffer.xref
	$(synopsis) sxr --output=$@ $<

texi:	GapBuffer.texi

pdf:	texi
	texi2pdf Manual.texi

GapBuffer.syn xref/GapBuffer.hh links/GapBuffer.hh: GapBuffer.hh
	$(synopsis) parse --output=$@ $?

GapBuffer.xref: GapBuffer.syn xref/GapBuffer.hh
	$(synopsis) xref --output=$@ $<

GapBuffer.texi:	GapBuffer.syn
	$(synopsis) texinfo --output=$@ $?


clean:
	rm -rf links xref GapBuffer.xref GapBuffer.syn *~ \
           Manual.aux Manual.cp Manual.fn Manual.fns Manual.ky Manual.log \
           Manual.pg Manual.tp Manual.tps Manual.vr Manual.vrs

distclean: clean
	rm -rf html sxr GapBuffer.texi Manual.pdf




More information about the Synopsis-changes mailing list