cardano-ledger-shelley-1.19.0.0: Shelley Ledger Executable Model
Safe HaskellNone
LanguageHaskell2010

Cardano.Ledger.Shelley.Genesis

Synopsis

Documentation

data ShelleyGenesisStaking Source #

Genesis Shelley staking configuration.

This allows us to configure some initial stake pools and delegation to them, in order to test Praos in a static configuration, without requiring on-chain registration and delegation.

For simplicity, pools defined in the genesis staking do not pay deposits for their registration.

Constructors

ShelleyGenesisStaking 

Fields

  • sgsPoolsListMap (KeyHash 'StakePool) StakePoolParams

    Pools to register

    The key in this map is the hash of the public key of the _pool_. This need not correspond to any payment or staking key, but must correspond to the cold key held by TPraosIsCoreNode.

  • sgsStakeListMap (KeyHash 'Staking) (KeyHash 'StakePool)

    Stake-holding key hash credentials and the pools to delegate that stake to. We require the raw staking key hash in order to:

    • Avoid pointer addresses, which would be tricky when there's no slot or transaction to point to.
    • Avoid script credentials.

Instances

Instances details
FromJSON ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

ToJSON ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

DecCBOR ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

EncCBOR ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

ToKeyValuePairs ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

NFData ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

rnfShelleyGenesisStaking → () #

Monoid ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Semigroup ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Generic ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Associated Types

type Rep ShelleyGenesisStaking 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep ShelleyGenesisStaking = D1 ('MetaData "ShelleyGenesisStaking" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyGenesisStaking" 'PrefixI 'True) (S1 ('MetaSel ('Just "sgsPools") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ListMap (KeyHash 'StakePool) StakePoolParams)) :*: S1 ('MetaSel ('Just "sgsStake") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ListMap (KeyHash 'Staking) (KeyHash 'StakePool)))))
Show ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Eq ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

NoThunks ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep ShelleyGenesisStaking Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep ShelleyGenesisStaking = D1 ('MetaData "ShelleyGenesisStaking" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyGenesisStaking" 'PrefixI 'True) (S1 ('MetaSel ('Just "sgsPools") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ListMap (KeyHash 'StakePool) StakePoolParams)) :*: S1 ('MetaSel ('Just "sgsStake") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ListMap (KeyHash 'Staking) (KeyHash 'StakePool)))))

data ShelleyExtraConfig Source #

Extra configuration for injecting Genesis data

Constructors

ShelleyExtraConfig 

Fields

Instances

Instances details
FromJSON ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

ToJSON ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

DecCBOR ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

EncCBOR ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

ToKeyValuePairs ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

toKeyValuePairsKeyValue e kv ⇒ ShelleyExtraConfig → [kv] Source #

Default ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

NFData ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

rnfShelleyExtraConfig → () #

Generic ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Associated Types

type Rep ShelleyExtraConfig 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep ShelleyExtraConfig = D1 ('MetaData "ShelleyExtraConfig" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyExtraConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "secInitialFunds") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (InjectionData Addr Coin)) :*: (S1 ('MetaSel ('Just "secStakePools") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (InjectionData (KeyHash 'StakePool) StakePoolParams)) :*: S1 ('MetaSel ('Just "secStakeCredentials") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (InjectionData (KeyHash 'Staking) (KeyHash 'StakePool))))))
Show ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Eq ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

NoThunks ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep ShelleyExtraConfig Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep ShelleyExtraConfig = D1 ('MetaData "ShelleyExtraConfig" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyExtraConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "secInitialFunds") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (InjectionData Addr Coin)) :*: (S1 ('MetaSel ('Just "secStakePools") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (InjectionData (KeyHash 'StakePool) StakePoolParams)) :*: S1 ('MetaSel ('Just "secStakeCredentials") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (InjectionData (KeyHash 'Staking) (KeyHash 'StakePool))))))

data ShelleyGenesis Source #

Shelley genesis information

Note that this is needed only for a pure Shelley network, hence it being defined here rather than in its own module. In mainnet, Shelley will transition naturally from Byron, and thus will never have its own genesis information.

Constructors

ShelleyGenesis 

Fields

Instances

Instances details
FromJSON ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

ToJSON ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

FromCBOR ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

ToCBOR ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

DecCBOR ShelleyGenesis Source #

Genesis are always encoded with the version of era they are defined in.

Instance details

Defined in Cardano.Ledger.Shelley.Genesis

EncCBOR ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

ToKeyValuePairs ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

toKeyValuePairsKeyValue e kv ⇒ ShelleyGenesis → [kv] Source #

NFData ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

rnfShelleyGenesis → () #

Generic ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Associated Types

type Rep ShelleyGenesis 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep ShelleyGenesis = D1 ('MetaData "ShelleyGenesis" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyGenesis" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "sgSystemStart") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UTCTime) :*: S1 ('MetaSel ('Just "sgNetworkMagic") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "sgNetworkId") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Network) :*: S1 ('MetaSel ('Just "sgActiveSlotsCoeff") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PositiveUnitInterval))) :*: ((S1 ('MetaSel ('Just "sgSecurityParam") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NonZero Word64)) :*: S1 ('MetaSel ('Just "sgEpochLength") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 EpochSize)) :*: (S1 ('MetaSel ('Just "sgSlotsPerKESPeriod") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64) :*: S1 ('MetaSel ('Just "sgMaxKESEvolutions") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64)))) :*: (((S1 ('MetaSel ('Just "sgSlotLength") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NominalDiffTimeMicro) :*: S1 ('MetaSel ('Just "sgUpdateQuorum") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "sgMaxLovelaceSupply") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64) :*: S1 ('MetaSel ('Just "sgProtocolParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams ShelleyEra)))) :*: ((S1 ('MetaSel ('Just "sgGenDelegs") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (KeyHash 'GenesisRole) GenDelegPair)) :*: S1 ('MetaSel ('Just "sgInitialFunds") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ListMap Addr Coin))) :*: (S1 ('MetaSel ('Just "sgStaking") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ShelleyGenesisStaking) :*: S1 ('MetaSel ('Just "sgExtraConfig") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe ShelleyExtraConfig)))))))
Show ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Eq ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

NoThunks ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep ShelleyGenesis Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep ShelleyGenesis = D1 ('MetaData "ShelleyGenesis" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyGenesis" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "sgSystemStart") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UTCTime) :*: S1 ('MetaSel ('Just "sgNetworkMagic") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "sgNetworkId") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Network) :*: S1 ('MetaSel ('Just "sgActiveSlotsCoeff") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PositiveUnitInterval))) :*: ((S1 ('MetaSel ('Just "sgSecurityParam") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NonZero Word64)) :*: S1 ('MetaSel ('Just "sgEpochLength") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 EpochSize)) :*: (S1 ('MetaSel ('Just "sgSlotsPerKESPeriod") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64) :*: S1 ('MetaSel ('Just "sgMaxKESEvolutions") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64)))) :*: (((S1 ('MetaSel ('Just "sgSlotLength") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NominalDiffTimeMicro) :*: S1 ('MetaSel ('Just "sgUpdateQuorum") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "sgMaxLovelaceSupply") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word64) :*: S1 ('MetaSel ('Just "sgProtocolParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams ShelleyEra)))) :*: ((S1 ('MetaSel ('Just "sgGenDelegs") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (KeyHash 'GenesisRole) GenDelegPair)) :*: S1 ('MetaSel ('Just "sgInitialFunds") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ListMap Addr Coin))) :*: (S1 ('MetaSel ('Just "sgStaking") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ShelleyGenesisStaking) :*: S1 ('MetaSel ('Just "sgExtraConfig") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe ShelleyExtraConfig)))))))

newtype NominalDiffTimeMicro Source #

Unlike NominalDiffTime that supports Pico precision, this type only supports Micro precision.

Instances

Instances details
FromJSON NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

ToJSON NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

DecCBOR NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

EncCBOR NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

NFData NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

rnfNominalDiffTimeMicro → () #

Generic NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Associated Types

type Rep NominalDiffTimeMicro 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep NominalDiffTimeMicro = D1 ('MetaData "NominalDiffTimeMicro" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'True) (C1 ('MetaCons "NominalDiffTimeMicro" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Micro)))
Num NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Fractional NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Real NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Show NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Eq NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Ord NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

NoThunks NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep NominalDiffTimeMicro Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep NominalDiffTimeMicro = D1 ('MetaData "NominalDiffTimeMicro" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'True) (C1 ('MetaCons "NominalDiffTimeMicro" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Micro)))

initialFundsPseudoTxInAddrTxIn Source #

Compute the TxIn of the initial UTxO pseudo-transaction corresponding to the given address in the genesis initial funds.

The Shelley initial UTxO is constructed from the sgInitialFunds which is not a full UTxO but just a map from addresses to coin values.

This gets turned into a UTxO by making a pseudo-transaction for each address, with the 0th output being the coin value. So to spend from the initial UTxO we need this same TxIn to use as an input to the spending transaction.

validateGenesisShelleyGenesisEither [ValidationErr] () Source #

Do some basic sanity checking on the Shelley genesis file.

Streaming injection

data InjectionData k v Source #

Source for injectable data

Constructors

NoInjection

No injection data

InjectionFromFile !FsPath !(Hash Blake2b_256 ByteString)

Load data from a JSON file with hash verification

EmbeddedInjection !(ListMap k v)

Embedded data from memory

Instances

Instances details
(FromJSON k, FromJSON v, FromJSONKey k, Ord k) ⇒ FromJSON (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

(ToJSON k, ToJSON v, ToJSONKey k) ⇒ ToJSON (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

(DecCBOR k, DecCBOR v) ⇒ DecCBOR (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

(EncCBOR k, EncCBOR v) ⇒ EncCBOR (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Default (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

defInjectionData k v Source #

(NFData k, NFData v) ⇒ NFData (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

rnfInjectionData k v → () #

Generic (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Associated Types

type Rep (InjectionData k v) 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep (InjectionData k v) = D1 ('MetaData "InjectionData" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'False) (C1 ('MetaCons "NoInjection" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "InjectionFromFile" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 FsPath) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Hash Blake2b_256 ByteString))) :+: C1 ('MetaCons "EmbeddedInjection" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ListMap k v)))))

Methods

fromInjectionData k v → Rep (InjectionData k v) x #

toRep (InjectionData k v) x → InjectionData k v #

(Show k, Show v) ⇒ Show (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

showsPrecIntInjectionData k v → ShowS #

showInjectionData k v → String #

showList ∷ [InjectionData k v] → ShowS #

(Ord k, Ord v) ⇒ Eq (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

Methods

(==)InjectionData k v → InjectionData k v → Bool #

(/=)InjectionData k v → InjectionData k v → Bool #

(NoThunks k, NoThunks v) ⇒ NoThunks (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep (InjectionData k v) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type Rep (InjectionData k v) = D1 ('MetaData "InjectionData" "Cardano.Ledger.Shelley.Genesis" "cardano-ledger-shelley-1.19.0.0-inplace" 'False) (C1 ('MetaCons "NoInjection" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "InjectionFromFile" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 FsPath) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Hash Blake2b_256 ByteString))) :+: C1 ('MetaCons "EmbeddedInjection" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ListMap k v)))))

foldInjectionData ∷ ∀ k v m h acc. (MonadST m, MonadThrow m, FromJSON v, FromJSONKey k) ⇒ HasFS m h → InjectionData k v → (acc → (k, v) → acc) → acc → m acc Source #

Fold over a source of injected data: for EmbeddedInjection the data is folded in memory, while for InjectionFromFile the data is streamed, hashed, and parsed incrementally, with content hash verification at the end.

Orphan instances

EraGenesis ShelleyEra Source # 
Instance details

Associated Types

type Genesis ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis