1 namespace org { namespace ldk { namespace enums {/**
2 * Indicates an immediate error on [`ChannelManager::send_payment`]. Further errors may be
3 * surfaced later via [`Event::PaymentPathFailed`] and [`Event::PaymentFailed`].
5 * [`ChannelManager::send_payment`]: crate::ln::channelmanager::ChannelManager::send_payment
6 * [`Event::PaymentPathFailed`]: crate::events::Event::PaymentPathFailed
7 * [`Event::PaymentFailed`]: crate::events::Event::PaymentFailed
9 public enum RetryableSendFailure {
11 * The provided [`PaymentParameters::expiry_time`] indicated that the payment has expired. Note
12 * that this error is *not* caused by [`Retry::Timeout`].
14 * [`PaymentParameters::expiry_time`]: crate::routing::router::PaymentParameters::expiry_time
16 LDKRetryableSendFailure_PaymentExpired,
18 * We were unable to find a route to the destination.
20 LDKRetryableSendFailure_RouteNotFound,
22 * Indicates that a payment for the provided [`PaymentId`] is already in-flight and has not
23 * yet completed (i.e. generated an [`Event::PaymentSent`] or [`Event::PaymentFailed`]).
25 * [`PaymentId`]: crate::ln::channelmanager::PaymentId
26 * [`Event::PaymentSent`]: crate::events::Event::PaymentSent
27 * [`Event::PaymentFailed`]: crate::events::Event::PaymentFailed
29 LDKRetryableSendFailure_DuplicatePayment,