Skip to content

Commit

Permalink
Merge pull request #2963 from input-output-hk/jj/conway-genesis
Browse files Browse the repository at this point in the history
Conway GenDelegs update
  • Loading branch information
Soupstraw committed Aug 9, 2022
2 parents 66cb664 + 5302e70 commit d4743d8
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 8 deletions.
3 changes: 2 additions & 1 deletion eras/conway/impl/src/Cardano/Ledger/Conway.hs
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
module Cardano.Ledger.Conway (ConwayEra) where

import Cardano.Ledger.Alonzo (reapplyAlonzoTx)
import Cardano.Ledger.Alonzo.Genesis (AlonzoGenesis)
import Cardano.Ledger.Alonzo.TxInfo (ExtendedUTxO (..))
import Cardano.Ledger.Alonzo.TxWitness (TxWitness (..))
import Cardano.Ledger.Babbage.Rules (babbageMinUTxOValue)
Expand All @@ -23,7 +24,7 @@ import Cardano.Ledger.Babbage.Tx
)
import Cardano.Ledger.Babbage.TxInfo (babbageTxInfo)
import Cardano.Ledger.Conway.Era (ConwayEra)
import Cardano.Ledger.Conway.Genesis (AlonzoGenesis, extendPPWithGenesis)
import Cardano.Ledger.Conway.Genesis (extendPPWithGenesis)
import Cardano.Ledger.Conway.PParams (BabbagePParamsHKD (..))
import Cardano.Ledger.Conway.Tx ()
import Cardano.Ledger.Conway.TxBody (BabbageEraTxBody (..))
Expand Down
6 changes: 4 additions & 2 deletions eras/conway/impl/src/Cardano/Ledger/Conway/Genesis.hs
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
module Cardano.Ledger.Conway.Genesis
( AlonzoGenesis (..),
( ConwayGenesis (..),
extendPPWithGenesis,
)
where

import Cardano.Ledger.Alonzo.Genesis (AlonzoGenesis (..))
import Cardano.Ledger.Babbage.Genesis (extendPPWithGenesis)
import Cardano.Ledger.Keys (GenDelegs)

newtype ConwayGenesis crypto = ConwayGenesis (GenDelegs crypto)
16 changes: 11 additions & 5 deletions eras/conway/impl/src/Cardano/Ledger/Conway/Translation.hs
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@
module Cardano.Ledger.Conway.Translation where

import Cardano.Binary (DecoderError)
import Cardano.Ledger.Alonzo.Genesis (AlonzoGenesis)
import Cardano.Ledger.Alonzo.Scripts (AlonzoScript (..))
import qualified Cardano.Ledger.Alonzo.Tx as Alonzo
import Cardano.Ledger.Babbage (BabbageEra)
import Cardano.Ledger.Babbage.PParams (BabbagePParamsHKD (..))
import Cardano.Ledger.Babbage.Tx (AlonzoTx (..))
import Cardano.Ledger.Babbage.TxBody (BabbageTxOut (..), Datum (..))
import Cardano.Ledger.Conway (ConwayEra)
import Cardano.Ledger.Conway.Genesis (ConwayGenesis (..))
import Cardano.Ledger.Conway.Scripts ()
import Cardano.Ledger.Conway.TxOut ()
import qualified Cardano.Ledger.Core as Core
Expand All @@ -33,7 +33,9 @@ import Cardano.Ledger.Era
)
import Cardano.Ledger.Serialization (translateViaCBORAnn)
import Cardano.Ledger.Shelley.API
( EpochState (..),
( DPState (..),
DState (..),
EpochState (..),
NewEpochState (..),
ShelleyGenesis,
StrictMaybe (..),
Expand All @@ -59,7 +61,7 @@ import Data.Coerce

type instance PreviousEra (ConwayEra c) = BabbageEra c

type instance TranslationContext (ConwayEra c) = AlonzoGenesis
type instance TranslationContext (ConwayEra c) = ConwayGenesis c

instance Crypto c => TranslateEra (ConwayEra c) NewEpochState where
translateEra ctxt nes =
Expand Down Expand Up @@ -135,12 +137,16 @@ instance Crypto c => TranslateEra (ConwayEra c) EpochState where
}

instance Crypto c => TranslateEra (ConwayEra c) API.LedgerState where
translateEra ctxt ls =
translateEra ctxt@(ConwayGenesis newGenDelegs) ls =
pure
API.LedgerState
{ API.lsUTxOState = translateEra' ctxt $ API.lsUTxOState ls,
API.lsDPState = API.lsDPState ls
API.lsDPState = updateGenesisKeys $ API.lsDPState ls
}
where
updateGenesisKeys (DPState dstate pstate) = DPState dstate' pstate
where
dstate' = dstate {_genDelegs = newGenDelegs}

instance Crypto c => TranslateEra (ConwayEra c) API.UTxOState where
translateEra ctxt us =
Expand Down

0 comments on commit d4743d8

Please sign in to comment.