Enum sapio_miniscript::Error
source · [−]pub enum Error {
Show 36 variants
InvalidOpcode(All),
NonMinimalVerify(Token),
InvalidPush(Vec<u8>),
Script(Error),
CmsTooManyKeys(u32),
Unprintable(u8),
ExpectedChar(char),
UnexpectedStart,
Unexpected(String),
MultiColon(String),
MultiAt(String),
AtOutsideOr(String),
NonCanonicalTrue,
NonCanonicalFalse,
LikelyFalse,
UnknownWrapper(char),
NonTopLevel(String),
Trailing(String),
BadPubkey(Error),
MissingHash(Hash),
MissingSig(PublicKey),
RelativeLocktimeNotMet(u32),
AbsoluteLocktimeNotMet(u32),
CouldNotSatisfy,
TypeCheck(String),
BadDescriptor(String),
Secp(Error),
PolicyError(PolicyError),
LiftError(LiftError),
ContextError(ScriptContextError),
MaxRecursiveDepthExceeded,
ScriptSizeTooLarge,
NonStandardBareScript,
AnalysisError(AnalysisError),
ImpossibleSatisfaction,
BareDescriptorAddr,
}
Expand description
Miniscript
Variants
InvalidOpcode(All)
Opcode appeared which is not part of the script subset
NonMinimalVerify(Token)
Some opcode occurred followed by OP_VERIFY
when it had
a VERIFY
version that should have been used instead
InvalidPush(Vec<u8>)
Push was illegal in some context
Script(Error)
rust-bitcoin script error
CmsTooManyKeys(u32)
A CHECKMULTISIG
opcode was preceded by a number > 20
Unprintable(u8)
Encountered unprintable character in descriptor
ExpectedChar(char)
expected character while parsing descriptor; didn’t find one
UnexpectedStart
While parsing backward, hit beginning of script
Unexpected(String)
Got something we were not expecting
MultiColon(String)
Name of a fragment contained :
multiple times
MultiAt(String)
Name of a fragment contained @
multiple times
AtOutsideOr(String)
Name of a fragment contained @
but we were not parsing an OR
NonCanonicalTrue
Fragment was an and_v(_, true)
which should be written as t:
NonCanonicalFalse
Fragment was an or_i(_, false)
or or_i(false,_)
which should be written as u:
or l:
LikelyFalse
Encountered a l:0
which is syntactically equal to u:0
except stupid
UnknownWrapper(char)
Encountered a wrapping character that we don’t recognize
NonTopLevel(String)
Parsed a miniscript and the result was not of type T
Trailing(String)
Parsed a miniscript but there were more script opcodes after it
BadPubkey(Error)
Failed to parse a push as a public key
MissingHash(Hash)
Could not satisfy a script (fragment) because of a missing hash preimage
MissingSig(PublicKey)
Could not satisfy a script (fragment) because of a missing signature
RelativeLocktimeNotMet(u32)
Could not satisfy, relative locktime not met
AbsoluteLocktimeNotMet(u32)
Could not satisfy, absolute locktime not met
CouldNotSatisfy
General failure to satisfy
TypeCheck(String)
Typechecking failed
BadDescriptor(String)
General error in creating descriptor
Secp(Error)
Forward-secp related errors
PolicyError(PolicyError)
Errors related to policy
LiftError(LiftError)
Errors related to lifting
ContextError(ScriptContextError)
Forward script context related errors
MaxRecursiveDepthExceeded
Recursion depth exceeded when parsing policy/miniscript from string
ScriptSizeTooLarge
Script size too large
NonStandardBareScript
Anything but c:pk(key) (P2PK), c:pk_h(key) (P2PKH), and thresh_m(k,…) up to n=3 is invalid by standardness (bare)
AnalysisError(AnalysisError)
Analysis Error
ImpossibleSatisfaction
Miniscript is equivalent to false. No possible satisfaction
BareDescriptorAddr
Bare descriptors don’t have any addresses
Trait Implementations
sourceimpl Error for Error
impl Error for Error
sourcefn cause(&self) -> Option<&dyn Error>
fn cause(&self) -> Option<&dyn Error>
replaced by Error::source, which can support downcasting
1.30.0 · 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
sourcefn backtrace(&self) -> Option<&Backtrace>
fn backtrace(&self) -> Option<&Backtrace>
backtrace
)Returns a stack backtrace, if available, of where this error occurred. Read more
1.0.0 · sourcefn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
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 · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more