Example #1
0
        public ParseResult <TResult> Parse(ReadOnlySpan <TSource> data, int start, ParserTrace trace)
        {
            var result = _parse(data, start, trace);

            if (!result.Success && trace != null)
            {
                if (start > trace.Position)
                {
                    trace.Position = start;
                    trace.Parsers.Clear();
                }

                trace.Parsers.Add(Name ?? "(anonymous)");
            }

            return(result);
        }
Example #2
0
 public ParseResult <TResult> Parse(ReadOnlySpan <TSource> data, ParserTrace trace)
 {
     return(Parse(data, 0, trace));
 }