{-# OPTIONS_GHC -Wall #-} {-# LANGUAGE TemplateHaskell #-} module Data.Aviation.Casr.Logbook.Meta.TrackLog( TrackLog(TrackLog) , HasTrackLog(..) , tracklogUriType , tracklogsource' , tracklogname' ) where import Control.Category ( Category((.)) ) import Control.Lens ( _Just, makeClassy, Traversal' ) import Data.Aviation.Casr.Logbook.Meta.TrackLogType ( TrackLogType ) import Data.Eq(Eq) import Data.Maybe(Maybe(..)) import Data.Ord(Ord) import Data.String(String) import Prelude(Show) data TrackLog = TrackLog { TrackLog -> String _trackloguri :: String , TrackLog -> TrackLogType _tracklogtype :: TrackLogType , TrackLog -> Maybe String _tracklogsource :: Maybe String , TrackLog -> Maybe String _tracklogname :: Maybe String } deriving (TrackLog -> TrackLog -> Bool (TrackLog -> TrackLog -> Bool) -> (TrackLog -> TrackLog -> Bool) -> Eq TrackLog forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: TrackLog -> TrackLog -> Bool == :: TrackLog -> TrackLog -> Bool $c/= :: TrackLog -> TrackLog -> Bool /= :: TrackLog -> TrackLog -> Bool Eq, Eq TrackLog Eq TrackLog => (TrackLog -> TrackLog -> Ordering) -> (TrackLog -> TrackLog -> Bool) -> (TrackLog -> TrackLog -> Bool) -> (TrackLog -> TrackLog -> Bool) -> (TrackLog -> TrackLog -> Bool) -> (TrackLog -> TrackLog -> TrackLog) -> (TrackLog -> TrackLog -> TrackLog) -> Ord TrackLog TrackLog -> TrackLog -> Bool TrackLog -> TrackLog -> Ordering TrackLog -> TrackLog -> TrackLog forall a. Eq a => (a -> a -> Ordering) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> a) -> (a -> a -> a) -> Ord a $ccompare :: TrackLog -> TrackLog -> Ordering compare :: TrackLog -> TrackLog -> Ordering $c< :: TrackLog -> TrackLog -> Bool < :: TrackLog -> TrackLog -> Bool $c<= :: TrackLog -> TrackLog -> Bool <= :: TrackLog -> TrackLog -> Bool $c> :: TrackLog -> TrackLog -> Bool > :: TrackLog -> TrackLog -> Bool $c>= :: TrackLog -> TrackLog -> Bool >= :: TrackLog -> TrackLog -> Bool $cmax :: TrackLog -> TrackLog -> TrackLog max :: TrackLog -> TrackLog -> TrackLog $cmin :: TrackLog -> TrackLog -> TrackLog min :: TrackLog -> TrackLog -> TrackLog Ord, Int -> TrackLog -> ShowS [TrackLog] -> ShowS TrackLog -> String (Int -> TrackLog -> ShowS) -> (TrackLog -> String) -> ([TrackLog] -> ShowS) -> Show TrackLog forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> TrackLog -> ShowS showsPrec :: Int -> TrackLog -> ShowS $cshow :: TrackLog -> String show :: TrackLog -> String $cshowList :: [TrackLog] -> ShowS showList :: [TrackLog] -> ShowS Show) makeClassy ''TrackLog tracklogUriType :: String -> TrackLogType -> TrackLog tracklogUriType :: String -> TrackLogType -> TrackLog tracklogUriType String s TrackLogType t = String -> TrackLogType -> Maybe String -> Maybe String -> TrackLog TrackLog String s TrackLogType t Maybe String forall a. Maybe a Nothing Maybe String forall a. Maybe a Nothing tracklogsource' :: HasTrackLog c => Traversal' c String tracklogsource' :: forall c. HasTrackLog c => Traversal' c String tracklogsource' = (Maybe String -> f (Maybe String)) -> c -> f c forall c. HasTrackLog c => Lens' c (Maybe String) Lens' c (Maybe String) tracklogsource ((Maybe String -> f (Maybe String)) -> c -> f c) -> ((String -> f String) -> Maybe String -> f (Maybe String)) -> (String -> f String) -> c -> f c forall b c a. (b -> c) -> (a -> b) -> a -> c forall {k} (cat :: k -> k -> *) (b :: k) (c :: k) (a :: k). Category cat => cat b c -> cat a b -> cat a c . (String -> f String) -> Maybe String -> f (Maybe String) forall a b (p :: * -> * -> *) (f :: * -> *). (Choice p, Applicative f) => p a (f b) -> p (Maybe a) (f (Maybe b)) _Just tracklogname' :: HasTrackLog c => Traversal' c String tracklogname' :: forall c. HasTrackLog c => Traversal' c String tracklogname' = (Maybe String -> f (Maybe String)) -> c -> f c forall c. HasTrackLog c => Lens' c (Maybe String) Lens' c (Maybe String) tracklogname ((Maybe String -> f (Maybe String)) -> c -> f c) -> ((String -> f String) -> Maybe String -> f (Maybe String)) -> (String -> f String) -> c -> f c forall b c a. (b -> c) -> (a -> b) -> a -> c forall {k} (cat :: k -> k -> *) (b :: k) (c :: k) (a :: k). Category cat => cat b c -> cat a b -> cat a c . (String -> f String) -> Maybe String -> f (Maybe String) forall a b (p :: * -> * -> *) (f :: * -> *). (Choice p, Applicative f) => p a (f b) -> p (Maybe a) (f (Maybe b)) _Just