Skip to content

Commit 16dc092

Browse files
committed
Rename abstract::Policy to Abstract
Use the identifier `Abstract` to further disambiguate the abstract policy and the concrete policy. This has the nice advantage of removing a few usages of the kind-of-ugly `r#abstract::Policy`.
1 parent 8b68857 commit 16dc092

File tree

9 files changed

+270
-272
lines changed

9 files changed

+270
-272
lines changed

fuzz/fuzz_targets/roundtrip_semantic.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use std::str::FromStr;
22

33
use honggfuzz::fuzz;
44

5-
type Policy = miniscript::r#abstract::Policy<String>;
5+
type Policy = miniscript::r#abstract::Abstract<String>;
66

77
fn do_test(data: &[u8]) {
88
let data_str = String::from_utf8_lossy(data);

src/abstract/lift.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ use std::error;
1515
use crate::descriptor::Descriptor;
1616
use crate::miniscript::{Miniscript, ScriptContext};
1717
use crate::policy::concrete::Policy as Concrete;
18-
use crate::r#abstract::Policy as Abstract;
18+
use crate::r#abstract::Abstract;
1919
use crate::sync::Arc;
2020
use crate::{Error, MiniscriptKey, Terminal};
2121

@@ -227,7 +227,7 @@ mod tests {
227227
use crate::{descriptor::TapTree, Descriptor, Tap};
228228

229229
type ConcretePol = crate::policy::concrete::Policy<String>;
230-
type AbstractPol = crate::r#abstract::Policy<String>;
230+
type AbstractPol = crate::r#abstract::Abstract<String>;
231231

232232
fn concrete_policy_rtt(s: &str) {
233233
let conc = ConcretePol::from_str(s).unwrap();

src/abstract/mod.rs

+247-240
Large diffs are not rendered by default.

src/descriptor/bare.rs

+3-5
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ use crate::miniscript::context::{ScriptContext, ScriptContextError};
1919
use crate::miniscript::satisfy::{Placeholder, Satisfaction, Witness};
2020
use crate::plan::AssetProvider;
2121
use crate::prelude::*;
22-
use crate::r#abstract::{self, Liftable};
22+
use crate::r#abstract::{Abstract, Liftable};
2323
use crate::util::{varint_len, witness_to_scriptsig};
2424
use crate::{
2525
BareCtx, Error, ForEachKey, Miniscript, MiniscriptKey, Satisfier, ToPublicKey, TranslateErr,
@@ -165,7 +165,7 @@ impl<Pk: MiniscriptKey> fmt::Display for Bare<Pk> {
165165
}
166166

167167
impl<Pk: MiniscriptKey> Liftable<Pk> for Bare<Pk> {
168-
fn lift(&self) -> Result<r#abstract::Policy<Pk>, Error> { self.ms.lift() }
168+
fn lift(&self) -> Result<Abstract<Pk>, Error> { self.ms.lift() }
169169
}
170170

171171
impl_from_tree!(
@@ -362,9 +362,7 @@ impl<Pk: MiniscriptKey> fmt::Display for Pkh<Pk> {
362362
}
363363

364364
impl<Pk: MiniscriptKey> Liftable<Pk> for Pkh<Pk> {
365-
fn lift(&self) -> Result<r#abstract::Policy<Pk>, Error> {
366-
Ok(r#abstract::Policy::Key(self.pk.clone()))
367-
}
365+
fn lift(&self) -> Result<Abstract<Pk>, Error> { Ok(Abstract::Key(self.pk.clone())) }
368366
}
369367

370368
impl_from_tree!(

src/descriptor/segwitv0.rs

+3-5
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ use crate::expression::{self, FromTree};
1616
use crate::miniscript::context::{ScriptContext, ScriptContextError};
1717
use crate::miniscript::satisfy::{Placeholder, Satisfaction, Witness};
1818
use crate::plan::AssetProvider;
19-
use crate::r#abstract::{self, Liftable};
2019
use crate::prelude::*;
20+
use crate::r#abstract::{Abstract, Liftable};
2121
use crate::util::varint_len;
2222
use crate::{
2323
Error, ForEachKey, Miniscript, MiniscriptKey, Satisfier, Segwitv0, ToPublicKey, TranslateErr,
@@ -220,7 +220,7 @@ pub enum WshInner<Pk: MiniscriptKey> {
220220
}
221221

222222
impl<Pk: MiniscriptKey> Liftable<Pk> for Wsh<Pk> {
223-
fn lift(&self) -> Result<r#abstract::Policy<Pk>, Error> {
223+
fn lift(&self) -> Result<Abstract<Pk>, Error> {
224224
match self.inner {
225225
WshInner::SortedMulti(ref smv) => smv.lift(),
226226
WshInner::Ms(ref ms) => ms.lift(),
@@ -469,9 +469,7 @@ impl<Pk: MiniscriptKey> fmt::Display for Wpkh<Pk> {
469469
}
470470

471471
impl<Pk: MiniscriptKey> Liftable<Pk> for Wpkh<Pk> {
472-
fn lift(&self) -> Result<r#abstract::Policy<Pk>, Error> {
473-
Ok(r#abstract::Policy::Key(self.pk.clone()))
474-
}
472+
fn lift(&self) -> Result<Abstract<Pk>, Error> { Ok(Abstract::Key(self.pk.clone())) }
475473
}
476474

477475
impl_from_tree!(

src/descriptor/sh.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ use crate::expression::{self, FromTree};
2020
use crate::miniscript::context::ScriptContext;
2121
use crate::miniscript::satisfy::{Placeholder, Satisfaction};
2222
use crate::plan::AssetProvider;
23-
use crate::r#abstract::{self, Liftable};
2423
use crate::prelude::*;
24+
use crate::r#abstract::{Abstract, Liftable};
2525
use crate::util::{varint_len, witness_to_scriptsig};
2626
use crate::{
2727
push_opcode_size, Error, ForEachKey, Legacy, Miniscript, MiniscriptKey, Satisfier, Segwitv0,
@@ -49,10 +49,10 @@ pub enum ShInner<Pk: MiniscriptKey> {
4949
}
5050

5151
impl<Pk: MiniscriptKey> Liftable<Pk> for Sh<Pk> {
52-
fn lift(&self) -> Result<r#abstract::Policy<Pk>, Error> {
52+
fn lift(&self) -> Result<Abstract<Pk>, Error> {
5353
match self.inner {
5454
ShInner::Wsh(ref wsh) => wsh.lift(),
55-
ShInner::Wpkh(ref pk) => Ok(r#abstract::Policy::Key(pk.as_inner().clone())),
55+
ShInner::Wpkh(ref pk) => Ok(Abstract::Key(pk.as_inner().clone())),
5656
ShInner::SortedMulti(ref smv) => smv.lift(),
5757
ShInner::Ms(ref ms) => ms.lift(),
5858
}

src/descriptor/sortedmulti.rs

+5-10
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ use crate::miniscript::decode::Terminal;
1616
use crate::miniscript::limits::MAX_PUBKEYS_PER_MULTISIG;
1717
use crate::miniscript::satisfy::{Placeholder, Satisfaction};
1818
use crate::plan::AssetProvider;
19-
use crate::r#abstract;
2019
use crate::prelude::*;
20+
use crate::r#abstract::{Abstract, Liftable};
2121
use crate::{
2222
errstr, expression, script_num_size, Error, ForEachKey, Miniscript, MiniscriptKey, Satisfier,
2323
ToPublicKey, TranslateErr, Translator,
@@ -196,16 +196,11 @@ impl<Pk: MiniscriptKey, Ctx: ScriptContext> SortedMultiVec<Pk, Ctx> {
196196
pub fn max_satisfaction_size(&self) -> usize { 1 + 73 * self.k }
197197
}
198198

199-
impl<Pk: MiniscriptKey, Ctx: ScriptContext> crate::r#abstract::Liftable<Pk>
200-
for SortedMultiVec<Pk, Ctx>
201-
{
202-
fn lift(&self) -> Result<r#abstract::Policy<Pk>, Error> {
203-
let ret = r#abstract::Policy::Threshold(
199+
impl<Pk: MiniscriptKey, Ctx: ScriptContext> Liftable<Pk> for SortedMultiVec<Pk, Ctx> {
200+
fn lift(&self) -> Result<Abstract<Pk>, Error> {
201+
let ret = Abstract::Threshold(
204202
self.k,
205-
self.pks
206-
.iter()
207-
.map(|k| r#abstract::Policy::Key(k.clone()))
208-
.collect(),
203+
self.pks.iter().map(|k| Abstract::Key(k.clone())).collect(),
209204
);
210205
Ok(ret)
211206
}

src/descriptor/tr.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@ use crate::expression::{self, FromTree};
1616
use crate::miniscript::satisfy::{Placeholder, Satisfaction, SchnorrSigType, Witness};
1717
use crate::miniscript::Miniscript;
1818
use crate::plan::AssetProvider;
19-
use crate::r#abstract::Policy as Abstract;
2019
use crate::prelude::*;
21-
use crate::r#abstract::Liftable;
20+
use crate::r#abstract::{Abstract, Liftable};
2221
use crate::util::{varint_len, witness_size};
2322
use crate::{
2423
errstr, Error, ForEachKey, MiniscriptKey, Satisfier, ScriptContext, Tap, ToPublicKey,
@@ -635,9 +634,10 @@ impl<Pk: MiniscriptKey> Liftable<Pk> for TapTree<Pk> {
635634
impl<Pk: MiniscriptKey> Liftable<Pk> for Tr<Pk> {
636635
fn lift(&self) -> Result<Abstract<Pk>, Error> {
637636
match &self.tree {
638-
Some(root) => {
639-
Ok(Abstract::Threshold(1, vec![Abstract::Key(self.internal_key.clone()), root.lift()?]))
640-
}
637+
Some(root) => Ok(Abstract::Threshold(
638+
1,
639+
vec![Abstract::Key(self.internal_key.clone()), root.lift()?],
640+
)),
641641
None => Ok(Abstract::Key(self.internal_key.clone())),
642642
}
643643
}

src/policy/concrete.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ use bitcoin::{absolute, Sequence};
1212
use {
1313
crate::descriptor::TapTree, crate::miniscript::ScriptContext, crate::policy::compiler,
1414
crate::policy::compiler::CompilerError, crate::policy::compiler::OrdF64,
15-
crate::policy::concrete::Policy as Concrete, crate::r#abstract::Policy as Abstract,
15+
crate::policy::concrete::Policy as Concrete, crate::r#abstract::Abstract,
1616
crate::r#abstract::Liftable, crate::Descriptor, crate::Miniscript, crate::Tap,
1717
core::cmp::Reverse,
1818
};

0 commit comments

Comments
 (0)