• silasmariner@programming.dev
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    6 months ago

    They missed out the context code:

    trait DoW { def length: FiniteDuration }
    object Monday extends DoW { override def length = 24.hours }
    ...
    implicit def toDoW(s: String): DoW = s match {
     case "Monday" => Monday
    ...
    }
    var day: DoW = _
    

    (Duration formatting and language identification are left as an exercise for the reader)