packages feed

lawful-conversions 0.1.4.1 → 0.1.5

raw patch · 7 files changed

+64/−15 lines, 7 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.4.1+version: 0.1.5 synopsis: Lawful typeclasses for bidirectional conversion between types category: Conversion homepage: https://github.com/nikita-volkov/lawful-conversions@@ -97,6 +97,7 @@     LawfulConversions.Relations.ByteArrayAndWord8List     LawfulConversions.Relations.ByteStringAndLazyByteString     LawfulConversions.Relations.ByteStringAndLazyByteStringBuilder+    LawfulConversions.Relations.ByteStringAndLazyText     LawfulConversions.Relations.ByteStringAndShortByteString     LawfulConversions.Relations.ByteStringAndText     LawfulConversions.Relations.ByteStringAndTextArray@@ -116,6 +117,7 @@     LawfulConversions.Relations.LazyByteStringAndLazyByteStringBuilder     LawfulConversions.Relations.LazyByteStringAndLazyText     LawfulConversions.Relations.LazyByteStringAndShortByteString+    LawfulConversions.Relations.LazyByteStringAndText     LawfulConversions.Relations.LazyByteStringAndTextArray     LawfulConversions.Relations.LazyByteStringAndWord8List     LawfulConversions.Relations.LazyByteStringBuilderAndShortByteString
src/library/LawfulConversions.hs view
@@ -24,17 +24,17 @@ -- == Examples -- -- @--- renderNameAndHeight :: 'Text' -> 'Int' -> 'Text'--- renderNameAndHeight name height =---   'from' @'Data.Text.Encoding.StrictTextBuilder' $---     "Height of " <> 'to' name <> " is " <> 'to' (show height)--- @------ @ -- combineEncodings :: 'Data.ByteString.Short.ShortByteString' -> 'Data.Primitive.ByteArray' -> ['Word8'] -> 'Data.ByteString.Lazy.ByteString' -- combineEncodings a b c = --   'from' @'Data.ByteString.Builder.Builder' $ --     'to' a <> 'to' b <> 'to' c+-- @+--+-- @+-- renderNameAndHeight :: 'Text' -> 'Int' -> 'Text'+-- renderNameAndHeight name height =+--   'from' @'Data.Text.Encoding.StrictTextBuilder' $+--     "Height of " <> 'from' name <> " is " <> 'from' (show height) -- @ -- -- = Partial conversions
src/library/LawfulConversions/Classes/Is.hs view
@@ -37,22 +37,22 @@ -- -- Instances of @Is@ do not define any functions and serve merely as a statement that the laws are satisfied. ----- ==== __Example: Lazy Text and Text__+-- ==== Example: Lazy Text and Text -- -- @--- instance IsSome 'Data.Text.Lazy.LazyText' 'Data.Text.Text' where+-- instance IsSome "Data.Text.Lazy.LazyText" "Data.Text.Text" where --   to = LazyText.'Data.Text.Lazy.fromStrict' ----- instance IsSome 'Data.Text.Text' 'Data.Text.Lazy.LazyText' where+-- instance IsSome "Data.Text.Text" "Data.Text.Lazy.LazyText" where --   to = LazyText.'Data.Text.Lazy.toStrict' ----- instance IsMany 'Data.Text.Lazy.LazyText' 'Data.Text.Text'+-- instance IsMany "Data.Text.Lazy.LazyText" "Data.Text.Text" ----- instance IsMany 'Data.Text.Text' 'Data.Text.Lazy.LazyText'+-- instance IsMany "Data.Text.Text" "Data.Text.Lazy.LazyText" ----- instance Is 'Data.Text.Lazy.LazyText' 'Data.Text.Text'+-- instance Is "Data.Text.Lazy.LazyText" "Data.Text.Text" ----- instance Is 'Data.Text.Text' 'Data.Text.Lazy.LazyText'+-- instance Is "Data.Text.Text" "Data.Text.Lazy.LazyText" -- @ class (IsMany a b, Is b a) => Is a b 
src/library/LawfulConversions/Relations.hs view
@@ -10,6 +10,7 @@ import LawfulConversions.Relations.ByteArrayAndWord8List () import LawfulConversions.Relations.ByteStringAndLazyByteString () import LawfulConversions.Relations.ByteStringAndLazyByteStringBuilder ()+import LawfulConversions.Relations.ByteStringAndLazyText () import LawfulConversions.Relations.ByteStringAndShortByteString () import LawfulConversions.Relations.ByteStringAndText () import LawfulConversions.Relations.ByteStringAndTextArray ()@@ -29,6 +30,7 @@ import LawfulConversions.Relations.LazyByteStringAndLazyByteStringBuilder () import LawfulConversions.Relations.LazyByteStringAndLazyText () import LawfulConversions.Relations.LazyByteStringAndShortByteString ()+import LawfulConversions.Relations.LazyByteStringAndText () import LawfulConversions.Relations.LazyByteStringAndTextArray () import LawfulConversions.Relations.LazyByteStringAndWord8List () import LawfulConversions.Relations.LazyByteStringBuilderAndShortByteString ()
+ src/library/LawfulConversions/Relations/ByteStringAndLazyText.hs view
@@ -0,0 +1,19 @@+{-# OPTIONS_GHC -Wno-orphans #-}++module LawfulConversions.Relations.ByteStringAndLazyText 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 ByteString Data.Text.Lazy.Text where+  to = Data.ByteString.Lazy.toStrict . Data.Text.Lazy.Encoding.encodeUtf8+  maybeFrom = either (const Nothing) Just . Data.Text.Lazy.Encoding.decodeUtf8' . Data.ByteString.Lazy.fromStrict++-- | Lenient UTF-8 decoding.+instance IsMany ByteString Data.Text.Lazy.Text where+  from = Data.Text.Lazy.Encoding.decodeUtf8With Data.Text.Encoding.Error.lenientDecode . Data.ByteString.Lazy.fromStrict
src/library/LawfulConversions/Relations/LazyByteStringAndLazyText.hs view
@@ -3,11 +3,17 @@ module LawfulConversions.Relations.LazyByteStringAndLazyText 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 Data.Text.Lazy.Text where   to = Data.Text.Lazy.Encoding.encodeUtf8   maybeFrom = either (const Nothing) Just . Data.Text.Lazy.Encoding.decodeUtf8'++-- | Lenient UTF-8 decoding.+instance IsMany Data.ByteString.Lazy.ByteString Data.Text.Lazy.Text where+  from = Data.Text.Lazy.Encoding.decodeUtf8With Data.Text.Encoding.Error.lenientDecode
+ src/library/LawfulConversions/Relations/LazyByteStringAndText.hs view
@@ -0,0 +1,20 @@+{-# OPTIONS_GHC -Wno-orphans #-}++module LawfulConversions.Relations.LazyByteStringAndText where++import qualified Data.ByteString.Lazy+import qualified Data.Text+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 Data.Text.Text where+  to = Data.Text.Lazy.Encoding.encodeUtf8 . Data.Text.Lazy.fromStrict+  maybeFrom = either (const Nothing) (Just . Data.Text.Lazy.toStrict) . Data.Text.Lazy.Encoding.decodeUtf8'++-- | Lenient UTF-8 decoding.+instance IsMany Data.ByteString.Lazy.ByteString Data.Text.Text where+  from = Data.Text.Lazy.toStrict . Data.Text.Lazy.Encoding.decodeUtf8With Data.Text.Encoding.Error.lenientDecode