diff options
Diffstat (limited to 'Pipes/Text/Encoding.hs')
-rw-r--r-- | Pipes/Text/Encoding.hs | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/Pipes/Text/Encoding.hs b/Pipes/Text/Encoding.hs index 991000f..99433b7 100644 --- a/Pipes/Text/Encoding.hs +++ b/Pipes/Text/Encoding.hs | |||
@@ -64,6 +64,9 @@ import Pipes | |||
64 | type Lens'_ a b = forall f . Functor f => (b -> f b) -> (a -> f a) | 64 | type Lens'_ a b = forall f . Functor f => (b -> f b) -> (a -> f a) |
65 | type Iso'_ a b = forall f p . (Functor f, Profunctor p) => p b (f b) -> p a (f a) | 65 | type Iso'_ a b = forall f p . (Functor f, Profunctor p) => p b (f b) -> p a (f a) |
66 | 66 | ||
67 | type Lens s t a b = forall f . Functor f => (a -> f b) -> (s -> f t) | ||
68 | |||
69 | |||
67 | {- $lenses | 70 | {- $lenses |
68 | The 'Codec' type is a simple specializion of | 71 | The 'Codec' type is a simple specializion of |
69 | the @Lens'_@ type synonymn used by the standard lens libraries, | 72 | the @Lens'_@ type synonymn used by the standard lens libraries, |
@@ -79,11 +82,12 @@ type Iso'_ a b = forall f p . (Functor f, Profunctor p) => p b (f b) -> p a (f a | |||
79 | -} | 82 | -} |
80 | 83 | ||
81 | type Codec | 84 | type Codec |
82 | = forall m r | 85 | = forall m x y |
83 | . Monad m | 86 | . Monad m |
84 | => Lens'_ (Producer ByteString m r) | 87 | => Lens (Producer ByteString m x) |
85 | (Producer Text m (Producer ByteString m r)) | 88 | (Producer ByteString m y) |
86 | 89 | (Producer Text m (Producer ByteString m x)) | |
90 | (Producer Text m (Producer ByteString m y)) | ||
87 | {- | 'decode' is just the ordinary @view@ or @(^.)@ of the lens libraries; | 91 | {- | 'decode' is just the ordinary @view@ or @(^.)@ of the lens libraries; |
88 | exported here under a name appropriate to the material. All of these are | 92 | exported here under a name appropriate to the material. All of these are |
89 | the same: | 93 | the same: |