public DFASimulatorFinite(Dictionary <uint, RERecord> reRecords, EDUFlexStream inputCharStream) { m_reRecords = DeSerializeEDUFLEXOutput("EDUFLEX.out"); m_inputCharStream = inputCharStream; /*foreach (KeyValuePair<uint, RERecord> pair in reRecords) { * m_dfaMultiStates[pair.Key] = new DFAState(); * ResetDFASimulatorState(pair.Key); * }*/ }
static void Main(string[] args) { EDUFlexStream istream = new EDUFlexStream(new FileStream("source.txt", FileMode.Open)); Facade.VerifyRegExp(args); if (Facade.GetOperationModeCode()) { LexerMulti dfaSimulator = new LexerMulti(Facade.M_ReRecords, istream); dfaSimulator.Continue((_, __) => { var edustream = (EDUFlexStream)__; LexerState state = (LexerState)_; //return !edustream.M_EOF && state.M_Match; return(!edustream.M_EOF); }); } else { DFASimulator dfaSimulator = new DFASimulator(Facade.M_ReRecords[0].M_MinDfa, istream); dfaSimulator.Step(); } }