public static Interval <T, TComparer> Parse(ReadOnlySpan <char> input, ParseSpan <T> elementParser)
        {
            if (elementParser is null)
            {
                Throw.ArgumentNullException(nameof(elementParser));
            }

            return(Parser.ParseInterval <T, TComparer>(input, elementParser));
        }
Example #2
0
        } // END WriteInfo

        private static void RunTest(ReadOnlySpan <char> span,
                                    int spanLen, Stopwatch stopWatch,
                                    List <int> parsed, ParseSpan parse)
        {
            int start = 0, size = 6;

            stopWatch.Restart();
            while (start + size < spanLen)
            {
                parsed.Add(
                    parse(span.Slice(start, size))
                    );
                NextSlice(ref start, ref size);
            }
            parsed.Add(
                SpanToInt.UseLoop(span.Slice(start, spanLen - start))
                );
            stopWatch.Stop();
        } // END RunTest
Example #3
0
 public SpanElementParser(ParseSpan <T> parser) => _parseSpan = parser;
 public Parser(ParseSpan <T> parser) => _parser = parser;
Example #5
0
 public static CompositeInterval <T> Parse(ReadOnlySpan <char> input, ParseSpan <T> elementParser) => CompositeInterval <T, DefaultValueComparer <T> > .Parse(input, elementParser);