{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE FunctionalDependencies #-} {-# LANGUAGE FlexibleInstances #-} module Data.Aviation.Aip.Day( Day(..) , parseDay , HasDay(..) ) where import Data.Digit(Digit, parsedigit) import Text.Parser.Char(CharParsing) import Papa data Day = Day { _day1 :: Digit , _day2 :: Digit } deriving (Eq, Ord, Show) parseDay :: (CharParsing p, Monad p) => p Day parseDay = Day <$> parsedigit <*> parsedigit makeClassy ''Day