o-clock-0.0.0: Type-safe time library.

Safe HaskellNone
LanguageHaskell2010

Time.Formatting

Description

This module introduces function to format time in desired way.

Examples

>>> seriesF @'[Day, Hour, Minute, Second] (minute 4000)
"2d18h40m"
>>> seriesF @'[Day, Minute, Second] (minute 4000)
"2d1120m"
>>> seriesF @'[Hour, Minute, Second] (sec 3601)
"1h1s"
>>> seriesF @'[Hour, Second, Millisecond] (Time @Minute $ 3 % 2)
"90s"

Synopsis

Documentation

class Series (units :: [Rat]) where Source #

Class for time formatting.

Minimal complete definition

seriesF

Methods

seriesF :: forall (someUnit :: Rat). KnownRatName someUnit => Time someUnit -> String Source #

Instances

Series ([] Rat) Source # 

Methods

seriesF :: KnownRatName someUnit => Time someUnit -> String Source #

(KnownRatName unit, Series units) => Series ((:) Rat unit units) Source # 

Methods

seriesF :: KnownRatName someUnit => Time someUnit -> String Source #

unitsF :: forall unit. KnownRatName unit => Time unit -> String Source #

Similar to seriesF, but formats using all time units of the library.

>>> unitsF $ fortnight 5
"5fn"
>>> unitsF $ minute 4000
"2d18h40m"