Exemple #1
0
        private static void ParseToken(SimpleTextLexer lexer, SimpleTextContext context)
        {
            switch (lexer.Type)
            {
            case TokenType.Subscript:
                lexer.Next();
                ParseSubscript(lexer, context);
                break;

            case TokenType.Superscript:
                lexer.Next();
                ParseSuperscript(lexer, context);
                break;

            case TokenType.Escaped:
                context.Append(lexer.Content.Span[1]);
                lexer.Next();
                break;

            case TokenType.Newline:
                context.Newline();
                lexer.Next();
                break;

            default:
                context.Append(lexer.Content.ToString());
                lexer.Next();
                break;
            }
        }