Example #1
0
        private State AddState(DFA.TokenizerState ts)
        {
            if (!states.TryGetValue(ts, out State state))
            {
                state = new State();
                states.Add(ts, state);

                // Populate this state
                state.transitions = new State[16];
                for (int i = 0; i < 16; ++i)
                {
                    state.transitions[i] = AddState(ts.Next(i));
                }

                state.acceptToken = ts.AcceptToken;
            }
            return(state);
        }