diff options
author | JSDurand <mmemmew@gmail.com> | 2022-12-14 23:48:22 +0800 |
---|---|---|
committer | JSDurand <mmemmew@gmail.com> | 2022-12-14 23:48:22 +0800 |
commit | 9f1c88b863e247da3cd60d2792a7a13b18e25e53 (patch) | |
tree | d29c0e19793a88a1de6898fdfd2a376fca21378f /receme | |
parent | cb7bcfad4ab0041aaf3fde3185e27ee46bb37788 (diff) |
a temporary check point
just to save things in a commit
Diffstat (limited to 'receme')
-rw-r--r-- | receme/src/functor.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/receme/src/functor.rs b/receme/src/functor.rs index 95e2555..cd4dac2 100644 --- a/receme/src/functor.rs +++ b/receme/src/functor.rs @@ -31,6 +31,14 @@ pub trait Functor<T> { fn fmap<S>(self, f: impl FnMut(T) -> S) -> Self::Target<S>; } +impl<T> Functor<T> for Vec<T> { + type Target<S> = Vec<S>; + + fn fmap<S>(self, f: impl FnMut(T) -> S) -> Self::Target<S> { + self.into_iter().map(f).collect() + } +} + /// A functor can map over its generic type parameter. /// /// It can map from Functor(T) to Functor(S). |