Trait elements_miniscript::ForEachKey

source ·
pub trait ForEachKey<Pk>
where Pk: MiniscriptKey,
{ // Required method fn for_each_key<'a, F>(&'a self, pred: F) -> bool where F: FnMut(&'a Pk) -> bool, Pk: 'a; // Provided method fn for_any_key<'a, F>(&'a self, pred: F) -> bool where F: FnMut(&'a Pk) -> bool, Pk: 'a { ... } }
Expand description

Either a key or keyhash, but both contain Pk Trait describing the ability to iterate over every key

Required Methods§

source

fn for_each_key<'a, F>(&'a self, pred: F) -> bool
where F: FnMut(&'a Pk) -> bool, Pk: 'a,

Run a predicate on every key in the descriptor, returning whether the predicate returned true for every key

Provided Methods§

source

fn for_any_key<'a, F>(&'a self, pred: F) -> bool
where F: FnMut(&'a Pk) -> bool, Pk: 'a,

Run a predicate on every key in the descriptor, returning whether the predicate returned true for any key

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<Pk> ForEachKey<Pk> for miniscript::descriptor::Descriptor<Pk>
where Pk: MiniscriptKey,

source§

impl<Pk> ForEachKey<Pk> for miniscript::policy::concrete::Policy<Pk>
where Pk: MiniscriptKey,

source§

impl<Pk> ForEachKey<Pk> for miniscript::policy::semantic::Policy<Pk>
where Pk: MiniscriptKey,

source§

impl<Pk> ForEachKey<Pk> for miniscript::descriptor::bare::Bare<Pk>
where Pk: MiniscriptKey,

source§

impl<Pk> ForEachKey<Pk> for miniscript::descriptor::bare::Pkh<Pk>
where Pk: MiniscriptKey,

source§

impl<Pk> ForEachKey<Pk> for miniscript::descriptor::segwitv0::Wpkh<Pk>
where Pk: MiniscriptKey,

source§

impl<Pk> ForEachKey<Pk> for miniscript::descriptor::segwitv0::Wsh<Pk>
where Pk: MiniscriptKey,

source§

impl<Pk> ForEachKey<Pk> for miniscript::descriptor::sh::Sh<Pk>
where Pk: MiniscriptKey,

source§

impl<Pk> ForEachKey<Pk> for miniscript::descriptor::tr::Tr<Pk>
where Pk: MiniscriptKey,

source§

impl<Pk, Ctx> ForEachKey<Pk> for miniscript::descriptor::sortedmulti::SortedMultiVec<Pk, Ctx>
where Pk: MiniscriptKey, Ctx: ScriptContext,

source§

impl<Pk, Ctx> ForEachKey<Pk> for miniscript::miniscript::Miniscript<Pk, Ctx>
where Pk: MiniscriptKey, Ctx: ScriptContext,

source§

impl<Pk, Ctx, Ext> ForEachKey<Pk> for Terminal<Pk, Ctx, Ext>
where Pk: MiniscriptKey, Ctx: ScriptContext, Ext: Extension,

source§

impl<Pk: MiniscriptKey> ForEachKey<Pk> for elements_miniscript::policy::concrete::Policy<Pk>

source§

impl<Pk: MiniscriptKey> ForEachKey<Pk> for elements_miniscript::policy::semantic::Policy<Pk>

source§

impl<Pk: MiniscriptKey> ForEachKey<Pk> for elements_miniscript::descriptor::Bare<Pk>

source§

impl<Pk: MiniscriptKey> ForEachKey<Pk> for elements_miniscript::descriptor::Pkh<Pk>

source§

impl<Pk: MiniscriptKey> ForEachKey<Pk> for elements_miniscript::descriptor::Sh<Pk>

source§

impl<Pk: MiniscriptKey> ForEachKey<Pk> for elements_miniscript::descriptor::Wpkh<Pk>

source§

impl<Pk: MiniscriptKey> ForEachKey<Pk> for elements_miniscript::descriptor::Wsh<Pk>

source§

impl<Pk: MiniscriptKey, Ctx: ScriptContext> ForEachKey<Pk> for elements_miniscript::descriptor::SortedMultiVec<Pk, Ctx>

source§

impl<Pk: MiniscriptKey, Ctx: ScriptContext, Ext: Extension> ForEachKey<Pk> for elements_miniscript::miniscript::Miniscript<Pk, Ctx, Ext>

source§

impl<Pk: MiniscriptKey, Ext: Extension> ForEachKey<Pk> for LegacyCSFSCov<Pk, Ext>

source§

impl<Pk: MiniscriptKey, Ext: Extension> ForEachKey<Pk> for elements_miniscript::descriptor::Tr<Pk, Ext>

source§

impl<Pk: MiniscriptKey, T: Extension> ForEachKey<Pk> for elements_miniscript::descriptor::Descriptor<Pk, T>