úÎ!.!)ã?      !"#$%&'()*+,-./0123456789:;<=>(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> provisional non-portable Trustworthy 1456>SX(Ñ witherableAn enhancement of ? with A definition of ! must satisfy the following laws:  conservation (@ A . f) "a B f compositionC . @ ( f) .  g "a  (C . @ ( f) . g))Parametricity implies the naturality law: t .  f "a  (t . f) witherable Effectful .  (D . f) "a D .  f witherable Monadic variant of .. This may have more efficient implementation. witherableLike E7, but you can remove elements instead of updating them.Formally, the class  represents a functor from  Kleisli Maybe to Hask.A definition of ! must satisfy the following laws:  conservation (Just . f) "a @ f composition f .  g "a  (f <=< g) witherableLike F. witherable  "a  G witherable  f .  g "a filter (H (I) f g) witherable)This is used to characterize and clone a   . Since FilterLike (Peat a b) s t a bA is monomorphic, it can be used to store a filter in a container.  witherable A simple  .  witherable A simple .  witherableA   is like a  Xhttp://hackage.haskell.org/package/lens-4.13.2.1/docs/Control-Lens-Type.html#t:Traversal Traversal#, but you can also remove targets. witherable'This type allows combinators to take a   specializing the parameter f. witherableReconstitute a   from its monomorphic form. witherable is actually G, but left for consistency. witherable  "a J witherable through a filter. witherable through a filter. witherable through a filter. witherable1Filter each element of a structure targeted by a  . witherableAn infix alias for '. The name of the operator alludes to K, and has the same fixity. witherableFlipped version of , the  version of . It has the same fixity as . () = J   witherable  = J  witherable/Remove the duplicate elements through a filter. witherableIRemove the duplicate elements through a filter. It is often faster than ., especially when the comparison is expensive. witherablezRemoves duplicate elements from a list, keeping only the first occurrence. This is asymptotically faster than using  from  Data.List. witherablejRemoves duplicate elements from a list, keeping only the first occurrence. This is usually faster than =, especially for things that have a slow comparison (like L).   41M      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFDGHDIJDEKDLMDGNDGODP DGQDGRSTUDGVDWDGXY'witherable-0.3.2-8YvlEeNYAaRE7PBLpWkpA6Data.Witherable Data.Functor<&> Data.Listnub WitherablewitherwitherMfilterA FilterablemapMaybe catMaybesfilterPeatrunPeatFilter' FilterLike'Filter FilterLike cloneFilterwitherOf forMaybeOf mapMaybeOf catMaybesOf filterAOffilterOf<$?><&?>forMaybeordNubOf hashNubOfordNubhashNub$fApplicativePeat $fFunctorPeat$fFilterableMaybeT$fFilterableIdentityT$fFilterableSum$fFilterableProduct$fFilterableCompose$fFilterableSeq$fFilterableVector$fFilterableConst$fFilterableProxy$fFilterableHashMap$fFilterableMonoidalMap$fFilterableMap$fFilterableIntMap$fFilterable[]$fFilterableEither$fFilterableMaybe$fWitherableMaybeT$fWitherableIdentityT$fWitherableSum$fWitherableProduct$fWitherableCompose$fWitherableSeq$fWitherableVector$fWitherableConst$fWitherableProxy$fWitherableHashMap$fWitherableMonoidalMap$fWitherableMap$fWitherableIntMap$fWitherable[]$fWitherableEither$fWitherableMaybebaseData.Traversable TraversableGHC.Basefmap GHC.MaybeJusttraverseData.Functor.ComposeComposepureFunctor Data.MaybeidliftA2ghc-prim GHC.Classes&&flip<$>String