packages feed

lawful-conversions 0.1.5 → 0.1.6

raw patch · 4 files changed

+45/−4 lines, 4 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

lawful-conversions.cabal view
@@ -1,6 +1,6 @@ cabal-version: 3.0 name: lawful-conversions-version: 0.1.5+version: 0.1.6 synopsis: Lawful typeclasses for bidirectional conversion between types category: Conversion homepage: https://github.com/nikita-volkov/lawful-conversions@@ -58,7 +58,7 @@   type: git   location: git://github.com/nikita-volkov/lawful-conversions.git -common language-settings+common base   default-language: Haskell2010   default-extensions:     BlockArguments@@ -73,7 +73,7 @@     UndecidableSuperClasses  library-  import: language-settings+  import: base   hs-source-dirs: src/library   exposed-modules: LawfulConversions   other-modules:@@ -99,6 +99,7 @@     LawfulConversions.Relations.ByteStringAndLazyByteStringBuilder     LawfulConversions.Relations.ByteStringAndLazyText     LawfulConversions.Relations.ByteStringAndShortByteString+    LawfulConversions.Relations.ByteStringAndString     LawfulConversions.Relations.ByteStringAndText     LawfulConversions.Relations.ByteStringAndTextArray     LawfulConversions.Relations.ByteStringAndWord8List@@ -117,6 +118,7 @@     LawfulConversions.Relations.LazyByteStringAndLazyByteStringBuilder     LawfulConversions.Relations.LazyByteStringAndLazyText     LawfulConversions.Relations.LazyByteStringAndShortByteString+    LawfulConversions.Relations.LazyByteStringAndString     LawfulConversions.Relations.LazyByteStringAndText     LawfulConversions.Relations.LazyByteStringAndTextArray     LawfulConversions.Relations.LazyByteStringAndWord8List@@ -164,7 +166,7 @@     vector >=0.12 && <0.14,  test-suite test-  import: language-settings+  import: base   type: exitcode-stdio-1.0   hs-source-dirs: src/test   main-is: Main.hs
src/library/LawfulConversions/Relations.hs view
@@ -12,6 +12,7 @@ import LawfulConversions.Relations.ByteStringAndLazyByteStringBuilder () import LawfulConversions.Relations.ByteStringAndLazyText () import LawfulConversions.Relations.ByteStringAndShortByteString ()+import LawfulConversions.Relations.ByteStringAndString () import LawfulConversions.Relations.ByteStringAndText () import LawfulConversions.Relations.ByteStringAndTextArray () import LawfulConversions.Relations.ByteStringAndWord8List ()@@ -30,6 +31,7 @@ import LawfulConversions.Relations.LazyByteStringAndLazyByteStringBuilder () import LawfulConversions.Relations.LazyByteStringAndLazyText () import LawfulConversions.Relations.LazyByteStringAndShortByteString ()+import LawfulConversions.Relations.LazyByteStringAndString () import LawfulConversions.Relations.LazyByteStringAndText () import LawfulConversions.Relations.LazyByteStringAndTextArray () import LawfulConversions.Relations.LazyByteStringAndWord8List ()
+ src/library/LawfulConversions/Relations/ByteStringAndString.hs view
@@ -0,0 +1,18 @@+{-# OPTIONS_GHC -Wno-orphans #-}++module LawfulConversions.Relations.ByteStringAndString where++import qualified Data.Text+import qualified Data.Text.Encoding+import qualified Data.Text.Encoding.Error+import LawfulConversions.Classes+import LawfulConversions.Prelude++-- | UTF-8 codec.+instance IsSome ByteString String where+  to = Data.Text.Encoding.encodeUtf8 . Data.Text.pack+  maybeFrom = either (const Nothing) (Just . Data.Text.unpack) . Data.Text.Encoding.decodeUtf8'++-- | Lenient UTF-8 decoding.+instance IsMany ByteString String where+  from = Data.Text.unpack . Data.Text.Encoding.decodeUtf8With Data.Text.Encoding.Error.lenientDecode
+ src/library/LawfulConversions/Relations/LazyByteStringAndString.hs view
@@ -0,0 +1,19 @@+{-# OPTIONS_GHC -Wno-orphans #-}++module LawfulConversions.Relations.LazyByteStringAndString where++import qualified Data.ByteString.Lazy+import qualified Data.Text.Encoding.Error+import qualified Data.Text.Lazy+import qualified Data.Text.Lazy.Encoding+import LawfulConversions.Classes+import LawfulConversions.Prelude++-- | UTF-8 codec.+instance IsSome Data.ByteString.Lazy.ByteString String where+  to = Data.Text.Lazy.Encoding.encodeUtf8 . Data.Text.Lazy.pack+  maybeFrom = either (const Nothing) (Just . Data.Text.Lazy.unpack) . Data.Text.Lazy.Encoding.decodeUtf8'++-- | Lenient UTF-8 decoding.+instance IsMany Data.ByteString.Lazy.ByteString String where+  from = Data.Text.Lazy.unpack . Data.Text.Lazy.Encoding.decodeUtf8With Data.Text.Encoding.Error.lenientDecode