Sophie

Sophie

distrib > Mandriva > 2010.1 > x86_64 > by-pkgid > aaf33964de706a538481c929c1da6a44 > files > 2286

faust-doc-0.9.10-5mdv2010.1.x86_64.rpm

<!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/xhtml;charset=UTF-8"/>
<title>FAUST compiler: SourceReader Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>SourceReader Class Reference</h1><!-- doxytag: class="SourceReader" -->
<p><code>#include &lt;<a class="el" href="sourcereader_8hh_source.html">sourcereader.hh</a>&gt;</code></p>

<p><a href="classSourceReader-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSourceReader.html#a40383c73e84a9960cd3bc158744f8ae5">cached</a> (string fname)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if a file as been read and is in the "cache".  <a href="#a40383c73e84a9960cd3bc158744f8ae5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTree.html">Tree</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSourceReader.html#a74a22bf0b47f7c6684999ad82f72b713">getlist</a> (string fname)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the list of definitions file contains.  <a href="#a74a22bf0b47f7c6684999ad82f72b713"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTree.html">Tree</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSourceReader.html#a5c9ca766c1efb427ffdd419517775f44">expandlist</a> (<a class="el" href="classCTree.html">Tree</a> ldef)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the list of definitions where all imports have been expanded.  <a href="#a5c9ca766c1efb427ffdd419517775f44"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">vector&lt; string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSourceReader.html#a02d4fe696337e6e327b14620ed76b626">listSrcFiles</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a vector of pathnames representing the list of all the source files that have been required to evaluate process (those in fFileCache).  <a href="#a02d4fe696337e6e327b14620ed76b626"></a><br/></td></tr>
<tr><td colspan="2"><h2>Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTree.html">Tree</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSourceReader.html#afed53e57be12e2a35cc96137d48b068d">parse</a> (string fname)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse a single faust source file.  <a href="#afed53e57be12e2a35cc96137d48b068d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTree.html">Tree</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSourceReader.html#aabf8441cf5e36e14ff480ae384139ec1">expandrec</a> (<a class="el" href="classCTree.html">Tree</a> ldef, set&lt; string &gt; &amp;visited, <a class="el" href="classCTree.html">Tree</a> lresult)</td></tr>
<tr><td colspan="2"><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">map&lt; string, <a class="el" href="classCTree.html">Tree</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSourceReader.html#a753ead89e2f4443dae6f6e07ea6c97d6">fFileCache</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">vector&lt; string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSourceReader.html#a651efb442eece4b5e9ef1c4babc56197">fFilePathnames</a></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>

<p>Definition at line <a class="el" href="sourcereader_8hh_source.html#l00016">16</a> of file <a class="el" href="sourcereader_8hh_source.html">sourcereader.hh</a>.</p>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a40383c73e84a9960cd3bc158744f8ae5"></a><!-- doxytag: member="SourceReader::cached" ref="a40383c73e84a9960cd3bc158744f8ae5" args="(string fname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool SourceReader::cached </td>
          <td>(</td>
          <td class="paramtype">string&nbsp;</td>
          <td class="paramname"> <em>fname</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Check if a file as been read and is in the "cache". </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fname</em>&nbsp;</td><td>the name of the file to check </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the file is in the cache </dd></dl>

<p>Definition at line <a class="el" href="sourcereader_8cpp_source.html#l00222">222</a> of file <a class="el" href="sourcereader_8cpp_source.html">sourcereader.cpp</a>.</p>

<p>References <a class="el" href="sourcereader_8hh_source.html#l00018">fFileCache</a>.</p>

<p>Referenced by <a class="el" href="sourcereader_8cpp_source.html#l00235">getlist()</a>.</p>

<p><div class="fragment"><pre class="fragment"><a name="l00223"></a>00223 {
<a name="l00224"></a>00224     <span class="keywordflow">return</span> <a class="code" href="classSourceReader.html#a753ead89e2f4443dae6f6e07ea6c97d6">fFileCache</a>.find(fname) != <a class="code" href="classSourceReader.html#a753ead89e2f4443dae6f6e07ea6c97d6">fFileCache</a>.end();
<a name="l00225"></a>00225 }
</pre></div></p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dynsection">
</div>
</p>

</div>
</div>
<a class="anchor" id="a5c9ca766c1efb427ffdd419517775f44"></a><!-- doxytag: member="SourceReader::expandlist" ref="a5c9ca766c1efb427ffdd419517775f44" args="(Tree ldef)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTree.html">Tree</a> SourceReader::expandlist </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTree.html">Tree</a>&nbsp;</td>
          <td class="paramname"> <em>ldef</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the list of definitions where all imports have been expanded. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ldef</em>&nbsp;</td><td>the list of definitions to expand </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the expanded list of definitions </dd></dl>

<p>Definition at line <a class="el" href="sourcereader_8cpp_source.html#l00271">271</a> of file <a class="el" href="sourcereader_8cpp_source.html">sourcereader.cpp</a>.</p>

<p>References <a class="el" href="sourcereader_8cpp_source.html#l00277">expandrec()</a>, and <a class="el" href="list_8cpp_source.html#l00116">nil</a>.</p>

<p>Referenced by <a class="el" href="main_8cpp_source.html#l00475">main()</a>, and <a class="el" href="eval_8cpp_source.html#l00309">realeval()</a>.</p>

<p><div class="fragment"><pre class="fragment"><a name="l00272"></a>00272 {
<a name="l00273"></a>00273     set&lt;string&gt; visited;
<a name="l00274"></a>00274     <span class="keywordflow">return</span> <a class="code" href="classSourceReader.html#aabf8441cf5e36e14ff480ae384139ec1">expandrec</a>(ldef, visited, <a class="code" href="list_8cpp.html#a538b704dd07794b7237108f1917c471e">nil</a>);   
<a name="l00275"></a>00275 }
</pre></div></p>

<p><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
</div>
</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dynsection">
</div>
</p>

</div>
</div>
<a class="anchor" id="aabf8441cf5e36e14ff480ae384139ec1"></a><!-- doxytag: member="SourceReader::expandrec" ref="aabf8441cf5e36e14ff480ae384139ec1" args="(Tree ldef, set&lt; string &gt; &amp;visited, Tree lresult)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTree.html">Tree</a> SourceReader::expandrec </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTree.html">Tree</a>&nbsp;</td>
          <td class="paramname"> <em>ldef</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">set&lt; string &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>visited</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTree.html">Tree</a>&nbsp;</td>
          <td class="paramname"> <em>lresult</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="sourcereader_8cpp_source.html#l00277">277</a> of file <a class="el" href="sourcereader_8cpp_source.html">sourcereader.cpp</a>.</p>

<p>References <a class="el" href="list_8hh_source.html#l00124">cons()</a>, <a class="el" href="sourcereader_8cpp_source.html#l00235">getlist()</a>, <a class="el" href="list_8hh_source.html#l00133">hd()</a>, <a class="el" href="boxes_8cpp_source.html#l00261">isImportFile()</a>, <a class="el" href="list_8hh_source.html#l00137">isNil()</a>, <a class="el" href="list_8hh_source.html#l00134">tl()</a>, and <a class="el" href="tree_8cpp_source.html#l00292">tree2str()</a>.</p>

<p>Referenced by <a class="el" href="sourcereader_8cpp_source.html#l00271">expandlist()</a>.</p>

<p><div class="fragment"><pre class="fragment"><a name="l00278"></a>00278 {
<a name="l00279"></a>00279     <span class="keywordflow">for</span> (;!<a class="code" href="list_8hh.html#a2569c3a07bbbfa55e0afde62de62aeec">isNil</a>(ldef); ldef = <a class="code" href="list_8hh.html#a4075748f5c7156306ec898795313a2e0">tl</a>(ldef)) {
<a name="l00280"></a>00280         <a class="code" href="classCTree.html" title="A CTree = (Node x [CTree]) is a Node associated with a list of subtrees called branches...">Tree</a> d = <a class="code" href="list_8hh.html#a067ad6f83087b420a1c44e48e56be389">hd</a>(ldef); 
<a name="l00281"></a>00281         <a class="code" href="classCTree.html" title="A CTree = (Node x [CTree]) is a Node associated with a list of subtrees called branches...">Tree</a> fname;
<a name="l00282"></a>00282         <span class="keywordflow">if</span> (<a class="code" href="list_8hh.html#a2569c3a07bbbfa55e0afde62de62aeec">isNil</a>(d)) {
<a name="l00283"></a>00283             <span class="comment">// skill null definitions produced by declarations</span>
<a name="l00284"></a>00284         } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="boxes_8cpp.html#a669c5f5ddf58b6f22e1497e24577469b">isImportFile</a>(d,fname)) {
<a name="l00285"></a>00285             <span class="keywordtype">string</span> f = <a class="code" href="tree_8cpp.html#ac753d60778175e30a86cba647db017ad" title="if t has a node of type symbol, return its name otherwise error">tree2str</a>(fname);
<a name="l00286"></a>00286             <span class="comment">//cerr &lt;&lt; &quot;import(&quot; &lt;&lt; f &lt;&lt; &quot;)&quot; &lt;&lt; endl;</span>
<a name="l00287"></a>00287             
<a name="l00288"></a>00288             <span class="comment">//string f = tree2str(fname);</span>
<a name="l00289"></a>00289             <span class="keywordflow">if</span> (visited.find(f) == visited.end()) {
<a name="l00290"></a>00290                 visited.insert(f);
<a name="l00291"></a>00291                 <span class="comment">//Tree l = getlist(f);</span>
<a name="l00292"></a>00292                 lresult = <a class="code" href="classSourceReader.html#aabf8441cf5e36e14ff480ae384139ec1">expandrec</a>(<a class="code" href="classSourceReader.html#a74a22bf0b47f7c6684999ad82f72b713" title="Return the list of definitions file contains.">getlist</a>(f), visited, lresult);
<a name="l00293"></a>00293             }
<a name="l00294"></a>00294             
<a name="l00295"></a>00295         } <span class="keywordflow">else</span> {
<a name="l00296"></a>00296             lresult = <a class="code" href="list_8hh.html#ae1ed153946fcfc025009c6d9c9c40bee">cons</a>(d, lresult);
<a name="l00297"></a>00297         }
<a name="l00298"></a>00298     }
<a name="l00299"></a>00299     <span class="keywordflow">return</span> lresult;
<a name="l00300"></a>00300 }
</pre></div></p>

<p><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
</div>
</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dynsection">
</div>
</p>

</div>
</div>
<a class="anchor" id="a74a22bf0b47f7c6684999ad82f72b713"></a><!-- doxytag: member="SourceReader::getlist" ref="a74a22bf0b47f7c6684999ad82f72b713" args="(string fname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTree.html">Tree</a> SourceReader::getlist </td>
          <td>(</td>
          <td class="paramtype">string&nbsp;</td>
          <td class="paramname"> <em>fname</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the list of definitions file contains. </p>
<p>Cache the result.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fname</em>&nbsp;</td><td>the name of the file to check </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the list of definitions it contains </dd></dl>

<p>Definition at line <a class="el" href="sourcereader_8cpp_source.html#l00235">235</a> of file <a class="el" href="sourcereader_8cpp_source.html">sourcereader.cpp</a>.</p>

<p>References <a class="el" href="sourcereader_8cpp_source.html#l00222">cached()</a>, <a class="el" href="sourcereader_8hh_source.html#l00018">fFileCache</a>, and <a class="el" href="sourcereader_8cpp_source.html#l00186">parse()</a>.</p>

<p>Referenced by <a class="el" href="sourcereader_8cpp_source.html#l00277">expandrec()</a>, and <a class="el" href="eval_8cpp_source.html#l00309">realeval()</a>.</p>

<p><div class="fragment"><pre class="fragment"><a name="l00236"></a>00236 {
<a name="l00237"></a>00237     <span class="keywordflow">if</span> (!<a class="code" href="classSourceReader.html#a40383c73e84a9960cd3bc158744f8ae5" title="Check if a file as been read and is in the &amp;quot;cache&amp;quot;.">cached</a>(fname)) {
<a name="l00238"></a>00238         <a class="code" href="classSourceReader.html#a753ead89e2f4443dae6f6e07ea6c97d6">fFileCache</a>[fname] = <a class="code" href="classSourceReader.html#afed53e57be12e2a35cc96137d48b068d" title="Parse a single faust source file.">parse</a>(fname);
<a name="l00239"></a>00239     }
<a name="l00240"></a>00240     <span class="keywordflow">if</span> (<a class="code" href="classSourceReader.html#a753ead89e2f4443dae6f6e07ea6c97d6">fFileCache</a>[fname] == 0) exit(1);
<a name="l00241"></a>00241     <span class="keywordflow">return</span> <a class="code" href="classSourceReader.html#a753ead89e2f4443dae6f6e07ea6c97d6">fFileCache</a>[fname];
<a name="l00242"></a>00242 }
</pre></div></p>

<p><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
</div>
</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dynsection">
</div>
</p>

</div>
</div>
<a class="anchor" id="a02d4fe696337e6e327b14620ed76b626"></a><!-- doxytag: member="SourceReader::listSrcFiles" ref="a02d4fe696337e6e327b14620ed76b626" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vector&lt; string &gt; SourceReader::listSrcFiles </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return a vector of pathnames representing the list of all the source files that have been required to evaluate process (those in fFileCache). </p>

<p>Definition at line <a class="el" href="sourcereader_8cpp_source.html#l00251">251</a> of file <a class="el" href="sourcereader_8cpp_source.html">sourcereader.cpp</a>.</p>

<p>References <a class="el" href="sourcereader_8hh_source.html#l00019">fFilePathnames</a>.</p>

<p>Referenced by <a class="el" href="doc__autodoc_8cpp_source.html#l00058">declareAutoDoc()</a>, <a class="el" href="main_8cpp_source.html#l00475">main()</a>, <a class="el" href="doc_8cpp_source.html#l00216">printDoc()</a>, and <a class="el" href="doc_8cpp_source.html#l00342">printfaustlistings()</a>.</p>

<p><div class="fragment"><pre class="fragment"><a name="l00252"></a>00252 {
<a name="l00253"></a>00253 <span class="comment">//  vector&lt;string&gt;                      srcfiles;</span>
<a name="l00254"></a>00254 
<a name="l00255"></a>00255 <span class="comment">//  for (map&lt;string, Tree&gt;::const_iterator p = fFileCache.begin(); p != fFileCache.end(); p++) {</span>
<a name="l00256"></a>00256 <span class="comment">//      srcfiles.push_back(p-&gt;first);</span>
<a name="l00257"></a>00257 <span class="comment">//  }</span>
<a name="l00258"></a>00258 
<a name="l00259"></a>00259 <span class="comment">//  return srcfiles;    </span>
<a name="l00260"></a>00260     <span class="keywordflow">return</span> <a class="code" href="classSourceReader.html#a651efb442eece4b5e9ef1c4babc56197">fFilePathnames</a>;
<a name="l00261"></a>00261 }
</pre></div></p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dynsection">
</div>
</p>

</div>
</div>
<a class="anchor" id="afed53e57be12e2a35cc96137d48b068d"></a><!-- doxytag: member="SourceReader::parse" ref="afed53e57be12e2a35cc96137d48b068d" args="(string fname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTree.html">Tree</a> SourceReader::parse </td>
          <td>(</td>
          <td class="paramtype">string&nbsp;</td>
          <td class="paramname"> <em>fname</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Parse a single faust source file. </p>
<p>returns the list of definitions it contains.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fname</em>&nbsp;</td><td>the name of the file to parse </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the list of definitions it contains </dd></dl>

<p>Definition at line <a class="el" href="sourcereader_8cpp_source.html#l00186">186</a> of file <a class="el" href="sourcereader_8cpp_source.html">sourcereader.cpp</a>.</p>

<p>References <a class="el" href="sourcereader_8hh_source.html#l00019">fFilePathnames</a>, <a class="el" href="enrobage_8cpp_source.html#l00258">fopensearch()</a>, <a class="el" href="main_8cpp_source.html#l00079">yyerr</a>, <a class="el" href="errormsg_8cpp_source.html#l00030">yyfilename</a>, <a class="el" href="faustlexer_8cpp_source.html#l00359">yyin</a>, <a class="el" href="faustlexer_8cpp_source.html#l00365">yylineno</a>, and <a class="el" href="faustparser_8cpp_source.html#l01621">yyparse()</a>.</p>

<p>Referenced by <a class="el" href="sourcereader_8cpp_source.html#l00235">getlist()</a>.</p>

<p><div class="fragment"><pre class="fragment"><a name="l00187"></a>00187 {
<a name="l00188"></a>00188     <span class="keywordtype">string</span>  fullpath;
<a name="l00189"></a>00189     
<a name="l00190"></a>00190     <a class="code" href="main_8cpp.html#a22b78670f95f7470a7b16ec70f68c918">yyerr</a> = 0;
<a name="l00191"></a>00191     
<a name="l00192"></a>00192     <a class="code" href="errormsg_8cpp.html#a9500354f82b09216c6c22f5e11e3ea90">yyfilename</a> = fname.c_str();
<a name="l00193"></a>00193     <a class="code" href="main_8cpp.html#a87a127afa8f6c307fbfba10390675406">yyin</a> = <a class="code" href="enrobage_8cpp.html#a1c21ab6ec8fa85af26fc2a335e294d50" title="Try to open the file &amp;lt;filename&amp;gt; searching in various directories.">fopensearch</a>(<a class="code" href="errormsg_8cpp.html#a9500354f82b09216c6c22f5e11e3ea90">yyfilename</a>, fullpath);
<a name="l00194"></a>00194     <span class="keywordflow">if</span> (<a class="code" href="main_8cpp.html#a87a127afa8f6c307fbfba10390675406">yyin</a> == NULL) {
<a name="l00195"></a>00195         fprintf(stderr, <span class="stringliteral">&quot;ERROR : Unable to open file  %s \n&quot;</span>, <a class="code" href="errormsg_8cpp.html#a9500354f82b09216c6c22f5e11e3ea90">yyfilename</a>); 
<a name="l00196"></a>00196         exit(1);
<a name="l00197"></a>00197     }
<a name="l00198"></a>00198     
<a name="l00199"></a>00199     <a class="code" href="errormsg_8hh.html#a5e36364965360da7b7cdfc2188e0af84">yylineno</a> = 1;
<a name="l00200"></a>00200     <span class="keywordtype">int</span> r = <a class="code" href="main_8cpp.html#acd8617a8f2ac0de8bc1cc032cf449e19">yyparse</a>();
<a name="l00201"></a>00201     <span class="keywordflow">if</span> (r) { 
<a name="l00202"></a>00202         fprintf(stderr, <span class="stringliteral">&quot;Parse error : code = %d \n&quot;</span>, r); 
<a name="l00203"></a>00203     }
<a name="l00204"></a>00204     <span class="keywordflow">if</span> (<a class="code" href="main_8cpp.html#a22b78670f95f7470a7b16ec70f68c918">yyerr</a> &gt; 0) {
<a name="l00205"></a>00205         <span class="comment">//fprintf(stderr, &quot;Erreur de parsing 2, count = %d \n&quot;, yyerr); </span>
<a name="l00206"></a>00206         exit(1);
<a name="l00207"></a>00207     }
<a name="l00208"></a>00208 
<a name="l00209"></a>00209     <span class="comment">// we have parsed a valid file</span>
<a name="l00210"></a>00210     <a class="code" href="classSourceReader.html#a651efb442eece4b5e9ef1c4babc56197">fFilePathnames</a>.push_back(fullpath);
<a name="l00211"></a>00211     <span class="keywordflow">return</span> <a class="code" href="main_8cpp.html#ae03dedba3e2f093ff36261c5c37b576c">gResult</a>;
<a name="l00212"></a>00212 }
</pre></div></p>

<p><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
</div>
</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dynsection">
</div>
</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a753ead89e2f4443dae6f6e07ea6c97d6"></a><!-- doxytag: member="SourceReader::fFileCache" ref="a753ead89e2f4443dae6f6e07ea6c97d6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">map&lt;string, <a class="el" href="classCTree.html">Tree</a>&gt; <a class="el" href="classSourceReader.html#a753ead89e2f4443dae6f6e07ea6c97d6">SourceReader::fFileCache</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="sourcereader_8hh_source.html#l00018">18</a> of file <a class="el" href="sourcereader_8hh_source.html">sourcereader.hh</a>.</p>

<p>Referenced by <a class="el" href="sourcereader_8cpp_source.html#l00222">cached()</a>, and <a class="el" href="sourcereader_8cpp_source.html#l00235">getlist()</a>.</p>

</div>
</div>
<a class="anchor" id="a651efb442eece4b5e9ef1c4babc56197"></a><!-- doxytag: member="SourceReader::fFilePathnames" ref="a651efb442eece4b5e9ef1c4babc56197" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vector&lt;string&gt; <a class="el" href="classSourceReader.html#a651efb442eece4b5e9ef1c4babc56197">SourceReader::fFilePathnames</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="sourcereader_8hh_source.html#l00019">19</a> of file <a class="el" href="sourcereader_8hh_source.html">sourcereader.hh</a>.</p>

<p>Referenced by <a class="el" href="sourcereader_8cpp_source.html#l00251">listSrcFiles()</a>, and <a class="el" href="sourcereader_8cpp_source.html#l00186">parse()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="sourcereader_8hh_source.html">sourcereader.hh</a></li>
<li><a class="el" href="sourcereader_8cpp_source.html">sourcereader.cpp</a></li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Thu Apr 29 00:00:24 2010 for FAUST compiler by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>