lex_file


  class lex_file {
  ifstream* is;
  char name[BUFSIZ];
  public:
  lex_file(char *s, char* ext ) : is ( find( s, ext ) ) { strcpy(name,s); }
  ~lex_file() { is->close();
  //cerr << "Closing:" << name << endl;
  if (is) delete is; }
  istream* stream() {  return is; }
  
  void process(iter<term>* l) { (*l)(); }
  };

slide: lex_file