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

            return(Parser.ParseInterval <T, TComparer>(input, ElementParsers.GetElementParser <T>()));
        }
        public static bool TryParse(string input, out Interval <T, TComparer> interval)
        {
            if (input is null)
            {
                Throw.ArgumentNullException(nameof(input));
            }

            return(Parser.TryParseInterval(input, ElementParsers.GetTryElementParser <T>(), out interval));
        }
 public static Interval <T, TComparer> Parse(ReadOnlySpan <char> input) => Parser.ParseInterval <T, TComparer>(input, ElementParsers.GetSpanElementParser <T>());
 public static bool TryParse(ReadOnlySpan <char> input, out Interval <T, TComparer> interval) => Parser.TryParseInterval(input, ElementParsers.GetTrySpanElementParser <T>(), out interval);