-- | Configuration for the code generator.
module Data.GI.CodeGen.Config
    ( Config(..)
    ) where

import Data.Text (Text)
import Data.GI.CodeGen.Overrides (Overrides)

data Config = Config {
      -- | GIR name of the module being generated (Gtk, GObject, ...).
      Config -> Text
modName        :: Text,
      -- | Version of the GIR API for the package being generated
      -- ("3.0", "2.0", ...).
      Config -> Text
modVersion     :: Text,
      -- | Haskell package being generated (gi-gtk, gi-gobject, ...).
      Config -> Text
ghcPkgName        :: Text,
      -- | Version of the haskell package ("3.0.35", "2.0.21", ...).
      Config -> Text
ghcPkgVersion     :: Text,
      -- | Whether to print extra info.
      Config -> Bool
verbose        :: Bool,
      -- | List of loaded overrides for the code generator.
      Config -> Overrides
overrides      :: Overrides
    } deriving Int -> Config -> ShowS
[Config] -> ShowS
Config -> String
(Int -> Config -> ShowS)
-> (Config -> String) -> ([Config] -> ShowS) -> Show Config
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Config -> ShowS
showsPrec :: Int -> Config -> ShowS
$cshow :: Config -> String
show :: Config -> String
$cshowList :: [Config] -> ShowS
showList :: [Config] -> ShowS
Show