Skip to content

Commit 871c3f3

Browse files
committed
Switch to using TxCert type family
Instead of using the `ConwayTxCert` concrete type. This will be helpful when we start defining a new era.
1 parent 0504345 commit 871c3f3

File tree

6 files changed

+19
-24
lines changed

6 files changed

+19
-24
lines changed

eras/conway/impl/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
## 1.19.0.0
44

5+
* Switch `ctbrCerts` to use `TxCert` instead of `ConwayTxCert`
56
* Add `DecCBOR` instance for `ConwayTxBody`
67
* Converted `CertState` to a type family
78
* Remove `ConwayMempoolPredFailure` and `ConwayMempoolEvent`

eras/conway/impl/src/Cardano/Ledger/Conway/Rules/Cert.hs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
{-# LANGUAGE FlexibleContexts #-}
55
{-# LANGUAGE LambdaCase #-}
66
{-# LANGUAGE MultiParamTypeClasses #-}
7-
{-# LANGUAGE NamedFieldPuns #-}
87
{-# LANGUAGE OverloadedStrings #-}
98
{-# LANGUAGE RankNTypes #-}
109
{-# LANGUAGE RecordWildCards #-}

eras/conway/impl/src/Cardano/Ledger/Conway/TxBody/Internal.hs

Lines changed: 14 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
{-# LANGUAGE StandaloneDeriving #-}
1616
{-# LANGUAGE TypeApplications #-}
1717
{-# LANGUAGE TypeFamilies #-}
18-
{-# LANGUAGE TypeOperators #-}
1918
{-# LANGUAGE UndecidableInstances #-}
2019
{-# LANGUAGE UndecidableSuperClasses #-}
2120
{-# LANGUAGE ViewPatterns #-}
@@ -98,7 +97,6 @@ import Cardano.Ledger.Conway.PParams (ConwayEraPParams, ppGovActionDepositL)
9897
import Cardano.Ledger.Conway.Scripts (ConwayEraScript, ConwayPlutusPurpose (..))
9998
import Cardano.Ledger.Conway.TxCert (
10099
ConwayEraTxCert,
101-
ConwayTxCert (..),
102100
ConwayTxCertUpgradeError,
103101
)
104102
import Cardano.Ledger.Conway.TxOut ()
@@ -138,7 +136,7 @@ data ConwayTxBodyRaw era = ConwayTxBodyRaw
138136
, ctbrOutputs :: !(StrictSeq (Sized (TxOut era)))
139137
, ctbrCollateralReturn :: !(StrictMaybe (Sized (TxOut era)))
140138
, ctbrTotalCollateral :: !(StrictMaybe Coin)
141-
, ctbrCerts :: !(OSet.OSet (ConwayTxCert era))
139+
, ctbrCerts :: !(OSet.OSet (TxCert era))
142140
, ctbrWithdrawals :: !Withdrawals
143141
, ctbrTxfee :: !Coin
144142
, ctbrVldt :: !ValidityInterval
@@ -154,25 +152,24 @@ data ConwayTxBodyRaw era = ConwayTxBodyRaw
154152
}
155153
deriving (Generic, Typeable)
156154

157-
deriving instance (EraPParams era, Eq (TxOut era)) => Eq (ConwayTxBodyRaw era)
155+
deriving instance (EraPParams era, Eq (TxCert era), Eq (TxOut era)) => Eq (ConwayTxBodyRaw era)
158156

159157
instance
160-
(EraPParams era, NoThunks (TxOut era)) =>
158+
(EraPParams era, NoThunks (TxCert era), NoThunks (TxOut era)) =>
161159
NoThunks (ConwayTxBodyRaw era)
162160

163161
instance
164-
(EraPParams era, NFData (TxOut era)) =>
162+
(EraPParams era, NFData (TxCert era), NFData (TxOut era)) =>
165163
NFData (ConwayTxBodyRaw era)
166164

167165
deriving instance
168-
(EraPParams era, Show (TxOut era)) =>
166+
(EraPParams era, Show (TxCert era), Show (TxOut era)) =>
169167
Show (ConwayTxBodyRaw era)
170168

171169
instance
172170
( EraPParams era
171+
, EraTxCert era
173172
, DecCBOR (TxOut era)
174-
, ShelleyEraTxCert era
175-
, TxCert era ~ ConwayTxCert era
176173
) =>
177174
DecCBOR (ConwayTxBodyRaw era)
178175
where
@@ -269,26 +266,25 @@ newtype ConwayTxBody era = TxBodyConstr (MemoBytes (ConwayTxBodyRaw era))
269266

270267
deriving newtype instance
271268
( EraPParams era
269+
, EraTxCert era
272270
, DecCBOR (TxOut era)
273-
, ShelleyEraTxCert era
274-
, TxCert era ~ ConwayTxCert era
275271
) =>
276272
DecCBOR (ConwayTxBody era)
277273

278274
deriving instance
279-
(EraPParams era, NoThunks (TxOut era)) =>
275+
(EraPParams era, NoThunks (TxOut era), NoThunks (TxCert era)) =>
280276
NoThunks (ConwayTxBody era)
281277

282278
deriving instance
283-
(EraPParams era, Eq (TxOut era)) =>
279+
(EraPParams era, Eq (TxOut era), Eq (TxCert era)) =>
284280
Eq (ConwayTxBody era)
285281

286282
deriving newtype instance
287-
(EraPParams era, NFData (TxOut era)) =>
283+
(EraPParams era, NFData (TxOut era), NFData (TxCert era)) =>
288284
NFData (ConwayTxBody era)
289285

290286
deriving instance
291-
(EraPParams era, Show (TxOut era)) =>
287+
(EraPParams era, Show (TxOut era), Show (TxCert era)) =>
292288
Show (ConwayTxBody era)
293289

294290
type instance MemoHashIndex (ConwayTxBodyRaw era) = EraIndependentTxBody
@@ -298,9 +294,8 @@ instance HashAnnotated (ConwayTxBody era) EraIndependentTxBody where
298294

299295
instance
300296
( DecCBOR (TxOut era)
297+
, EraTxCert era
301298
, EraPParams era
302-
, ShelleyEraTxCert era
303-
, TxCert era ~ ConwayTxCert era
304299
) =>
305300
DecCBOR (Annotator (ConwayTxBodyRaw era))
306301
where
@@ -310,9 +305,8 @@ deriving via
310305
Mem (ConwayTxBodyRaw era)
311306
instance
312307
( DecCBOR (TxOut era)
308+
, EraTxCert era
313309
, EraPParams era
314-
, ShelleyEraTxCert era
315-
, TxCert era ~ ConwayTxCert era
316310
) =>
317311
DecCBOR (Annotator (ConwayTxBody era))
318312

@@ -561,7 +555,7 @@ pattern ConwayTxBody ::
561555
StrictSeq (Sized (TxOut era)) ->
562556
StrictMaybe (Sized (TxOut era)) ->
563557
StrictMaybe Coin ->
564-
OSet.OSet (ConwayTxCert era) ->
558+
OSet.OSet (TxCert era) ->
565559
Withdrawals ->
566560
Coin ->
567561
ValidityInterval ->

eras/conway/impl/testlib/Test/Cardano/Ledger/Conway/Arbitrary.hs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -544,6 +544,7 @@ instance
544544
, Arbitrary (Value era)
545545
, Arbitrary (Script era)
546546
, Arbitrary (PParamsUpdate era)
547+
, Arbitrary (TxCert era)
547548
) =>
548549
Arbitrary (ConwayTxBody era)
549550
where

eras/conway/impl/testlib/Test/Cardano/Ledger/Conway/TreeDiff.hs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,11 +165,11 @@ instance
165165

166166
-- TxBody
167167
instance
168-
(EraPParams era, ToExpr (PParamsHKD StrictMaybe era), ToExpr (TxOut era)) =>
168+
(EraPParams era, ToExpr (PParamsHKD StrictMaybe era), ToExpr (TxOut era), ToExpr (TxCert era)) =>
169169
ToExpr (ConwayTxBodyRaw era)
170170

171171
instance
172-
(EraPParams era, ToExpr (PParamsHKD StrictMaybe era), ToExpr (TxOut era)) =>
172+
(EraPParams era, ToExpr (PParamsHKD StrictMaybe era), ToExpr (TxOut era), ToExpr (TxCert era)) =>
173173
ToExpr (ConwayTxBody era)
174174

175175
-- Rules/Cert

libs/cardano-ledger-test/src/Test/Cardano/Ledger/Generic/Same.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -530,7 +530,7 @@ sameConwayTxBody
530530
, ("Outputs", eqVia (ppList (pcTxOut proof . sizedValue) . toList) o1 o2)
531531
, ("ColReturn", eqVia (ppStrictMaybe (pcTxOut proof . sizedValue)) cr1 cr2)
532532
, ("TotalCol", eqVia (ppStrictMaybe pcCoin) tc1 tc2)
533-
, ("Certs", eqVia (ppList pcConwayTxCert . toList) c1 c2)
533+
, ("Certs", eqVia (ppList (pcTxCert proof) . toList) c1 c2)
534534
, ("WDRL", eqVia (ppMap pcRewardAccount pcCoin) w1 w2)
535535
, ("Fee", eqVia pcCoin f1 f2)
536536
, ("ValidityInterval", eqVia ppValidityInterval v1 v2)

0 commit comments

Comments
 (0)