Enum miniscript::miniscript::analyzable::AnalysisError
source · pub enum AnalysisError {
SiglessBranch,
RepeatedPubkeys,
BranchExceedResouceLimits,
HeightTimelockCombination,
Malleable,
ContainsRawPkh,
}
Expand description
Possible reasons Miniscript guarantees can fail We currently mark Miniscript as Non-Analyzable if
- It is unsafe(does not require a digital signature to spend it)
- It contains a unspendable path because of either a. Resource limitations b. Timelock Mixing
- The script is malleable and thereby some of satisfaction weight guarantees are not satisfied.
- It has repeated publickeys
Variants§
SiglessBranch
Top level is not safe.
RepeatedPubkeys
Repeated Pubkeys
BranchExceedResouceLimits
Miniscript contains at least one path that exceeds resource limits
HeightTimelockCombination
Contains a combination of heightlock and timelock
Malleable
Malleable script
ContainsRawPkh
Contains partial descriptor raw pkh
Trait Implementations§
source§impl Debug for AnalysisError
impl Debug for AnalysisError
source§impl Display for AnalysisError
impl Display for AnalysisError
source§impl Error for AnalysisError
impl Error for AnalysisError
source§fn cause(&self) -> Option<&dyn Error>
fn cause(&self) -> Option<&dyn Error>
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
1.30.0 · source§fn 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 · source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
source§impl PartialEq for AnalysisError
impl PartialEq for AnalysisError
source§fn eq(&self, other: &AnalysisError) -> bool
fn eq(&self, other: &AnalysisError) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for AnalysisError
Auto Trait Implementations§
impl RefUnwindSafe for AnalysisError
impl Send for AnalysisError
impl Sync for AnalysisError
impl Unpin for AnalysisError
impl UnwindSafe for AnalysisError
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more