microlens 0.1.0.0 → 0.1.1.0
raw patch · 3 files changed
+30/−11 lines, 3 files
Files
- CHANGELOG.md +7/−0
- microlens.cabal +14/−10
- src/Lens/Micro.hs +9/−1
+ CHANGELOG.md view
@@ -0,0 +1,7 @@+# 0.1.1.0++* Added `ASetter'`, which is useful because we can't provide real `Setter` and `Setter'`.++# 0.1.0.0++First release.
microlens.cabal view
@@ -1,26 +1,29 @@ name: microlens-version: 0.1.0.0-synopsis: A tiny part of the ‘lens’ library which you can depend upon.+version: 0.1.1.0+synopsis: A tiny part of the lens library which you can depend upon description:- This is an extract from the @lens@ library (with only 1 dependency).- It's not a toy lenses library, unsuitable for “real world”, but merely- a small one. It is compatible with @lens@, and should have same- performance.+ This is an extract from <http://hackage.haskell.org/package/lens lens>+ (with no dependencies). It's not a toy lenses library, unsuitable for+ “real world”, but merely a small one. It is compatible with 'lens', and+ should have same performance. . Use this library: . * if you want to define lenses or traversals in your own library, but- don't want to depend on @lens@+ don't want to depend on lens+ . * if you are new to lenses and want a small library to play with, but don't want to use something “inferior” or have to relearn things- when/if you switch to @lens@+ when/if you switch to lens . Don't use this library: . * if you need @Iso@s, @Prism@s, indexed traversals, @at@, @ix@, or actually anything else which isn't defined here+ . * if you think lenses compose “in the wrong order” (in which case- you're looking for @fclabels@)+ you're looking for + <http://hackage.haskell.org/package/fclabels fclabels>) . Note that microlens has /no/ dependencies starting from GHC 7.10 (base-4.8). Prior to that, it has to depend on transformers-0.2 or above.@@ -33,7 +36,8 @@ -- copyright: category: Data, Lenses build-type: Simple--- extra-source-files: README.md+extra-source-files:+ CHANGELOG.md cabal-version: >=1.10 source-repository head
src/Lens/Micro.hs view
@@ -14,7 +14,7 @@ (&), -- * Setting (applying a function to values)- ASetter,+ ASetter, ASetter', sets, (%~), over, (.~), set,@@ -122,6 +122,14 @@ however, to export functions which take an 'ASetter' as an argument. -} type ASetter s t a b = (a -> Identity b) -> s -> Identity t++{- |+This is a type alias for monomorphic setters which don't change the type of+the container (or of the value inside). It's useful more often than the same+type in lens, because we can't provide real setters and so it does the job of+both @ASetter'@ and @Setter'@.+-}+type ASetter' s a = ASetter s s a a {- | 'sets' creates an 'ASetter' from an ordinary function. (The only thing it