Example #1
0
        public virtual void Parse(LookaheadTextReader input, ParserVisitor visitor)
        {
            var results = ParseCore(new SeekableTextReader(input));

            // Replay the results on the visitor
            visitor.Visit(results);
        }
Example #2
0
 public virtual Task CreateParseTask(TextReader input,
                                     ParserVisitor consumer)
 {
     return(new Task(() =>
     {
         try
         {
             Parse(input, consumer);
         }
         catch (OperationCanceledException)
         {
             return; // Just return if we're cancelled.
         }
     }));
 }
Example #3
0
        public static void Visit(this ParserVisitor self, ParserResults result)
        {
            if (self == null)
            {
                throw new ArgumentNullException(nameof(self));
            }

            if (result == null)
            {
                throw new ArgumentNullException(nameof(result));
            }

            result.Document.Accept(self);
            foreach (RazorError error in result.ParserErrors)
            {
                self.VisitError(error);
            }
            self.OnComplete();
        }
Example #4
0
 public virtual void Parse(TextReader input, ParserVisitor visitor)
 {
     Parse(new SeekableTextReader(input), visitor);
 }
Example #5
0
 public virtual Task CreateParseTask(TextReader input,
                                     ParserVisitor consumer)
 {
     return new Task(() =>
     {
         try
         {
             Parse(input, consumer);
         }
         catch (OperationCanceledException)
         {
             return; // Just return if we're cancelled.
         }
     });
 }
Example #6
0
        public virtual void Parse(LookaheadTextReader input, ParserVisitor visitor)
        {
            var results = ParseCore(new SeekableTextReader(input));

            // Replay the results on the visitor
            visitor.Visit(results);
        }
Example #7
0
 public virtual void Parse(TextReader input, ParserVisitor visitor)
 {
     Parse(new SeekableTextReader(input), visitor);
 }