Struct miniscript::miniscript::types::malleability::Malleability [−][src]
Expand description
Structure representing the type properties of a fragment which have relevance to malleability analysis
Fields
dissat: Dissat
Properties of dissatisfying inputs
safe: bool
true
if satisfactions cannot be created by any 3rd party
who has not yet seen a satisfaction. (Hash preimages and
signature checks are safe; timelocks are not.) Affects
malleability.
non_malleable: bool
Whether a non-malleable satisfaction is guaranteed to exist for the fragment
Implementations
Check whether the self
is a subtype of other
argument .
This checks whether the argument other
has attributes which are present
in the given Type
. This returns true
on same arguments
a.is_subtype(a)
is true
.
Trait Implementations
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Type property of the False
fragment
Type property of a Multi
fragment
Cast using the Check
wrapper
Cast using the DupIf
wrapper
Cast using the Verify
wrapper
Cast using the NonZero
wrapper
Cast using the ZeroNotEqual
wrapper
Cast by changing [X]
to or_i([X], 0)
or or_i(0, [X])
Computes the type of an AndB
fragment
Computes the type of an AndV
fragment
Computes the type of an OrB
fragment
Computes the type of an OrD
fragment
Computes the type of an OrC
fragment
Computes the type of an OrI
fragment
Computes the type of an AndOr
fragment
Computes the type of an Thresh
fragment
Any extra sanity checks/assertions that should be applied after typechecking Read more
Type property of a Sha256
hash. Default implementation simply
passes through to from_hash
Read more
Type property of a Hash256
hash. Default implementation simply
passes through to from_hash
Read more
Type property of a Ripemd160
hash. Default implementation simply
passes through to from_hash
Read more
Type property of a Hash160
hash. Default implementation simply
passes through to from_hash
Read more
Type property of a relative timelock. Default implementation simply
passes through to from_time
Read more
Type property of an absolute timelock. Default implementation simply
passes through to from_time
Read more
Cast by changing [X]
to or_i([X], 0)
. Default implementation
simply passes through to cast_or_i_false
Read more
Cast by changing [X]
to or_i(0, [X])
. Default implementation
simply passes through to cast_or_i_false
Read more
Computes the type of an AndN
fragment
fn type_check<Pk, Ctx, C>(
fragment: &Terminal<Pk, Ctx>,
child: C
) -> Result<Self, Error<Pk, Ctx>> where
C: FnMut(usize) -> Option<Self>,
Pk: MiniscriptKey,
Ctx: ScriptContext,
fn type_check<Pk, Ctx, C>(
fragment: &Terminal<Pk, Ctx>,
child: C
) -> Result<Self, Error<Pk, Ctx>> where
C: FnMut(usize) -> Option<Self>,
Pk: MiniscriptKey,
Ctx: ScriptContext,
Compute the type of a fragment, given a function to look up the types of its children, if available and relevant for the given fragment Read more
Auto Trait Implementations
impl RefUnwindSafe for Malleability
impl Send for Malleability
impl Sync for Malleability
impl Unpin for Malleability
impl UnwindSafe for Malleability
Blanket Implementations
Mutably borrows from an owned value. Read more