nscala-time icon indicating copy to clipboard operation
nscala-time copied to clipboard

Possible improvement: DateTime + FiniteDuration syntax

Open GMadorell opened this issue 7 years ago • 0 comments

Hi!

Recently I've seen something missing from this library, the ability to add a duration to a date time. I've written an extension class for this myself, but maybe something similar could be added to nscala-time? If you think that's cool, I could probably work in a PR to add this feature.

import scala.concurrent.duration.FiniteDuration

import org.joda.time.DateTime

object DateTimeSyntax {
  implicit class RichDateTime(dateTime: DateTime) {
    def minus(duration: FiniteDuration): DateTime = dateTime.minusMillis(duration.toMillis.toInt)
    def -(duration: FiniteDuration): DateTime     = minus(duration)
    def plus(duration: FiniteDuration): DateTime  = dateTime.plusMillis(duration.toMillis.toInt)
    def +(duration: FiniteDuration): DateTime     = plus(duration)
  }
}

GMadorell avatar May 18 '17 09:05 GMadorell