pinch 0.1.0.0 → 0.1.0.1
raw patch · 6 files changed
+25/−5 lines, 6 files
Files
- CHANGES.md +7/−0
- Pinch/Internal/Generic.hs +4/−4
- README.md +3/−0
- examples/keyvalue/Client.hs +5/−0
- examples/keyvalue/Server.hs +5/−0
- pinch.cabal +1/−1
CHANGES.md view
@@ -1,4 +1,11 @@+0.1.0.1+=======++- Fixed recursion in C pre-processor expansion. This can break the build on+ some systems.+ 0.1.0.0 ======= - Initial release.+
Pinch/Internal/Generic.hs view
@@ -17,9 +17,9 @@ #if __GLASGOW_HASKELL__ < 709 {-# LANGUAGE OverlappingInstances #-}-#define OVERLAPPABLE+#define OVERLAP #else-#define OVERLAPPABLE {-# OVERLAPPABLE #-}+#define OVERLAP {-# OVERLAPPABLE #-} #endif -- | -- Module : Pinch.Internal.Generic@@ -73,7 +73,7 @@ combine (VStruct as) (VStruct bs) = VStruct $ as `HM.union` bs -instance OVERLAPPABLE GPinchable a => GPinchable (M1 i c a) where+instance OVERLAP GPinchable a => GPinchable (M1 i c a) where type GTag (M1 i c a) = GTag a gPinch = gPinch . unM1 gUnpinch = fmap M1 . gUnpinch@@ -148,7 +148,7 @@ field :: Functor f => (a -> f b) -> Field n a -> f (Field n b) field f (Field a) = Field <$> f a -instance OVERLAPPABLE (Pinchable a, KnownNat n)+instance OVERLAP (Pinchable a, KnownNat n) => GPinchable (K1 i (Field n a)) where type GTag (K1 i (Field n a)) = TStruct gPinch (K1 (Field a)) = struct [n .= a]
README.md view
@@ -1,3 +1,5 @@+[![build-status]](https://travis-ci.org/abhinav/pinch)+ `pinch` aims to provide an alternative implementation of Apache Thrift for Haskell. The `pinch` library itself acts only as a serialization library. Types specify their Thrift encoding by defining instances of the `Pinchable`@@ -6,5 +8,6 @@ Haddock documentation for this package is avilable on [Hackage] and [here]. + [build-status]: https://travis-ci.org/abhinav/pinch.svg?branch=master [Hackage]: http://hackage.haskell.org/package/pinch [here]: http://abhinavg.net/pinch/
examples/keyvalue/Client.hs view
@@ -1,8 +1,13 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} module Main (main) where++#if __GLASGOW_HASKELL__ < 709+import Control.Applicative+#endif import Control.Monad import Control.Monad.Catch (Exception, throwM)
examples/keyvalue/Server.hs view
@@ -1,7 +1,12 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} module Main (main) where++#if __GLASGOW_HASKELL__ < 709+import Control.Applicative+#endif import Data.ByteString.Lazy (fromStrict, toStrict) import Data.ByteString.Lazy.Char8 (pack)
pinch.cabal view
@@ -1,5 +1,5 @@ name: pinch-version: 0.1.0.0+version: 0.1.0.1 synopsis: An alternative implementation of Thrift for Haskell. homepage: https://github.com/abhinav/pinch license: BSD3