QUT.GPGen.CodeGenerator.GenerateTokens C# (CSharp) Method

GenerateTokens() private method

private GenerateTokens ( Terminal>.Dictionary terminals, StreamWriter writer ) : void
terminals Terminal>.Dictionary
writer System.IO.StreamWriter
return void
        private void GenerateTokens(Dictionary<string, Terminal> terminals, StreamWriter writer)
        {
            Console.Write("{0} enum {1} {{", grammar.Visibility, grammar.TokenName);
            bool first = true;
            foreach (Terminal terminal in terminals.Values)
                if (terminal.symbolic)
                {
                    if (!first)
                        Console.Write(",");
                    if (terminal.num % 6 == 1)
                    {
                        Console.WriteLine();
                        Console.Write("    ");
                    }
                    Console.Write("{0}={1}", terminal.EnumName(), terminal.num);
                    first = false;
                    if (writer != null)
                        writer.WriteLine("\t{0}.{1} /* {2} */",
                            grammar.TokenName, terminal.EnumName(), terminal.num);
                }

            Console.WriteLine("};");
            Console.WriteLine();
        }