Skip to content

Commit 39a08b0

Browse files
committed
Removed era parameters from raw TxBodies
1 parent 9ce9345 commit 39a08b0

File tree

21 files changed

+127
-234
lines changed

21 files changed

+127
-234
lines changed

eras/allegra/impl/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
## 1.8.0.0
44

5+
* Remove `AllegraTxBody`
6+
* Removed `era` parameter from `AllegraTxBodyRaw`
57
* Move `Annotator` instances to `testlib`
68
* Expose access to `AllegraTxBodyRaw`, `AllegraTxAuxData` and `TimelockRaw`
79
* Expose constructor `MkAllegraTxBody`, `MkTxAuxData` and `MkTimelock`

eras/alonzo/impl/src/Cardano/Ledger/Alonzo/TxBody.hs

Lines changed: 12 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ class (MaryEraTxBody era, AlonzoEraTxOut era) => AlonzoEraTxBody era where
171171

172172
-- ======================================
173173

174-
data AlonzoTxBodyRaw era = AlonzoTxBodyRaw
174+
data AlonzoTxBodyRaw = AlonzoTxBodyRaw
175175
{ atbrInputs :: !(Set TxIn)
176176
, atbrCollateral :: !(Set TxIn)
177177
, atbrOutputs :: !(StrictSeq (TxOut AlonzoEra))
@@ -188,24 +188,16 @@ data AlonzoTxBodyRaw era = AlonzoTxBodyRaw
188188
}
189189
deriving (Generic)
190190

191-
deriving instance
192-
(Era era, Eq (TxOut era), Eq (TxCert era), Eq (PParamsUpdate era)) =>
193-
Eq (AlonzoTxBodyRaw era)
191+
deriving instance Eq AlonzoTxBodyRaw
194192

195-
instance
196-
(Era era, NoThunks (TxOut era), NoThunks (TxCert era), NoThunks (PParamsUpdate era)) =>
197-
NoThunks (AlonzoTxBodyRaw era)
193+
instance NoThunks AlonzoTxBodyRaw
198194

199-
instance
200-
(Era era, NFData (TxOut era), NFData (TxCert era), NFData (PParamsUpdate era)) =>
201-
NFData (AlonzoTxBodyRaw era)
195+
instance NFData AlonzoTxBodyRaw
202196

203-
deriving instance
204-
(Era era, Show (TxOut era), Show (TxCert era), Show (PParamsUpdate era)) =>
205-
Show (AlonzoTxBodyRaw era)
197+
deriving instance Show AlonzoTxBodyRaw
206198

207199
instance Memoized (TxBody AlonzoEra) where
208-
type RawType (TxBody AlonzoEra) = AlonzoTxBodyRaw AlonzoEra
200+
type RawType (TxBody AlonzoEra) = AlonzoTxBodyRaw
209201

210202
data AlonzoTxBodyUpgradeError
211203
= -- | The TxBody contains a protocol parameter update that attempts to update
@@ -215,7 +207,7 @@ data AlonzoTxBodyUpgradeError
215207
deriving (Show)
216208

217209
instance EraTxBody AlonzoEra where
218-
newtype TxBody AlonzoEra = MkAlonzoTxBody (MemoBytes (AlonzoTxBodyRaw AlonzoEra))
210+
newtype TxBody AlonzoEra = MkAlonzoTxBody (MemoBytes AlonzoTxBodyRaw)
219211
deriving (ToCBOR, Generic)
220212
deriving newtype (SafeToHash)
221213
type TxBodyUpgradeError AlonzoEra = AlonzoTxBodyUpgradeError
@@ -454,7 +446,7 @@ pattern AlonzoTxBody
454446

455447
{-# COMPLETE AlonzoTxBody #-}
456448

457-
type instance MemoHashIndex (AlonzoTxBodyRaw era) = EraIndependentTxBody
449+
type instance MemoHashIndex AlonzoTxBodyRaw = EraIndependentTxBody
458450

459451
instance HashAnnotated (TxBody AlonzoEra) EraIndependentTxBody where
460452
hashAnnotated = getMemoSafeHash
@@ -526,10 +518,7 @@ instance EqRaw (TxBody AlonzoEra)
526518
-- | Encodes memoized bytes created upon construction.
527519
instance EncCBOR (TxBody AlonzoEra)
528520

529-
instance
530-
(Era era, EncCBOR (TxOut era), EncCBOR (TxCert era), EncCBOR (PParamsUpdate era)) =>
531-
EncCBOR (AlonzoTxBodyRaw era)
532-
where
521+
instance EncCBOR AlonzoTxBodyRaw where
533522
encCBOR
534523
AlonzoTxBodyRaw
535524
{ atbrInputs
@@ -566,10 +555,7 @@ instance
566555
!> encodeKeyedStrictMaybe 7 atbrAuxDataHash
567556
!> encodeKeyedStrictMaybe 15 atbrTxNetworkId
568557

569-
instance
570-
(Era era, DecCBOR (TxOut era), DecCBOR (TxCert era), DecCBOR (PParamsUpdate era)) =>
571-
DecCBOR (AlonzoTxBodyRaw era)
572-
where
558+
instance DecCBOR AlonzoTxBodyRaw where
573559
decCBOR =
574560
decode $
575561
SparseKeyed
@@ -578,7 +564,7 @@ instance
578564
bodyFields
579565
requiredFields
580566
where
581-
bodyFields :: Word -> Field (AlonzoTxBodyRaw era)
567+
bodyFields :: Word -> Field AlonzoTxBodyRaw
582568
bodyFields 0 = field (\x tx -> tx {atbrInputs = x}) From
583569
bodyFields 1 = field (\x tx -> tx {atbrOutputs = x}) From
584570
bodyFields 2 = field (\x tx -> tx {atbrTxFee = x}) From
@@ -606,7 +592,7 @@ instance
606592
, (2, "fee")
607593
]
608594

609-
emptyAlonzoTxBodyRaw :: AlonzoTxBodyRaw era
595+
emptyAlonzoTxBodyRaw :: AlonzoTxBodyRaw
610596
emptyAlonzoTxBodyRaw =
611597
AlonzoTxBodyRaw
612598
mempty

eras/alonzo/impl/testlib/Test/Cardano/Ledger/Alonzo/Binary/Annotator.hs

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -238,15 +238,9 @@ deriving via
238238
instance
239239
Era era => DecCBOR (Annotator (AlonzoTxAuxData era))
240240

241-
deriving via
242-
Mem (AlonzoTxBodyRaw AlonzoEra)
243-
instance
244-
DecCBOR (Annotator (TxBody AlonzoEra))
241+
deriving via Mem AlonzoTxBodyRaw instance DecCBOR (Annotator (TxBody AlonzoEra))
245242

246-
instance
247-
(Era era, DecCBOR (TxOut era), DecCBOR (TxCert era), DecCBOR (PParamsUpdate era)) =>
248-
DecCBOR (Annotator (AlonzoTxBodyRaw era))
249-
where
243+
instance DecCBOR (Annotator AlonzoTxBodyRaw) where
250244
decCBOR = pure <$> decCBOR
251245

252246
instance

eras/alonzo/impl/testlib/Test/Cardano/Ledger/Alonzo/TreeDiff.hs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,7 @@ instance ToExpr DataHash32
9393
instance ToExpr (CompactForm (Value era)) => ToExpr (AlonzoTxOut era)
9494

9595
-- TxBody
96-
instance
97-
(Era era, ToExpr (TxOut era), ToExpr (TxCert era), ToExpr (PParamsUpdate era)) =>
98-
ToExpr (AlonzoTxBodyRaw era)
96+
instance ToExpr AlonzoTxBodyRaw
9997

10098
instance ToExpr (TxBody AlonzoEra)
10199

eras/babbage/impl/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
## 1.12.0.0
44

5+
* Remove `BabbageTxBody`
6+
* Removed `era` parameter from `BabbageTxBodyRaw`
57
* Move `Annotator` instances to `testlib`
68
* Expose access to `BabbageTxBodyRaw`
79
* Expose constructor `MkBabbageTxBody`

eras/babbage/impl/src/Cardano/Ledger/Babbage/TxBody.hs

Lines changed: 17 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -144,18 +144,18 @@ class (AlonzoEraTxBody era, BabbageEraTxOut era) => BabbageEraTxBody era where
144144

145145
-- ======================================
146146

147-
data BabbageTxBodyRaw era = BabbageTxBodyRaw
147+
data BabbageTxBodyRaw = BabbageTxBodyRaw
148148
{ btbrInputs :: !(Set TxIn)
149149
, btbrCollateralInputs :: !(Set TxIn)
150150
, btbrReferenceInputs :: !(Set TxIn)
151-
, btbrOutputs :: !(StrictSeq (Sized (TxOut era)))
152-
, btbrCollateralReturn :: !(StrictMaybe (Sized (TxOut era)))
151+
, btbrOutputs :: !(StrictSeq (Sized (TxOut BabbageEra)))
152+
, btbrCollateralReturn :: !(StrictMaybe (Sized (TxOut BabbageEra)))
153153
, btbrTotalCollateral :: !(StrictMaybe Coin)
154-
, btbrCerts :: !(StrictSeq (TxCert era))
154+
, btbrCerts :: !(StrictSeq (TxCert BabbageEra))
155155
, btbrWithdrawals :: !Withdrawals
156156
, btbrFee :: !Coin
157157
, btbrValidityInterval :: !ValidityInterval
158-
, btbrUpdate :: !(StrictMaybe (Update era))
158+
, btbrUpdate :: !(StrictMaybe (Update BabbageEra))
159159
, btbrReqSignerHashes :: !(Set (KeyHash 'Witness))
160160
, btbrMint :: !MultiAsset
161161
, -- The spec makes it clear that the mint field is a
@@ -171,10 +171,7 @@ data BabbageTxBodyRaw era = BabbageTxBodyRaw
171171
-- We override this instance because the 'Sized' types also reference their
172172
-- serialisation and as such cannot be compared directly. An alternative would
173173
-- be to derive `EqRaw` for `Sized`.
174-
instance
175-
(Era era, Eq (TxOut era), Eq (TxCert era), Eq (PParamsUpdate era)) =>
176-
EqRaw (BabbageTxBodyRaw era)
177-
where
174+
instance EqRaw BabbageTxBodyRaw where
178175
eqRaw a b =
179176
btbrInputs a == btbrInputs b
180177
&& btbrCollateralInputs a == btbrCollateralInputs b
@@ -202,28 +199,20 @@ instance
202199
&& F.foldl' (\acc (x', y') -> acc && x' `eqUnsized` y') True (StrictSeq.zip x y)
203200
eqUnsized x y = sizedValue x == sizedValue y
204201

205-
type instance MemoHashIndex (BabbageTxBodyRaw era) = EraIndependentTxBody
202+
type instance MemoHashIndex BabbageTxBodyRaw = EraIndependentTxBody
206203

207-
deriving instance
208-
(Era era, Eq (TxOut era), Eq (TxCert era), Eq (PParamsUpdate era)) =>
209-
Eq (BabbageTxBodyRaw era)
204+
deriving instance Eq BabbageTxBodyRaw
210205

211-
instance
212-
(Era era, NoThunks (TxOut era), NoThunks (TxCert era), NoThunks (PParamsUpdate era)) =>
213-
NoThunks (BabbageTxBodyRaw era)
206+
instance NoThunks BabbageTxBodyRaw
214207

215-
instance
216-
(Era era, NFData (TxOut era), NFData (TxCert era), NFData (PParamsUpdate era)) =>
217-
NFData (BabbageTxBodyRaw era)
208+
instance NFData BabbageTxBodyRaw
218209

219-
deriving instance
220-
(Era era, Show (TxOut era), Show (TxCert era), Show (PParamsUpdate era)) =>
221-
Show (BabbageTxBodyRaw era)
210+
deriving instance Show BabbageTxBodyRaw
222211

223212
deriving newtype instance DecCBOR (TxBody BabbageEra)
224213

225214
instance Memoized (TxBody BabbageEra) where
226-
type RawType (TxBody BabbageEra) = BabbageTxBodyRaw BabbageEra
215+
type RawType (TxBody BabbageEra) = BabbageTxBodyRaw
227216

228217
deriving newtype instance NFData (TxBody BabbageEra)
229218

@@ -265,7 +254,7 @@ data BabbageTxBodyUpgradeError
265254
deriving (Eq, Show)
266255

267256
instance EraTxBody BabbageEra where
268-
newtype TxBody BabbageEra = MkBabbageTxBody (MemoBytes (BabbageTxBodyRaw BabbageEra))
257+
newtype TxBody BabbageEra = MkBabbageTxBody (MemoBytes BabbageTxBodyRaw)
269258
deriving newtype (Generic, SafeToHash, ToCBOR)
270259
type TxBodyUpgradeError BabbageEra = BabbageTxBodyUpgradeError
271260

@@ -618,10 +607,7 @@ txnetworkid' = btbrNetworkId . getMemoRawType
618607
-- | Encodes memoized bytes created upon construction.
619608
instance EncCBOR (TxBody BabbageEra)
620609

621-
instance
622-
(Era era, EncCBOR (TxOut era), EncCBOR (TxCert era), EncCBOR (PParamsUpdate era)) =>
623-
EncCBOR (BabbageTxBodyRaw era)
624-
where
610+
instance EncCBOR BabbageTxBodyRaw where
625611
encCBOR
626612
BabbageTxBodyRaw
627613
{ btbrInputs
@@ -664,10 +650,7 @@ instance
664650
!> encodeKeyedStrictMaybe 7 btbrAuxDataHash
665651
!> encodeKeyedStrictMaybe 15 btbrNetworkId
666652

667-
instance
668-
(Era era, DecCBOR (TxOut era), DecCBOR (TxCert era), DecCBOR (PParamsUpdate era)) =>
669-
DecCBOR (BabbageTxBodyRaw era)
670-
where
653+
instance DecCBOR BabbageTxBodyRaw where
671654
decCBOR =
672655
decode $
673656
SparseKeyed
@@ -676,7 +659,7 @@ instance
676659
bodyFields
677660
requiredFields
678661
where
679-
bodyFields :: Word -> Field (BabbageTxBodyRaw era)
662+
bodyFields :: Word -> Field BabbageTxBodyRaw
680663
bodyFields 0 = field (\x tx -> tx {btbrInputs = x}) From
681664
bodyFields 13 = field (\x tx -> tx {btbrCollateralInputs = x}) From
682665
bodyFields 18 = field (\x tx -> tx {btbrReferenceInputs = x}) From
@@ -710,7 +693,7 @@ instance
710693
]
711694
{-# INLINE decCBOR #-}
712695

713-
basicBabbageTxBodyRaw :: BabbageTxBodyRaw era
696+
basicBabbageTxBodyRaw :: BabbageTxBodyRaw
714697
basicBabbageTxBodyRaw =
715698
BabbageTxBodyRaw
716699
mempty

eras/babbage/impl/testlib/Test/Cardano/Ledger/Babbage/Binary/Annotator.hs

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,7 @@ import Cardano.Ledger.Babbage.TxBody
1616
import Cardano.Ledger.Binary
1717
import Test.Cardano.Ledger.Alonzo.Binary.Annotator
1818

19-
deriving via
20-
Mem (BabbageTxBodyRaw BabbageEra)
21-
instance
22-
DecCBOR (Annotator (TxBody BabbageEra))
19+
deriving via Mem BabbageTxBodyRaw instance DecCBOR (Annotator (TxBody BabbageEra))
2320

24-
instance
25-
(Era era, DecCBOR (TxOut era), DecCBOR (TxCert era), DecCBOR (PParamsUpdate era)) =>
26-
DecCBOR (Annotator (BabbageTxBodyRaw era))
27-
where
21+
instance DecCBOR (Annotator BabbageTxBodyRaw) where
2822
decCBOR = pure <$> decCBOR

eras/babbage/impl/testlib/Test/Cardano/Ledger/Babbage/TreeDiff.hs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,7 @@ instance
4848
ToExpr (BabbageTxOut era)
4949

5050
-- TxBody
51-
instance
52-
(Era era, ToExpr (TxOut era), ToExpr (TxCert era), ToExpr (PParamsUpdate era)) =>
53-
ToExpr (BabbageTxBodyRaw era)
51+
instance ToExpr BabbageTxBodyRaw
5452

5553
instance ToExpr (TxBody BabbageEra)
5654

eras/conway/impl/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
## 1.20.0.0
44

5+
* Remove `ConwayTxBody`
6+
* Removed `era` parameter from `ConwayTxBodyRaw`
57
* Add `MkConwayTxBody` and all members of `ConwayTxBodyRaw`:
68
(`ConwayTxBodyRaw`, `ctbrAuxDataHash`, `ctbrCerts`, `ctbrCollateralInputs`,
79
`ctbrCollateralReturn`, `ctbrCurrentTreasuryValue`, `ctbrFee`, `ctbrMint`, `ctbrNetworkId`,

0 commit comments

Comments
 (0)