packages feed

pretty-types 0.2.1.0 → 0.2.2.0

raw patch · 4 files changed

+17/−1 lines, 4 filesdep +taggedPVP ok

version bump matches the API change (PVP)

Dependencies added: tagged

API changes (from Hackage documentation)

Files

ChangeLog.md view
@@ -1,3 +1,7 @@+## Version 0.2.2.0++* Added a ToPretty instance for 'Tagged'+ ## Version 0.2.1.0  * Added ToPretty instances for type level strings and numbers
pretty-types.cabal view
@@ -1,5 +1,5 @@ name:                pretty-types-version:             0.2.1.0+version:             0.2.2.0 synopsis:            A small pretty printing DSL for complex types. description:         Please see README.md homepage:            https://github.com/sheyll/pretty-types#readme@@ -22,6 +22,7 @@   exposed-modules:     Data.Type.Pretty   build-depends:       base >= 4.9 && < 5                      , mtl >= 2.2 && < 3+                     , tagged >= 0.8 && < 1   default-language:    Haskell2010   ghc-options:         -Wall -funbox-strict-fields -fno-warn-unused-do-bind   default-extensions:  BangPatterns@@ -61,6 +62,7 @@   build-depends:       base >= 4.9 && < 5                      , hspec                      , pretty-types+                     , tagged >= 0.8 && < 1   default-language:    Haskell2010   default-extensions:  BangPatterns                      , ConstraintKinds
spec/PrettyTypesSpec.hs view
@@ -8,6 +8,7 @@ import Data.Proxy import Data.Word import Data.Int+import Data.Tagged  main :: IO () main = hspec spec@@ -143,6 +144,8 @@       `shouldBe` "foo\n  bar1\n  bar2\n    bar3\n    bar4"    describe "ToPretty" $ do+    it "renders a 'Tagged'" $+      showPretty (PX :: PX (ToPretty (Tagged "foo" Word8))) `shouldBe` "Word8 (foo)"     it "renders a type level symbol like PutStr" $       showPretty (PX :: PX (ToPretty "foo")) `shouldBe` showPretty (PX :: PX (PutStr "foo"))     it "renders a type level natural like PutNat" $
src/Data/Type/Pretty.hs view
@@ -111,6 +111,7 @@ import Text.Printf import Data.Word import Data.Int+import Data.Tagged  -- * Pretty Printing Types @@ -385,6 +386,12 @@ type family PrettyOften (n :: Nat) (doc :: PrettyType) :: PrettyType where   PrettyOften 0 doc = 'PrettyEmpty   PrettyOften n doc = doc <++> PrettyOften (n-1) doc++-- *** Pretty Printing 'Tagged' Values++-- | Pretty print a 'Tagged' value.+-- @since 0.2.2.0+type instance ToPretty (Tagged s b) = ToPretty b <+> PrettyParens (ToPretty s)  -- * Basic Building Blocks