00001 #ifndef FSM_PARSER_H 00002 #define FSM_PARSER_H 00003 // $Id: parser.h,v 1.5 2001/08/08 12:33:33 dvermeir Exp $ 00004 #include <iostream> 00005 00006 #include "fsm.h" 00007 #include "ref.h" 00008 #include "nocomment.h" 00009 00011 class Parser { 00012 public: 00014 Parser(istream& is); 00015 00017 ref<Fsm> parse(); 00018 private: 00020 00025 bool parse_states(Fsm::STATES&); 00027 00032 bool parse_syms(Fsm::SYMBOLS&); 00034 00039 bool parse_transition(Fsm::STATES&, Fsm::SYMBOLS&, Fsm::STATES&); 00040 00042 nocommentstream is_; 00043 }; 00044 #endif