#[non_exhaustive]
pub enum Error {
NonMinimalPush,
EarlyEndOfScript,
NumericOverflow,
BitcoinConsensus(Error),
UnknownSpentOutput(OutPoint),
Serialization,
}
Expand description
Ways that a script might fail. Not everything is split up as much as it could be; patches welcome if more detailed errors would help you.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
NonMinimalPush
Something did a non-minimal push; for more information see
https://github.com/bitcoin/bips/blob/master/bip-0062.mediawiki#Push_operators
EarlyEndOfScript
Some opcode expected a parameter, but it was missing or truncated
NumericOverflow
Tried to read an array off the stack as a number when it was more than 4 bytes
BitcoinConsensus(Error)
bitcoinconsensus
only.Error validating the script with bitcoinconsensus library
UnknownSpentOutput(OutPoint)
Can not find the spent output
Serialization
Can not serialize the spending transaction
Trait Implementations
sourceimpl Error for Error
Available on crate feature std
only.
impl Error for Error
std
only.sourcefn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
1.0.0 · sourcefn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
sourceimpl Ord for Error
impl Ord for Error
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl PartialOrd<Error> for Error
impl PartialOrd<Error> for Error
sourcefn partial_cmp(&self, other: &Error) -> Option<Ordering>
fn partial_cmp(&self, other: &Error) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Copy for Error
impl Eq for Error
impl StructuralEq for Error
impl StructuralPartialEq for Error
Auto Trait Implementations
impl RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnwindSafe for Error
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