Skip to content

Commit a492621

Browse files
committed
Fix incomplete pattern match in transaction build using byron address
1 parent 85b6a87 commit a492621

File tree

1 file changed

+23
-35
lines changed
  • cardano-cli/src/Cardano/CLI/EraBased/Transaction

1 file changed

+23
-35
lines changed

cardano-cli/src/Cardano/CLI/EraBased/Transaction/Run.hs

Lines changed: 23 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ module Cardano.CLI.EraBased.Transaction.Run
2929
, runTransactionTxIdCmd
3030
, runTransactionWitnessCmd
3131
, runTransactionSignWitnessCmd
32-
, toTxOutByronEra
3332
, toTxOutInAnyEra
3433
)
3534
where
@@ -1257,15 +1256,6 @@ getAllReferenceInputs
12571256
, map Just readOnlyRefIns
12581257
]
12591258

1260-
toAddressInAnyEra
1261-
:: MonadError TxCmdError m
1262-
=> CardanoEra era
1263-
-> AddressAny
1264-
-> m (AddressInEra era)
1265-
toAddressInAnyEra era addrAny =
1266-
liftEither . first (const $ TxCmdTxFeatureMismatch (anyCardanoEra era) TxFeatureShelleyAddresses) $
1267-
anyAddressInEra era addrAny
1268-
12691259
toTxOutValueInShelleyBasedEra
12701260
:: MonadError TxCmdError m
12711261
=> ShelleyBasedEra era
@@ -1280,49 +1270,47 @@ toTxOutValueInShelleyBasedEra sbe val =
12801270
(\w -> return (TxOutValueShelleyBased sbe (toLedgerValue w val)))
12811271
sbe
12821272

1283-
toTxOutByronEra
1284-
:: MonadError TxCmdError m
1285-
=> TxOutAnyEra
1286-
-> m (TxOut CtxTx ByronEra)
1287-
toTxOutByronEra (TxOutAnyEra addr' val' _ _) = do
1288-
addr <- toAddressInAnyEra ByronEra addr'
1289-
let ada = TxOutValueByron $ selectLovelace val'
1290-
pure $ TxOut addr ada TxOutDatumNone ReferenceScriptNone
1291-
12921273
toTxOutInShelleyBasedEra
12931274
:: ShelleyBasedEra era
12941275
-> TxOutShelleyBasedEra
12951276
-> ExceptT TxCmdError IO (TxOut CtxTx era)
12961277
toTxOutInShelleyBasedEra era (TxOutShelleyBasedEra addr' val' mDatumHash refScriptFp) = do
12971278
let addr = shelleyAddressInEra era addr'
1298-
val <- toTxOutValueInShelleyBasedEra era val'
1279+
mkTxOut era addr val' mDatumHash refScriptFp
1280+
1281+
toTxOutInAnyEra
1282+
:: ShelleyBasedEra era
1283+
-> TxOutAnyEra
1284+
-> ExceptT TxCmdError IO (TxOut CtxTx era)
1285+
toTxOutInAnyEra era (TxOutAnyEra addr' val' mDatumHash refScriptFp) = do
1286+
let addr = anyAddressInShelleyBasedEra era addr'
1287+
mkTxOut era addr val' mDatumHash refScriptFp
1288+
1289+
mkTxOut
1290+
:: ShelleyBasedEra era
1291+
-> AddressInEra era
1292+
-> Value
1293+
-> TxOutDatumAnyEra
1294+
-> ReferenceScriptAnyEra
1295+
-> ExceptT TxCmdError IO (TxOut CtxTx era)
1296+
mkTxOut sbe addr val' mDatumHash refScriptFp = do
1297+
let era = toCardanoEra sbe
1298+
val <- toTxOutValueInShelleyBasedEra sbe val'
12991299

13001300
datum <-
1301-
caseShelleyToMaryOrAlonzoEraOnwards
1302-
(const (pure TxOutDatumNone))
1301+
inEonForEra
1302+
(pure TxOutDatumNone)
13031303
(\wa -> toTxAlonzoDatum wa mDatumHash)
13041304
era
13051305

13061306
refScript <-
13071307
inEonForEra
13081308
(pure ReferenceScriptNone)
13091309
(\wb -> getReferenceScript wb refScriptFp)
1310-
(toCardanoEra era)
1310+
era
13111311

13121312
pure $ TxOut addr val datum refScript
13131313

1314-
-- TODO: toTxOutInAnyEra eventually will not be needed because
1315-
-- byron related functionality will be treated
1316-
-- separately
1317-
toTxOutInAnyEra
1318-
:: ShelleyBasedEra era
1319-
-> TxOutAnyEra
1320-
-> ExceptT TxCmdError IO (TxOut CtxTx era)
1321-
toTxOutInAnyEra era (TxOutAnyEra addr' val' mDatumHash refScriptFp) = shelleyBasedEraConstraints era $ do
1322-
let cEra = toCardanoEra era
1323-
AddressInEra (ShelleyAddressInEra _) addr <- toAddressInAnyEra cEra addr'
1324-
toTxOutInShelleyBasedEra era $ TxOutShelleyBasedEra addr val' mDatumHash refScriptFp
1325-
13261314
getReferenceScript
13271315
:: ()
13281316
=> BabbageEraOnwards era

0 commit comments

Comments
 (0)