{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE StrictData #-}
module Headroom.Header.Types
(
HeaderInfo(..)
, HeaderTemplate(..)
)
where
import Headroom.Configuration.Types ( CtHeaderConfig )
import Headroom.FileSupport.TemplateData ( TemplateData )
import Headroom.FileType.Types ( FileType )
import Headroom.Meta ( TemplateType )
import Headroom.Variables.Types ( Variables )
import RIO
data =
{ HeaderInfo -> FileType
hiFileType :: FileType
, :: CtHeaderConfig
, :: Maybe (Int, Int)
, HeaderInfo -> Variables
hiVariables :: Variables
}
deriving (HeaderInfo -> HeaderInfo -> Bool
(HeaderInfo -> HeaderInfo -> Bool)
-> (HeaderInfo -> HeaderInfo -> Bool) -> Eq HeaderInfo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: HeaderInfo -> HeaderInfo -> Bool
$c/= :: HeaderInfo -> HeaderInfo -> Bool
== :: HeaderInfo -> HeaderInfo -> Bool
$c== :: HeaderInfo -> HeaderInfo -> Bool
Eq, Int -> HeaderInfo -> ShowS
[HeaderInfo] -> ShowS
HeaderInfo -> String
(Int -> HeaderInfo -> ShowS)
-> (HeaderInfo -> String)
-> ([HeaderInfo] -> ShowS)
-> Show HeaderInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [HeaderInfo] -> ShowS
$cshowList :: [HeaderInfo] -> ShowS
show :: HeaderInfo -> String
$cshow :: HeaderInfo -> String
showsPrec :: Int -> HeaderInfo -> ShowS
$cshowsPrec :: Int -> HeaderInfo -> ShowS
Show)
data =
{ HeaderTemplate -> CtHeaderConfig
htConfig :: CtHeaderConfig
, HeaderTemplate -> TemplateData
htTemplateData :: TemplateData
, HeaderTemplate -> FileType
htFileType :: FileType
, HeaderTemplate -> TemplateType
htTemplate :: TemplateType
}
deriving (HeaderTemplate -> HeaderTemplate -> Bool
(HeaderTemplate -> HeaderTemplate -> Bool)
-> (HeaderTemplate -> HeaderTemplate -> Bool) -> Eq HeaderTemplate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: HeaderTemplate -> HeaderTemplate -> Bool
$c/= :: HeaderTemplate -> HeaderTemplate -> Bool
== :: HeaderTemplate -> HeaderTemplate -> Bool
$c== :: HeaderTemplate -> HeaderTemplate -> Bool
Eq, Int -> HeaderTemplate -> ShowS
[HeaderTemplate] -> ShowS
HeaderTemplate -> String
(Int -> HeaderTemplate -> ShowS)
-> (HeaderTemplate -> String)
-> ([HeaderTemplate] -> ShowS)
-> Show HeaderTemplate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [HeaderTemplate] -> ShowS
$cshowList :: [HeaderTemplate] -> ShowS
show :: HeaderTemplate -> String
$cshow :: HeaderTemplate -> String
showsPrec :: Int -> HeaderTemplate -> ShowS
$cshowsPrec :: Int -> HeaderTemplate -> ShowS
Show)