bluefin 0.2.0.0 → 0.2.1.0
raw patch · 5 files changed
+31/−4 lines, 5 filesdep ~bluefin-internalPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: bluefin-internal
API changes (from Hackage documentation)
+ Bluefin.Compound: data HandleD (h :: Effects -> Type)
+ Bluefin.Compound: handleImpl :: Handle h => HandleD h
+ Bluefin.Compound: handleMapHandle :: (forall (e :: Effects) (es :: Effects). e :> es => h e -> h es) -> HandleD h
Files
- CHANGELOG.md +5/−0
- bluefin.cabal +2/−2
- src/Bluefin/Compound.hs +7/−1
- src/Bluefin/HandleReader.hs +12/−0
- src/Bluefin/Reader.hs +5/−1
CHANGELOG.md view
@@ -1,3 +1,8 @@+## 0.2.1.0++* `Bluefin.Compound`: Add `handleImpl`, `HandleD` and+ `handleMapHandle`+ ## 0.2.0.0 * Transitive version bump because of choice of different incoherent
bluefin.cabal view
@@ -1,6 +1,6 @@ cabal-version: 3.0 name: bluefin-version: 0.2.0.0+version: 0.2.1.0 license: MIT license-file: LICENSE author: Tom Ellis@@ -39,6 +39,6 @@ Bluefin.System.IO, Bluefin.Writer, build-depends:- bluefin-internal >= 0.2.0.0 && < 0.3+ bluefin-internal >= 0.2.1.0 && < 0.3 hs-source-dirs: src default-language: Haskell2010
src/Bluefin/Compound.hs view
@@ -657,7 +657,13 @@ -- @ -- * Functions for making compound effects- Handle (mapHandle),++ -- ** @Handle@+ Handle (handleImpl, mapHandle),+ HandleD,+ handleMapHandle,++ -- ** Other functions for compound effects makeOp, useImpl, useImplUnder,
src/Bluefin/HandleReader.hs view
@@ -1,3 +1,15 @@+-- | 'HandleReader' is like t'Bluefin.Reader.Reader', generalized to+-- work for arbitrary t'Bluefin.Compound.Handle's. 'localHandle'+-- locally overrides the value of a handle in a well-scoped way. The+-- original handle will be restored when you exit the @localHandle@+-- block regardless of whether the exit was normal or via an+-- exception.+--+-- @HandleReader@ supports functionality similiar to @effectful@'s+-- 'Effectful.Dispatch.Dynamic.interpose' and @polysemy@'s+-- 'Polysemy.intercept', that is, locally augmenting an effect with+-- new behaviors.+ module Bluefin.HandleReader (-- * Handle HandleReader,
src/Bluefin/Reader.hs view
@@ -1,6 +1,10 @@ module Bluefin.Reader ( -- | 'Reader' is Bluefin's version of the- -- "Control.Monad.Trans.Reader" monad.+ -- "Control.Monad.Trans.Reader" monad. 'local' allows you to+ -- locally override the value in the @Reader@ handle in a+ -- well-scoped way. The original value will be restored when you+ -- exit the @local@ block regardless of whether the exit was+ -- normal or via an exception . -- * Handle Reader,