public static ParsedValue <string, DateTime> ParseDateTime(this string source, string format, IFormatProvider provider) => ParsedValue.Create(source, DateTime.ParseExact(source, format, provider));
public static ParsedValue <string, decimal> ParseDecimal(this string source, NumberStyles styles, IFormatProvider provider) => ParsedValue.Create(source, decimal.Parse(source, styles, provider));
public static ParsedValue <string, int> ParseInt32(this string source, NumberStyles styles, IFormatProvider provider) => ParsedValue.Create(source, int.Parse(source, styles, CultureInfo.InvariantCulture));
public static ParsedValue <string, double> ParseDouble(this string source, NumberStyles styles, IFormatProvider provider) => ParsedValue.Create(source, double.Parse(source, styles, provider));
public static Func <TSource, ParsedValue <TSource, TValue> > Create <TSource, TValue>(Func <TSource, TValue> parser) => s => ParsedValue.Create(s, parser(s));