Whee.WordBuilder.ProjectV2.ProjectNode.LoadDirectives C# (CSharp) Method

LoadDirectives() private method

private LoadDirectives ( ) : void
return void
        private void LoadDirectives()
        {
            Token indentation = null;
            Token directive = null;

            bool ended = false;

            while (!ended)
            {
                indentation = m_serializer.ReadIndentationToken(this);
                directive = m_serializer.ReadTextToken(this);

                if (directive != null)
                {
                    switch (directive.Text.ToLower())
                    {
                        case "tokens":
                            directive.Type = TokenType.Directive;
                            directive.ProjectNode = new TokenSetNode(m_serializer);
                            directive.ProjectNode.Index = directive.Offset;
                            Children.Add(directive.ProjectNode);
                            break;
                        case "rule":
                            directive.Type = TokenType.Directive;
                            directive.ProjectNode = new RuleNode(m_serializer);
                            directive.ProjectNode.Index = directive.Offset;
                            Children.Add(directive.ProjectNode);
                            break;
                        case "startingrule":
                            directive.Type = TokenType.Directive;
                            directive.ProjectNode = new StartingRuleNode(m_serializer);
                            directive.ProjectNode.Index = directive.Offset;
                            Children.Add(directive.ProjectNode);
                            break;
                        case "column":
                            directive.Type = TokenType.Directive;
                            directive.ProjectNode = new ColumnNode(m_serializer);
                            directive.ProjectNode.Index = directive.Offset;
                            Children.Add(directive.ProjectNode);
                            // LoadColumn();
                            break;
                        default:
                            m_serializer.Warn("'" + directive.Text + "' is not a valid directive.", this);
                            break;
                    }
                }
                else
                {
                    ended = m_serializer.ReadLineBreakToken(this).Length == 0;
                }
            }

            //Token t = m_serializer.ReadToken(TokenType.Directive | TokenType.Indentation | TokenType.LineBreak);
            //while (t != null)
            //{
            //    switch(t.Type)
            //    {
            //    case TokenType.Directive:
            //        switch (t.Text.ToLower())
            //        {
            //        }
            //        break;
            //    }
            //    t = m_serializer.ReadToken(TokenType.Directive | TokenType.Indentation | TokenType.LineBreak);
            //}
        }