heh
Diffstat (limited to 'src/util.rs')
-rw-r--r--src/util.rs46
1 files changed, 12 insertions, 34 deletions
diff --git a/src/util.rs b/src/util.rs
index b5e0bbc..8f2de97 100644
--- a/src/util.rs
+++ b/src/util.rs
@@ -474,12 +474,18 @@ pub trait Μ where
fn μκ<T: FromStr>(self, d: char) -> impl Iterator<Item = (T, T)>
where
<T as FromStr>::Err: std::fmt::Display;
- fn μ1<T: FromStr>(self, d: char) -> impl Iterator<Item = T>
- where
- <T as FromStr>::Err: std::fmt::Display;
- fn μ0<T: FromStr>(self, d: char) -> impl Iterator<Item = T>
- where
- <T as FromStr>::Err: std::fmt::Display;
+
+ fn μ1(self, d: char) -> Self {
+ self.μ(d).1
+ }
+
+ fn μ0(self, d: char) -> Self {
+ self.μ(d).0
+ }
+
+ fn between(self, a: char, b: char) -> Self {
+ self.μ1(a).μ0(b)
+ }
}
impl Μ for &[u8] {
@@ -498,20 +504,6 @@ impl Μ for &[u8] {
let (α, β) = self.μ(d);
α.κ::<T>().zip(β.κ::<T>())
}
-
- fn μ1<T: FromStr>(self, d: char) -> impl Iterator<Item = T>
- where
- <T as FromStr>::Err: std::fmt::Display,
- {
- self.μ(d).1.κ()
- }
-
- fn μ0<T: FromStr>(self, d: char) -> impl Iterator<Item = T>
- where
- <T as FromStr>::Err: std::fmt::Display,
- {
- self.μ(d).0.κ()
- }
}
impl Μ for &str {
@@ -527,20 +519,6 @@ impl Μ for &str {
let (α, β) = self.μ(d);
α.κ::<T>().zip(β.κ::<T>())
}
-
- fn μ1<T: FromStr>(self, d: char) -> impl Iterator<Item = T>
- where
- <T as FromStr>::Err: std::fmt::Display,
- {
- self.μ(d).1.κ()
- }
-
- fn μ0<T: FromStr>(self, d: char) -> impl Iterator<Item = T>
- where
- <T as FromStr>::Err: std::fmt::Display,
- {
- self.μ(d).0.κ()
- }
}
pub trait IterͶ: Iterator {