X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;ds=sidebyside;f=lightning-invoice%2Fsrc%2Fde.rs;h=01adf67d1af0816bcc78ddeeacd6473f680b71bf;hb=e94647ca4ebc63be4a8164804d08cf37e4655d6c;hp=529d81a66fc2d791bb170c23655d0cb693dda9ca;hpb=cf0a90b8c0af3bed51d73df0e59954c6cdac6e09;p=rust-lightning diff --git a/lightning-invoice/src/de.rs b/lightning-invoice/src/de.rs index 529d81a6..01adf67d 100644 --- a/lightning-invoice/src/de.rs +++ b/lightning-invoice/src/de.rs @@ -7,7 +7,6 @@ use core::num::ParseIntError; use core::str; use core::str::FromStr; -use bech32; use bech32::{u5, FromBase32}; use bitcoin::{PubkeyHash, ScriptHash}; @@ -21,7 +20,6 @@ use lightning::routing::router::{RouteHint, RouteHintHop}; use num_traits::{CheckedAdd, CheckedMul}; -use secp256k1; use secp256k1::ecdsa::{RecoveryId, RecoverableSignature}; use secp256k1::PublicKey; @@ -326,9 +324,9 @@ impl FromStr for RawHrp { }; Ok(RawHrp { - currency: currency, + currency, raw_amount: amount, - si_prefix: si_prefix, + si_prefix, }) } } @@ -345,7 +343,7 @@ impl FromBase32 for RawDataPart { let tagged = parse_tagged_parts(&data[7..])?; Ok(RawDataPart { - timestamp: timestamp, + timestamp, tagged_fields: tagged, }) } @@ -462,6 +460,8 @@ impl FromBase32 for TaggedField { Ok(TaggedField::PrivateRoute(PrivateRoute::from_base32(field_data)?)), constants::TAG_PAYMENT_SECRET => Ok(TaggedField::PaymentSecret(PaymentSecret::from_base32(field_data)?)), + constants::TAG_PAYMENT_METADATA => + Ok(TaggedField::PaymentMetadata(Vec::::from_base32(field_data)?)), constants::TAG_FEATURES => Ok(TaggedField::Features(InvoiceFeatures::from_base32(field_data)?)), _ => { @@ -518,7 +518,7 @@ impl FromBase32 for ExpiryTime { fn from_base32(field_data: &[u5]) -> Result { match parse_int_be::(field_data, 32) - .map(|t| ExpiryTime::from_seconds(t)) + .map(ExpiryTime::from_seconds) { Some(t) => Ok(t), None => Err(ParseError::IntegerOverflowError), @@ -543,7 +543,7 @@ impl FromBase32 for Fallback { type Err = ParseError; fn from_base32(field_data: &[u5]) -> Result { - if field_data.len() < 1 { + if field_data.is_empty() { return Err(ParseError::UnexpectedEndOfTaggedFields); } @@ -557,7 +557,7 @@ impl FromBase32 for Fallback { } let version = WitnessVersion::try_from(version).expect("0 through 16 are valid SegWit versions"); Ok(Fallback::SegWitProgram { - version: version, + version, program: bytes }) },