public override DvAbsoluteQuantity <DvDateTime, DvDuration> Subtract(DvAmount <DvDuration> b) { DesignByContract.Check.Require(b is DvDuration, "b object must be a DvDuration instance"); DvDuration duration = b as DvDuration; return(this.Subtract(duration)); }
protected override DvAmount <DvDuration> Plus(DvAmount <DvDuration> b) { DesignByContract.Check.Require(this.IsStrictlyComparableTo(b)); DvDuration bObj = b as DvDuration; double result = this.Magnitude + bObj.Magnitude; return(DvDuration.GetDurationByMagnitude(result)); }
public override DvAbsoluteQuantity <DvDate, DvDuration> Add(DvAmount <DvDuration> b) { DesignByContract.Check.Require(b is DvDuration, "b object must be a DvDuration instance"); DvDuration duration = b as DvDuration; Iso8601Duration isoDuration = new Iso8601Duration(duration.Value); Iso8601Date newIsoDate = this.isoDate.Add(isoDuration); return(new DvDate(newIsoDate.ToString())); }