Esempio n. 1
0
        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);
             * }*/
        }
Esempio n. 2
0
        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();
            }
        }