{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
module Haskoin.Data (
Network (..),
) where
import Control.DeepSeq
import Data.Binary (Binary (..))
import Data.ByteString (ByteString)
import Data.Bytes.Get
import Data.Bytes.Put
import Data.Bytes.Serial
import Data.List
import Data.Serialize (Serialize (..))
import Data.String
import Data.Text (Text)
import Data.Word (Word32, Word64, Word8)
import GHC.Generics (Generic)
import Haskoin.Block.Common
import Text.Read
data Network = Network
{
Network -> String
getNetworkName :: !String
,
Network -> Word8
getAddrPrefix :: !Word8
,
Network -> Word8
getScriptPrefix :: !Word8
,
Network -> Word8
getSecretPrefix :: !Word8
,
Network -> Word32
getExtPubKeyPrefix :: !Word32
,
Network -> Word32
getExtSecretPrefix :: !Word32
,
Network -> Word32
getNetworkMagic :: !Word32
,
:: !BlockHeader
,
Network -> Int
getMaxBlockSize :: !Int
,
Network -> Word64
getMaxSatoshi :: !Word64
,
Network -> ByteString
getHaskoinUserAgent :: !ByteString
,
Network -> Int
getDefaultPort :: !Int
,
Network -> Bool
getAllowMinDifficultyBlocks :: !Bool
,
Network -> Bool
getPowNoRetargetting :: !Bool
,
Network -> Integer
getPowLimit :: !Integer
,
Network -> (Word32, BlockHash)
getBip34Block :: !(BlockHeight, BlockHash)
,
Network -> Word32
getBip65Height :: !BlockHeight
,
Network -> Word32
getBip66Height :: !BlockHeight
,
Network -> Word32
getTargetTimespan :: !Word32
,
Network -> Word32
getTargetSpacing :: !Word32
,
Network -> [(Word32, BlockHash)]
getCheckpoints :: ![(BlockHeight, BlockHash)]
,
Network -> Word32
getBip44Coin :: !Word32
,
Network -> [String]
getSeeds :: ![String]
,
Network -> Maybe Word32
getSigHashForkId :: !(Maybe Word32)
,
Network -> Maybe Word32
getEdaBlockHeight :: !(Maybe Word32)
,
Network -> Maybe Word32
getDaaBlockHeight :: !(Maybe Word32)
,
Network -> Maybe Word32
getAsertActivationTime :: !(Maybe Word32)
,
Network -> Integer
getAsertHalfLife :: !Integer
,
Network -> Bool
getSegWit :: !Bool
,
Network -> Maybe Text
getCashAddrPrefix :: !(Maybe Text)
,
Network -> Maybe Text
getBech32Prefix :: !(Maybe Text)
,
Network -> Bool
getReplaceByFee :: !Bool
,
Network -> Word32
getHalvingInterval :: !Word32
}
deriving (Network -> Network -> Bool
(Network -> Network -> Bool)
-> (Network -> Network -> Bool) -> Eq Network
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Network -> Network -> Bool
$c/= :: Network -> Network -> Bool
== :: Network -> Network -> Bool
$c== :: Network -> Network -> Bool
Eq, Int -> Network -> ShowS
[Network] -> ShowS
Network -> String
(Int -> Network -> ShowS)
-> (Network -> String) -> ([Network] -> ShowS) -> Show Network
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Network] -> ShowS
$cshowList :: [Network] -> ShowS
show :: Network -> String
$cshow :: Network -> String
showsPrec :: Int -> Network -> ShowS
$cshowsPrec :: Int -> Network -> ShowS
Show, ReadPrec [Network]
ReadPrec Network
Int -> ReadS Network
ReadS [Network]
(Int -> ReadS Network)
-> ReadS [Network]
-> ReadPrec Network
-> ReadPrec [Network]
-> Read Network
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Network]
$creadListPrec :: ReadPrec [Network]
readPrec :: ReadPrec Network
$creadPrec :: ReadPrec Network
readList :: ReadS [Network]
$creadList :: ReadS [Network]
readsPrec :: Int -> ReadS Network
$creadsPrec :: Int -> ReadS Network
Read, (forall x. Network -> Rep Network x)
-> (forall x. Rep Network x -> Network) -> Generic Network
forall x. Rep Network x -> Network
forall x. Network -> Rep Network x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep Network x -> Network
$cfrom :: forall x. Network -> Rep Network x
Generic, Network -> ()
(Network -> ()) -> NFData Network
forall a. (a -> ()) -> NFData a
rnf :: Network -> ()
$crnf :: Network -> ()
NFData)