{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE TemplateHaskell #-}
module Cardano.Chain.Genesis.Initializer (
GenesisInitializer (..),
TestnetBalanceOptions (..),
FakeAvvmOptions (..),
)
where
import Cardano.Chain.Common (Lovelace)
import Cardano.Prelude
data GenesisInitializer = GenesisInitializer
{ GenesisInitializer -> TestnetBalanceOptions
giTestBalance :: !TestnetBalanceOptions
, GenesisInitializer -> FakeAvvmOptions
giFakeAvvmBalance :: !FakeAvvmOptions
, GenesisInitializer -> Rational
giAvvmBalanceFactor :: !Rational
, GenesisInitializer -> Bool
giUseHeavyDlg :: !Bool
}
deriving (GenesisInitializer -> GenesisInitializer -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GenesisInitializer -> GenesisInitializer -> Bool
$c/= :: GenesisInitializer -> GenesisInitializer -> Bool
== :: GenesisInitializer -> GenesisInitializer -> Bool
$c== :: GenesisInitializer -> GenesisInitializer -> Bool
Eq, Int -> GenesisInitializer -> ShowS
[GenesisInitializer] -> ShowS
GenesisInitializer -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GenesisInitializer] -> ShowS
$cshowList :: [GenesisInitializer] -> ShowS
show :: GenesisInitializer -> String
$cshow :: GenesisInitializer -> String
showsPrec :: Int -> GenesisInitializer -> ShowS
$cshowsPrec :: Int -> GenesisInitializer -> ShowS
Show)
data TestnetBalanceOptions = TestnetBalanceOptions
{ TestnetBalanceOptions -> Word
tboPoors :: !Word
, TestnetBalanceOptions -> Word
tboRichmen :: !Word
, TestnetBalanceOptions -> Lovelace
tboTotalBalance :: !Lovelace
, TestnetBalanceOptions -> Rational
tboRichmenShare :: !Rational
}
deriving (TestnetBalanceOptions -> TestnetBalanceOptions -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: TestnetBalanceOptions -> TestnetBalanceOptions -> Bool
$c/= :: TestnetBalanceOptions -> TestnetBalanceOptions -> Bool
== :: TestnetBalanceOptions -> TestnetBalanceOptions -> Bool
$c== :: TestnetBalanceOptions -> TestnetBalanceOptions -> Bool
Eq, Int -> TestnetBalanceOptions -> ShowS
[TestnetBalanceOptions] -> ShowS
TestnetBalanceOptions -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [TestnetBalanceOptions] -> ShowS
$cshowList :: [TestnetBalanceOptions] -> ShowS
show :: TestnetBalanceOptions -> String
$cshow :: TestnetBalanceOptions -> String
showsPrec :: Int -> TestnetBalanceOptions -> ShowS
$cshowsPrec :: Int -> TestnetBalanceOptions -> ShowS
Show)
data FakeAvvmOptions = FakeAvvmOptions
{ FakeAvvmOptions -> Word
faoCount :: !Word
, FakeAvvmOptions -> Lovelace
faoOneBalance :: !Lovelace
}
deriving (FakeAvvmOptions -> FakeAvvmOptions -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: FakeAvvmOptions -> FakeAvvmOptions -> Bool
$c/= :: FakeAvvmOptions -> FakeAvvmOptions -> Bool
== :: FakeAvvmOptions -> FakeAvvmOptions -> Bool
$c== :: FakeAvvmOptions -> FakeAvvmOptions -> Bool
Eq, Int -> FakeAvvmOptions -> ShowS
[FakeAvvmOptions] -> ShowS
FakeAvvmOptions -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [FakeAvvmOptions] -> ShowS
$cshowList :: [FakeAvvmOptions] -> ShowS
show :: FakeAvvmOptions -> String
$cshow :: FakeAvvmOptions -> String
showsPrec :: Int -> FakeAvvmOptions -> ShowS
$cshowsPrec :: Int -> FakeAvvmOptions -> ShowS
Show, forall x. Rep FakeAvvmOptions x -> FakeAvvmOptions
forall x. FakeAvvmOptions -> Rep FakeAvvmOptions x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep FakeAvvmOptions x -> FakeAvvmOptions
$cfrom :: forall x. FakeAvvmOptions -> Rep FakeAvvmOptions x
Generic)