public WeightParser(IParser <Weight> parser, IFormattedParser <Weight> formattedParser)
        {
            Assert.IsNotNull(parser, nameof(parser));
            Assert.IsNotNull(formattedParser, nameof(formattedParser));

            _parser          = parser;
            _formattedParser = formattedParser;
        }
        public LengthParser(IParser <Length> parser, IFormattedParser <Length> formattedParser)
        {
            Assert.IsNotNull(parser, nameof(parser));
            Assert.IsNotNull(formattedParser, nameof(formattedParser));

            _parser          = parser;
            _formattedParser = formattedParser;
        }
 public FormattedQuantityParser(
     IFormattedParser <TUnit> unitParser,
     ILinearQuantityFactory <TQuantity, TUnit> quantityFactory)
     : this(
         valueParser : new FormattedDoubleParser(),
         unitParser : unitParser,
         quantityFactory : quantityFactory)
 {
 }
        public FormattedQuantityParser(
            IFormattedParser <number> valueParser,
            IFormattedParser <TUnit> unitParser,
            ILinearQuantityFactory <TQuantity, TUnit> quantityFactory)
        {
            Assert.IsNotNull(valueParser, nameof(valueParser));
            Assert.IsNotNull(unitParser, nameof(unitParser));
            Assert.IsNotNull(quantityFactory, nameof(quantityFactory));

            _valueParser     = valueParser;
            _unitParser      = unitParser;
            _quantityFactory = quantityFactory;
        }