{-# LANGUAGE OverloadedStrings #-}
module Media.Timestamp.Formatting
( timef,
timecf,
rangeaf,
)
where
import Formatting
import Media.Timestamp
timef :: Format r (Time -> r)
timef :: Format r (Time -> r)
timef = (Time -> Int) -> Format r (Int -> r) -> Format r (Time -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Time -> Int
hour Format r (Int -> r)
forall a r. Integral a => Format r (a -> r)
int Format r (Time -> r) -> Format r r -> Format r (Time -> r)
forall r a r'. Format r a -> Format r' r -> Format r' a
% Format r r
":" Format r (Time -> r)
-> Format r (Time -> r) -> Format r (Time -> r)
forall a. Semigroup a => a -> a -> a
<> (Time -> Int) -> Format r (Int -> r) -> Format r (Time -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Time -> Int
minute Format r (Int -> r)
forall a r. Integral a => Format r (a -> r)
int Format r (Time -> r) -> Format r r -> Format r (Time -> r)
forall r a r'. Format r a -> Format r' r -> Format r' a
% Format r r
":" Format r (Time -> r)
-> Format r (Time -> r) -> Format r (Time -> r)
forall a. Semigroup a => a -> a -> a
<> (Time -> Int) -> Format r (Int -> r) -> Format r (Time -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Time -> Int
second Format r (Int -> r)
forall a r. Integral a => Format r (a -> r)
int Format r (Time -> r) -> Format r r -> Format r (Time -> r)
forall r a r'. Format r a -> Format r' r -> Format r' a
% Format r r
"." Format r (Time -> r)
-> Format r (Time -> r) -> Format r (Time -> r)
forall a. Semigroup a => a -> a -> a
<> (Time -> Int) -> Format r (Int -> r) -> Format r (Time -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Time -> Int
millisecond Format r (Int -> r)
forall a r. Integral a => Format r (a -> r)
int
timecf :: Format r (Time -> r)
timecf :: Format r (Time -> r)
timecf = (Time -> Int) -> Format r (Int -> r) -> Format r (Time -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Time -> Int
hour Format r (Int -> r)
forall a r. Integral a => Format r (a -> r)
int Format r (Time -> r) -> Format r r -> Format r (Time -> r)
forall r a r'. Format r a -> Format r' r -> Format r' a
% Format r r
":" Format r (Time -> r)
-> Format r (Time -> r) -> Format r (Time -> r)
forall a. Semigroup a => a -> a -> a
<> (Time -> Int) -> Format r (Int -> r) -> Format r (Time -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Time -> Int
minute Format r (Int -> r)
forall a r. Integral a => Format r (a -> r)
int Format r (Time -> r) -> Format r r -> Format r (Time -> r)
forall r a r'. Format r a -> Format r' r -> Format r' a
% Format r r
":" Format r (Time -> r)
-> Format r (Time -> r) -> Format r (Time -> r)
forall a. Semigroup a => a -> a -> a
<> (Time -> Int) -> Format r (Int -> r) -> Format r (Time -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Time -> Int
second Format r (Int -> r)
forall a r. Integral a => Format r (a -> r)
int Format r (Time -> r) -> Format r r -> Format r (Time -> r)
forall r a r'. Format r a -> Format r' r -> Format r' a
% Format r r
"," Format r (Time -> r)
-> Format r (Time -> r) -> Format r (Time -> r)
forall a. Semigroup a => a -> a -> a
<> (Time -> Int) -> Format r (Int -> r) -> Format r (Time -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Time -> Int
millisecond Format r (Int -> r)
forall a r. Integral a => Format r (a -> r)
int
rangeaf :: Format r (Time -> r) -> Format r (Range -> r)
rangeaf :: Format r (Time -> r) -> Format r (Range -> r)
rangeaf Format r (Time -> r)
x = (Range -> Time) -> Format r (Time -> r) -> Format r (Range -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Range -> Time
from Format r (Time -> r)
x Format r (Range -> r) -> Format r r -> Format r (Range -> r)
forall r a r'. Format r a -> Format r' r -> Format r' a
% Format r r
" --> " Format r (Range -> r)
-> Format r (Range -> r) -> Format r (Range -> r)
forall a. Semigroup a => a -> a -> a
<> (Range -> Time) -> Format r (Time -> r) -> Format r (Range -> r)
forall s a r. (s -> a) -> Format r (a -> r) -> Format r (s -> r)
accessed Range -> Time
to Format r (Time -> r)
x