pub struct Route {
pub paths: Vec<Vec<RouteHop>>,
pub payment_params: Option<PaymentParameters>,
}
Expand description
A route directs a payment from the sender (us) to the recipient. If the recipient supports MPP, it can take multiple paths. Each path is composed of one or more hops through the network.
Fields
paths: Vec<Vec<RouteHop>>
The list of routes taken for a single (potentially-)multi-part payment. The pubkey of the last RouteHop in each path must be the same. Each entry represents a list of hops, NOT INCLUDING our own, where the last hop is the destination. Thus, this must always be at least length one. While the maximum length of any given path is variable, keeping the length of any path less or equal to 19 should currently ensure it is viable.
payment_params: Option<PaymentParameters>
The payment_params
parameter passed to find_route
.
This is used by ChannelManager
to track information which may be required for retries,
provided back to you via Event::PaymentPathFailed
.
Implementations
sourceimpl Route
impl Route
sourcepub fn get_total_fees(&self) -> u64
pub fn get_total_fees(&self) -> u64
Returns the total amount of fees paid on this Route
.
This doesn’t include any extra payment made to the recipient, which can happen in excess of
the amount passed to find_route
’s params.final_value_msat
.
sourcepub fn get_total_amount(&self) -> u64
pub fn get_total_amount(&self) -> u64
Returns the total amount paid on this Route
, excluding the fees.
Trait Implementations
sourceimpl Writeable for Route
impl Writeable for Route
sourcefn write<W: Writer>(&self, writer: &mut W) -> Result<(), Error>
fn write<W: Writer>(&self, writer: &mut W) -> Result<(), Error>
Writes self out to the given Writer
sourcefn encode(&self) -> Vec<u8>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
fn encode(&self) -> Vec<u8>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
Writes self out to a Vec
sourcefn serialized_length(&self) -> usize
fn serialized_length(&self) -> usize
Gets the length of this object after it has been serialized. This can be overridden to optimize cases where we prepend an object with its length. Read more
impl Eq for Route
impl StructuralEq for Route
impl StructuralPartialEq for Route
Auto Trait Implementations
impl RefUnwindSafe for Route
impl Send for Route
impl Sync for Route
impl Unpin for Route
impl UnwindSafe for Route
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more