[−][src]Struct miniscript::miniscript::types::extra_props::ExtData
Structure representing the extra type properties of a fragment.
Fields
pk_cost: usize
The number of bytes needed to encode its scriptpubkey
has_free_verify: bool
Whether this fragment can be verify-wrapped for free
ops_count_static: usize
The worst case static(unexecuted) ops-count for this Miniscript fragment.
ops_count_sat: Option<usize>
The worst case ops-count for satisfying this Miniscript fragment.
ops_count_nsat: Option<usize>
The worst case ops-count for dissatisfying this Miniscript fragment.
stack_elem_count_sat: Option<usize>
The worst case number of stack elements for satisfying this Miniscript fragment.
stack_elem_count_dissat: Option<usize>
The worst case number of stack elements for dissatisfying this Miniscript fragment.
max_sat_size: Option<(usize, usize)>
Maximum size, in bytes, of a satisfying witness. First elements is the cost for the witness stack, the second one is the cost for scriptSig. All signatures are assumed to be 73 bytes in size, including the length prefix (segwit) or push opcode (pre-segwit) and sighash postfix.
max_dissat_size: Option<(usize, usize)>
Maximum dissatisfaction cost, in bytes, of a Miniscript fragment. First elements is the cost for the witness stack, the second one is the cost for scriptSig.
timelock_info: TimeLockInfo
The timelock info about heightlocks and timelocks
Trait Implementations
impl Clone for ExtData
[src]
impl Copy for ExtData
[src]
impl Debug for ExtData
[src]
impl Eq for ExtData
[src]
impl Hash for ExtData
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Ord for ExtData
[src]
fn cmp(&self, other: &ExtData) -> Ordering
[src]
#[must_use]pub fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]
impl PartialEq<ExtData> for ExtData
[src]
impl PartialOrd<ExtData> for ExtData
[src]
fn partial_cmp(&self, other: &ExtData) -> Option<Ordering>
[src]
fn lt(&self, other: &ExtData) -> bool
[src]
fn le(&self, other: &ExtData) -> bool
[src]
fn gt(&self, other: &ExtData) -> bool
[src]
fn ge(&self, other: &ExtData) -> bool
[src]
impl Property for ExtData
[src]
fn sanity_checks(&self)
[src]
fn from_true() -> Self
[src]
fn from_false() -> Self
[src]
fn from_pk_k() -> Self
[src]
fn from_pk_h() -> Self
[src]
fn from_multi(k: usize, n: usize) -> Self
[src]
fn from_hash() -> Self
[src]
fn from_sha256() -> Self
[src]
fn from_hash256() -> Self
[src]
fn from_ripemd160() -> Self
[src]
fn from_hash160() -> Self
[src]
fn from_time(_t: u32) -> Self
[src]
fn from_after(t: u32) -> Self
[src]
fn from_older(t: u32) -> Self
[src]
fn cast_alt(self) -> Result<Self, ErrorKind>
[src]
fn cast_swap(self) -> Result<Self, ErrorKind>
[src]
fn cast_check(self) -> Result<Self, ErrorKind>
[src]
fn cast_dupif(self) -> Result<Self, ErrorKind>
[src]
fn cast_verify(self) -> Result<Self, ErrorKind>
[src]
fn cast_nonzero(self) -> Result<Self, ErrorKind>
[src]
fn cast_zeronotequal(self) -> Result<Self, ErrorKind>
[src]
fn cast_true(self) -> Result<Self, ErrorKind>
[src]
fn cast_or_i_false(self) -> Result<Self, ErrorKind>
[src]
fn cast_unlikely(self) -> Result<Self, ErrorKind>
[src]
fn cast_likely(self) -> Result<Self, ErrorKind>
[src]
fn and_b(l: Self, r: Self) -> Result<Self, ErrorKind>
[src]
fn and_v(l: Self, r: Self) -> Result<Self, ErrorKind>
[src]
fn or_b(l: Self, r: Self) -> Result<Self, ErrorKind>
[src]
fn or_d(l: Self, r: Self) -> Result<Self, ErrorKind>
[src]
fn or_c(l: Self, r: Self) -> Result<Self, ErrorKind>
[src]
fn or_i(l: Self, r: Self) -> Result<Self, ErrorKind>
[src]
fn and_or(a: Self, b: Self, c: Self) -> Result<Self, ErrorKind>
[src]
fn threshold<S>(k: usize, n: usize, mut sub_ck: S) -> Result<Self, ErrorKind> where
S: FnMut(usize) -> Result<Self, ErrorKind>,
[src]
S: FnMut(usize) -> Result<Self, ErrorKind>,
fn type_check<Pk, Ctx, C>(
fragment: &Terminal<Pk, Ctx>,
_child: C
) -> Result<Self, Error<Pk, Ctx>> where
C: FnMut(usize) -> Option<Self>,
Ctx: ScriptContext,
Pk: MiniscriptKey,
[src]
fragment: &Terminal<Pk, Ctx>,
_child: C
) -> Result<Self, Error<Pk, Ctx>> where
C: FnMut(usize) -> Option<Self>,
Ctx: ScriptContext,
Pk: MiniscriptKey,
Compute the type of a fragment assuming all the children of Miniscript have been computed already.
fn and_n(left: Self, right: Self) -> Result<Self, ErrorKind>
[src]
impl StructuralEq for ExtData
[src]
impl StructuralPartialEq for ExtData
[src]
Auto Trait Implementations
impl RefUnwindSafe for ExtData
[src]
impl Send for ExtData
[src]
impl Sync for ExtData
[src]
impl Unpin for ExtData
[src]
impl UnwindSafe for ExtData
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
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.
pub 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>,