Sophie

Sophie

distrib > Fedora > 14 > i386 > by-pkgid > dd7a95aabe1c049ac9f84beede8143d3 > files > 130

synopsis-doc-0.12-4.fc14.i686.rpm

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>The Processor Pipeline</title><link rel="stylesheet" href="synopsis.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /><link rel="start" href="index.html" title="Synopsis Developer's Guide" /><link rel="up" href="python.html" title="Chapter 2. The Python API" /><link rel="prev" href="python.html" title="Chapter 2. The Python API" /><link rel="next" href="parsers.html" title="The Parsers (Cpp, C, Cxx)" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">The Processor Pipeline</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="python.html">Prev</a> </td><th width="60%" align="center">Chapter 2. The Python API</th><td width="20%" align="right"> <a accesskey="n" href="parsers.html">Next</a></td></tr></table></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="pipeline"></a>The Processor Pipeline</h2></div></div></div><p>
        One of synopsis' main goals has been flexibility and extensibility with
        respect to how exactly the parsed data are manipulated. It must be possible
        for users to define their own output format, or their own way to annotate
        the source code in comments.
      </p><p>
        To achieve this flexibility, synopsis defines a <span class="emphasis"><em>Processor</em></span>
        protocol, which allows multiple processors to be chained into processing pipelines.
        This way, a user can define his own pipeline, or even define his own processor.
      </p><p>
        Processors take an ASG as input, and return an ASG as output. One particular
        processor as <span class="type">Formatters.Dump.Processor</span>, which dumps an ASG into
        an XML file. This may be useful for debugging purposes.
      </p><p>
        The scripting language used to define processors in terms of compound processors
        (i.e. pipelines) is documented <a class="ulink" href="http://synopsis.fresco.org/docs/Tutorial/pipeline.html" target="_top">here</a>.
      </p></div><div class="navfooter"><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="python.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="python.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="parsers.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 2. The Python API </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> The Parsers (Cpp, C, Cxx)</td></tr></table></div></body></html>