Example #1
0
        private static InternalSyntax.ExpressionSyntax ParseDebuggerExpressionInternal(
            SourceText source,
            bool consumeFullText
            )
        {
            using var lexer = new InternalSyntax.Lexer(
                      source,
                      ParseOptions,
                      allowPreprocessorDirectives: false
                      );
            using var parser = new InternalSyntax.LanguageParser(
                      lexer,
                      oldTree: null,
                      changes: null,
                      lexerMode: InternalSyntax.LexerMode.DebuggerSyntax
                      );

            var node = parser.ParseExpression();

            if (consumeFullText)
            {
                node = parser.ConsumeUnexpectedTokens(node);
            }
            return(node);
        }
Example #2
0
 private static InternalSyntax.ExpressionSyntax ParseDebuggerExpressionInternal(SourceText source, bool consumeFullText)
 {
     using (var lexer = new InternalSyntax.Lexer(source, CSharpParseOptions.Default, allowPreprocessorDirectives: false))
     {
         using (var parser = new InternalSyntax.LanguageParser(lexer, oldTree: null, changes: null, lexerMode: InternalSyntax.LexerMode.DebuggerSyntax))
         {
             var node = parser.ParseExpression();
             if (consumeFullText) node = parser.ConsumeUnexpectedTokens(node);
             return node;
         }
     }
 }