Skip to content

Commit 1f82219

Browse files
committed
f - Calculate htlc_maximum_msat and effective_capacity using match
1 parent 9bb1179 commit 1f82219

File tree

1 file changed

+13
-15
lines changed

1 file changed

+13
-15
lines changed

lightning/src/routing/network_graph.rs

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -749,21 +749,19 @@ impl<'a> DirectedChannelInfo<'a> {
749749
let htlc_maximum_msat = direction.and_then(|direction| direction.htlc_maximum_msat);
750750
let capacity_msat = channel.capacity_sats.map(|capacity_sats| capacity_sats * 1000);
751751

752-
let effective_capacity = capacity_msat
753-
.map(|capacity_msat| EffectiveCapacity::Total { capacity_msat })
754-
.or_else(|| direction.and_then(|direction| direction.htlc_maximum_msat)
755-
.map(|amount_msat| EffectiveCapacity::MaximumHTLC { amount_msat }))
756-
.unwrap_or(EffectiveCapacity::Unknown);
757-
758-
// TODO: Replace with Option::zip when MSRV is 1.46
759-
let htlc_maximum_msat = match (htlc_maximum_msat, capacity_msat) {
760-
(Some(a), Some(b)) => Some((a, b)),
761-
_ => None,
762-
}
763-
.map(|(htlc_maximum_msat, capacity_msat)| cmp::min(htlc_maximum_msat, capacity_msat))
764-
.or_else(|| htlc_maximum_msat)
765-
.or_else(|| capacity_msat)
766-
.unwrap_or(EffectiveCapacity::Unknown.as_msat());
752+
let (htlc_maximum_msat, effective_capacity) = match (htlc_maximum_msat, capacity_msat) {
753+
(Some(amount_msat), Some(capacity_msat)) => {
754+
let htlc_maximum_msat = cmp::min(amount_msat, capacity_msat);
755+
(htlc_maximum_msat, EffectiveCapacity::Total { capacity_msat })
756+
},
757+
(Some(amount_msat), None) => {
758+
(amount_msat, EffectiveCapacity::MaximumHTLC { amount_msat })
759+
},
760+
(None, Some(capacity_msat)) => {
761+
(capacity_msat, EffectiveCapacity::Total { capacity_msat })
762+
},
763+
(None, None) => (EffectiveCapacity::Unknown.as_msat(), EffectiveCapacity::Unknown),
764+
};
767765

768766
Self {
769767
channel, direction, htlc_maximum_msat, effective_capacity

0 commit comments

Comments
 (0)