Skip to content

Commit b8eb6b8

Browse files
authored
Merge pull request #1201 from IntersectMBO/mgalazyn/refactor/replace-address-parser
Replace address parser with the one in cardano-api
2 parents 5452add + a2f81cd commit b8eb6b8

File tree

1 file changed

+4
-19
lines changed
  • cardano-cli/src/Cardano/CLI/EraBased/Common

1 file changed

+4
-19
lines changed

cardano-cli/src/Cardano/CLI/EraBased/Common/Option.hs

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -303,20 +303,13 @@ pStakeVerifier prefix =
303303

304304
pStakeAddress :: Maybe String -> Parser StakeAddress
305305
pStakeAddress prefix =
306-
Opt.option (readerFromParsecParser parseStakeAddress) $
306+
Opt.option (readerFromParsecParser parseAddressAny) $
307307
mconcat
308308
[ Opt.long $ prefixFlag prefix "stake-address"
309309
, Opt.metavar "ADDRESS"
310310
, Opt.help "Target stake address (bech32 format)."
311311
]
312312

313-
parseStakeAddress :: Parsec.Parser StakeAddress
314-
parseStakeAddress = do
315-
str' <- lexPlausibleAddressString
316-
case deserialiseAddress AsStakeAddress str' of
317-
Nothing -> fail $ "invalid address: " <> Text.unpack str'
318-
Just addr -> pure addr
319-
320313
-- | First argument is the optional prefix
321314
pStakeVerificationKeyOrFile :: Maybe String -> Parser (VerificationKeyOrFile StakeKey)
322315
pStakeVerificationKeyOrFile prefix =
@@ -1586,7 +1579,7 @@ pWithdrawal balance =
15861579

15871580
parseWithdrawal :: Parsec.Parser (StakeAddress, Lovelace)
15881581
parseWithdrawal =
1589-
(,) <$> parseStakeAddress <* Parsec.char '+' <*> parseLovelace
1582+
(,) <$> parseAddressAny <* Parsec.char '+' <*> parseLovelace
15901583

15911584
pWithdrawalScriptWitness
15921585
:: BalanceTxExecUnits -> String -> Maybe String -> String -> Parser CliWithdrawalScriptRequirements
@@ -2526,7 +2519,7 @@ pQueryUTxOFilter =
25262519

25272520
pFilterByStakeAddress :: Parser StakeAddress
25282521
pFilterByStakeAddress =
2529-
Opt.option (readerFromParsecParser parseStakeAddress) $
2522+
Opt.option (readerFromParsecParser parseAddressAny) $
25302523
mconcat
25312524
[ Opt.long "address"
25322525
, Opt.metavar "ADDRESS"
@@ -3415,22 +3408,14 @@ pDRepActivity =
34153408
parseTxOutShelleyBasedEra
34163409
:: Parsec.Parser (TxOutDatumAnyEra -> ReferenceScriptAnyEra -> TxOutShelleyBasedEra)
34173410
parseTxOutShelleyBasedEra = do
3418-
addr <- parseShelleyAddress
3411+
addr <- parseAddressAny
34193412
Parsec.spaces
34203413
-- Accept the old style of separating the address and value in a
34213414
-- transaction output:
34223415
Parsec.option () (Parsec.char '+' >> Parsec.spaces)
34233416
val <- parseTxOutMultiAssetValue -- UTxO role works for transaction output
34243417
return (TxOutShelleyBasedEra addr val)
34253418

3426-
-- TODO: replace with parseAddressAny from cardano-api
3427-
parseShelleyAddress :: Parsec.Parser (Address ShelleyAddr)
3428-
parseShelleyAddress = do
3429-
str <- lexPlausibleAddressString
3430-
case deserialiseAddress (AsAddress AsShelleyAddr) str of
3431-
Nothing -> fail $ "invalid address: " <> Text.unpack str
3432-
Just addr -> pure addr
3433-
34343419
parseTxOutAnyEra
34353420
:: Parsec.Parser (TxOutDatumAnyEra -> ReferenceScriptAnyEra -> TxOutAnyEra)
34363421
parseTxOutAnyEra = do

0 commit comments

Comments
 (0)