[−][src]Enum miniscript::Error
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
Psbt(Error)PSBT-related error
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
UnexpectedStartWhile 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
NonCanonicalTrueFragment was an and_v(_, true) which should be written as t:
NonCanonicalFalseFragment was an or_i(_, false) or or_i(false,_) which should be written as u: or l:
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
CouldNotSatisfyGeneral failure to satisfy
TypeCheck(String)Typechecking failed
BadDescriptorGeneral error in creating descriptor
Secp(Error)Forward-secp related errors
InterpreterError(InterpreterError)Interpreter related errors
BadScriptSigBad Script Sig. As per standardness rules, only pushes are allowed in
scriptSig. This error is invoked when op_codes are pushed onto the stack
As per the current implementation, pushing an integer apart from 0 or 1
will also trigger this. This is because, Miniscript only expects push
bytes for pk, sig, preimage etc or 1 or 0 for StackElement::Satisfied
or StackElement::Dissatisfied
NonEmptyWitnessWitness must be empty for pre-segwit transactions
NonEmptyScriptSigScriptSig must be empty for pure segwit transactions
IncorrectPubkeyHashIncorrect Script pubkey Hash for the descriptor. This is used for both
PkH and Wpkh descriptors
IncorrectScriptHashIncorrect Script pubkey Hash for the descriptor. This is used for both
Sh and Wsh descriptors
Trait Implementations
Auto Trait Implementations
impl Send for Error
impl Unpin for Error
impl Sync for Error
impl !UnwindSafe for Error
impl !RefUnwindSafe for Error
Blanket Implementations
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToString for T where
T: Display + ?Sized, [src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,