private void ConvertLexcionToNFA() { //Compact transition char set CompactCharSetManager = m_lexicon.CreateCompactCharSetManager(); NFAConverter converter = new NFAConverter(CompactCharSetManager); NFAState entryState = new NFAState(); NFAModel lexerNFA = new NFAModel(); lexerNFA.AddState(entryState); foreach (var token in m_lexicon.GetTokens()) { NFAModel tokenNFA = token.CreateFiniteAutomatonModel(converter); entryState.AddEdge(tokenNFA.EntryEdge); lexerNFA.AddStates(tokenNFA.States); } lexerNFA.EntryEdge = new NFAEdge(entryState); m_nfa = lexerNFA; }