FAUST compiler  0.9.9.6b8
sourcereader.hh
Go to the documentation of this file.
00001 #ifndef __SOURCEREADER__
00002 #define __SOURCEREADER__
00003 
00004 #include "boxes.hh"
00005 #include <string>
00006 #include <set>
00007 #include <vector>
00008 
00009 using namespace std;
00010 
00011 Tree formatDefinitions(Tree rldef);
00012 Tree checkRulelist (Tree lrules);
00013 void declareMetadata(Tree key, Tree value);
00014 void declareDoc(Tree t);
00015 
00016 class SourceReader 
00017 {
00018     map<string, Tree>   fFileCache;
00019     vector<string>      fFilePathnames;
00020     Tree parse(string fname);
00021     Tree expandrec(Tree ldef, set<string>& visited, Tree lresult);
00022     
00023 public:
00024     bool cached(string fname);
00025     Tree getlist(string fname);
00026     Tree expandlist(Tree ldef);
00027     vector<string>  listSrcFiles();
00028 };
00029 
00030 
00031 #endif