Merge pull request #887 from valentinewallace/invoice-use-RL-routehint
[rust-lightning] / lightning-invoice / src / de.rs
index df92cacd2a47e64c824fc3ce2b7cab87265d1c48..fe77a93a99b03f9707563f56ea556c56d5ac7c76 100644 (file)
@@ -11,7 +11,7 @@ use bech32::{u5, FromBase32};
 use bitcoin_hashes::Hash;
 use bitcoin_hashes::sha256;
 use lightning::routing::network_graph::RoutingFees;
-use lightning::routing::router::RouteHint;
+use lightning::routing::router::RouteHintHop;
 
 use num_traits::{CheckedAdd, CheckedMul};
 
@@ -430,7 +430,7 @@ impl FromBase32 for TaggedField {
                        constants::TAG_FALLBACK =>
                                Ok(TaggedField::Fallback(Fallback::from_base32(field_data)?)),
                        constants::TAG_ROUTE =>
-                               Ok(TaggedField::Route(Route::from_base32(field_data)?)),
+                               Ok(TaggedField::Route(RouteHint::from_base32(field_data)?)),
                        constants::TAG_PAYMENT_SECRET =>
                                Ok(TaggedField::PaymentSecret(PaymentSecret::from_base32(field_data)?)),
                        _ => {
@@ -567,17 +567,17 @@ impl FromBase32 for Fallback {
        }
 }
 
-impl FromBase32 for Route {
+impl FromBase32 for RouteHint {
        type Err = ParseError;
 
-       fn from_base32(field_data: &[u5]) -> Result<Route, ParseError> {
+       fn from_base32(field_data: &[u5]) -> Result<RouteHint, ParseError> {
                let bytes = Vec::<u8>::from_base32(field_data)?;
 
                if bytes.len() % 51 != 0 {
                        return Err(ParseError::UnexpectedEndOfTaggedFields);
                }
 
-               let mut route_hops = Vec::<RouteHint>::new();
+               let mut route_hops = Vec::<RouteHintHop>::new();
 
                let mut bytes = bytes.as_slice();
                while !bytes.is_empty() {
@@ -587,7 +587,7 @@ impl FromBase32 for Route {
                        let mut channel_id: [u8; 8] = Default::default();
                        channel_id.copy_from_slice(&hop_bytes[33..41]);
 
-                       let hop = RouteHint {
+                       let hop = RouteHintHop {
                                src_node_id: PublicKey::from_slice(&hop_bytes[0..33])?,
                                short_channel_id: parse_int_be(&channel_id, 256).expect("short chan ID slice too big?"),
                                fees: RoutingFees {
@@ -602,7 +602,7 @@ impl FromBase32 for Route {
                        route_hops.push(hop);
                }
 
-               Ok(Route(route_hops))
+               Ok(RouteHint(route_hops))
        }
 }
 
@@ -938,8 +938,8 @@ mod test {
        #[test]
        fn test_parse_route() {
                use lightning::routing::network_graph::RoutingFees;
-               use lightning::routing::router::RouteHint;
-               use ::Route;
+               use lightning::routing::router::RouteHintHop;
+               use ::RouteHint;
                use bech32::FromBase32;
                use de::parse_int_be;
 
@@ -948,8 +948,8 @@ mod test {
                        fqxu92d8lr6fvg0r5gv0heeeqgcrqlnm6jhphu9y00rrhy4grqszsvpcgpy9qqqqqqgqqqqq7qqzq".as_bytes()
                );
 
-               let mut expected = Vec::<RouteHint>::new();
-               expected.push(RouteHint {
+               let mut expected = Vec::<RouteHintHop>::new();
+               expected.push(RouteHintHop {
                        src_node_id: PublicKey::from_slice(
                                &[
                                        0x02u8, 0x9e, 0x03, 0xa9, 0x01, 0xb8, 0x55, 0x34, 0xff, 0x1e, 0x92, 0xc4, 0x3c,
@@ -966,7 +966,7 @@ mod test {
                        htlc_minimum_msat: None,
                        htlc_maximum_msat: None
                });
-               expected.push(RouteHint {
+               expected.push(RouteHintHop {
                        src_node_id: PublicKey::from_slice(
                                &[
                                        0x03u8, 0x9e, 0x03, 0xa9, 0x01, 0xb8, 0x55, 0x34, 0xff, 0x1e, 0x92, 0xc4, 0x3c,
@@ -984,10 +984,10 @@ mod test {
                        htlc_maximum_msat: None
                });
 
-               assert_eq!(Route::from_base32(&input), Ok(Route(expected)));
+               assert_eq!(RouteHint::from_base32(&input), Ok(RouteHint(expected)));
 
                assert_eq!(
-                       Route::from_base32(&[u5::try_from_u8(0).unwrap(); 40][..]),
+                       RouteHint::from_base32(&[u5::try_from_u8(0).unwrap(); 40][..]),
                        Err(ParseError::UnexpectedEndOfTaggedFields)
                );
        }