Пример #1
0
        private string[,] NFAToTable(NondeterminedFiniteAutomaton nfa)
        {
            List <string> alphabet = new List <string>(nfa.GetAlphabet());

            alphabet.Add(nfa.GetEpsilonName());
            return(StrangeFunc((NamedAutomaton)nfa, new Func <string, string, string>(
                                   (source, symbol) =>
            {
                List <string> tmp = nfa.GetTransitionDestinations(source, symbol).ToList();
                if (tmp == null)
                {
                    return "-";
                }
                else
                {
                    return string.Join(", ", tmp);
                }
            }), alphabet, nfa.GetStartStates()));
        }