Skip to main content

Error

Enum Error 

Source
pub enum Error {
Show 32 variants FeeEstimationFailed(String), FeeEstimationUnavailable, NoSpendableUtxos, AlreadyStarted, InvalidConfig(String), UnsupportedOnchain, UnknownFeeIndex(u32), Json(Error), AmountConversion(Error), Database(Error), Wallet(String), BitcoinRpc(Error), Esplora(String), Bip32(Error), KeyDerivation(KeyError), CouldNotSign, Path, Io(Error), KvStore(Error), VoutNotFound, SendIntentNotFound(Uuid), SendBatchNotFound(Uuid), DuplicateQuoteId(String), BatchFeeTooHigh { actual_fee: u64, max_fee: u64, }, EstimatedFeeTooHigh { estimated_fee: u64, max_fee: u64, }, NoValidFeeAllocation, DustOutput { amount: u64, dust_limit: u64, }, AmountBelowMinimumSend { amount: u64, min: u64, }, BatchAssignmentMissing { batch_id: Uuid, intent_id: Uuid, }, ReceiveIntentNotFound(Uuid), ReceiveAddressNotFound(String), BdkPersist,
}
Expand description

CDK BDK onchain backend error

Variants§

§

FeeEstimationFailed(String)

Fee estimation failed

§

FeeEstimationUnavailable

Fee estimation unavailable

§

NoSpendableUtxos

Wallet has no spendable UTXOs available for an onchain quote

§

AlreadyStarted

Start called but tasks are already running

§

InvalidConfig(String)

Invalid backend configuration

§

UnsupportedOnchain

Unsupported payment type for onchain backend

§

UnknownFeeIndex(u32)

Wallet selected a fee_index outside the configured BDK fee options.

§

Json(Error)

JSON error

§

AmountConversion(Error)

Amount conversion error

§

Database(Error)

Database error

§

Wallet(String)

Wallet error

§

BitcoinRpc(Error)

Bitcoin RPC error

§

Esplora(String)

Esplora error

§

Bip32(Error)

Bip32 key derivation error

§

KeyDerivation(KeyError)

Key derivation error

§

CouldNotSign

Could not sign transaction

§

Path

Path error

§

Io(Error)

IO error

§

KvStore(Error)

KV Store error

§

VoutNotFound

Could not find matching output vout in transaction

§

SendIntentNotFound(Uuid)

Send intent not found in storage

§

SendBatchNotFound(Uuid)

Send batch not found in storage

§

DuplicateQuoteId(String)

Send intent with quote id already exists in storage

§

BatchFeeTooHigh

Batch fee exceeds the combined max fee of all included intents

Fields

§actual_fee: u64

Actual transaction fee in sats

§max_fee: u64

Maximum combined fee from included intents

§

EstimatedFeeTooHigh

Current fee estimate exceeds the max fee accepted by a melt quote.

Fields

§estimated_fee: u64

Current estimated fee reserve in sats

§max_fee: u64

Maximum fee accepted by the quote in sats

§

NoValidFeeAllocation

No valid fee allocation exists for the batch

§

DustOutput

Requested recipient output is below the dust limit for its script type

Fields

§amount: u64

Requested recipient amount in sats

§dust_limit: u64

Minimum non-dust amount for the destination script in sats

§

AmountBelowMinimumSend

Requested send amount is below the backend’s configured minimum.

Fields

§amount: u64

Requested recipient amount in sats

§min: u64

Configured minimum send amount in sats

§

BatchAssignmentMissing

Batch record is missing an output assignment for one of its member intents.

This indicates a persistence invariant violation: every intent ID listed in a Signed/Broadcast batch must have a corresponding assignment entry.

Fields

§batch_id: Uuid

Batch that is missing the assignment

§intent_id: Uuid

Intent with no assignment entry

§

ReceiveIntentNotFound(Uuid)

Receive intent not found in storage

§

ReceiveAddressNotFound(String)

Receive address not found in storage

§

BdkPersist

Database

Implementations§

Source§

impl Error

Source

pub fn is_transient(&self) -> bool

Returns true when the error is a transient network / upstream condition that is expected to resolve on retry.

This is used by the sync supervisor to decide whether to continue retrying on the next tick (transient) or to treat the failure as part of the backoff/restart policy (non-transient).

Trait Implementations§

Source§

impl Debug for Error

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for Error

Source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Error for Error

Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0:

use the Display impl or to_string()

1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more
Source§

impl From<Error> for Error

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for Error

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for Error

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for Error

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for Error

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for Error

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for Error

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for Error

Source§

fn from(e: Error) -> Self

Converts to this type from the input type.
Source§

impl From<KeyError> for Error

Source§

fn from(source: KeyError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl !RefUnwindSafe for Error

§

impl !UnwindSafe for Error

§

impl Freeze for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnsafeUnpin for Error

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more