{-# LANGUAGE AllowAmbiguousTypes #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE ScopedTypeVariables #-}
module Cardano.Ledger.Shelley.LedgerState (
AccountState (..),
CertState (..),
DState (..),
VState (..),
rewards,
delegations,
ptrsMap,
EpochState (..),
PulsingRewUpdate (..),
FutureGenDeleg (..),
InstantaneousRewards (..),
LedgerState (..),
PState (..),
RewardAccounts,
RewardUpdate (..),
RewardSnapShot (..),
UTxOState (..),
smartUTxOState,
IncrementalStake (..),
genesisState,
consumed,
produced,
payPoolDeposit,
refundPoolDeposit,
totalObligation,
allObligations,
incrementalStakeDistr,
updateStakeDistribution,
applyRUpd,
applyRUpdFiltered,
filterAllRewards,
FilteredRewards (..),
createRUpd,
completeRupd,
startStep,
pulseStep,
completeStep,
NewEpochState (NewEpochState, nesEL, nesEs, nesRu, nesPd, nesBprev, nesBcur),
StashedAVVMAddresses,
stashedAVVMAddresses,
getGKeys,
updateNES,
circulation,
decayFactor,
returnRedeemAddrsToReserves,
updateNonMyopic,
emptyRewardUpdate,
pvCanFollow,
availableAfterMIR,
ShelleyGovState (..),
nesPdL,
nesEsL,
unifiedL,
nesELL,
nesBprevL,
nesBcurL,
nesRuL,
nesStashedAVVMAddressesL,
nesEpochStateL,
esAccountStateL,
esSnapshotsL,
esLStateL,
esNonMyopicL,
curPParamsEpochStateL,
prevPParamsEpochStateL,
futurePParamsEpochStateL,
asTreasuryL,
asReservesL,
lsUTxOStateL,
lsCertStateL,
utxosUtxoL,
utxosDepositedL,
utxosFeesL,
utxosGovStateL,
utxosStakeDistrL,
utxosDonationL,
epochStateGovStateL,
epochStateStakeDistrL,
epochStateUMapL,
epochStatePoolParamsL,
epochStateRegDrepL,
epochStateIncrStakeDistrL,
epochStateDonationL,
newEpochStateGovStateL,
epochStateTreasuryL,
certDStateL,
certPStateL,
certVStateL,
dsUnifiedL,
dsGenDelegsL,
dsIRewardsL,
dsFutureGenDelegsL,
psStakePoolParamsL,
psFutureStakePoolParamsL,
psRetiringL,
psDepositsL,
vsDRepsL,
vsCommitteeStateL,
credMapL,
ptrMapL,
ssStakeMarkL,
ssStakeMarkPoolDistrL,
ssStakeSetL,
ssStakeGoL,
ssFeeL,
ssStakeL,
ssStakeDistrL,
ssDelegationsL,
ssPoolParamsL,
) where
import Cardano.Ledger.CertState
import Cardano.Ledger.EpochBoundary (
ssDelegationsL,
ssFeeL,
ssPoolParamsL,
ssStakeDistrL,
ssStakeGoL,
ssStakeL,
ssStakeMarkL,
ssStakeMarkPoolDistrL,
ssStakeSetL,
)
import Cardano.Ledger.Shelley.LedgerState.IncrementalStake
import Cardano.Ledger.Shelley.LedgerState.NewEpochState
import Cardano.Ledger.Shelley.LedgerState.PulsingReward
import Cardano.Ledger.Shelley.LedgerState.Types
import Cardano.Ledger.Shelley.PParams (pvCanFollow)
import Cardano.Ledger.Shelley.RewardUpdate
import Cardano.Ledger.Shelley.Rules.Ppup (ShelleyGovState (..))
import Cardano.Ledger.Shelley.UTxO (consumed, produced)