packages feed

typehash 1.4.0.0 → 1.4.0.1

raw patch · 2 files changed

+19/−6 lines, 2 filesdep +sybdep ~base

Dependencies added: syb

Dependency ranges changed: base

Files

src/Data/TypeHash.hs view
@@ -44,7 +44,7 @@  data Type     = Name { typeName :: String }            -- Abstract type, or recursive reference-    | Data { typeName :: String, constrs :: [Constructor] }+    | Data { typeName :: String, dconstrs :: [Constructor] }     deriving (Eq, Ord, Show, Typeable, Data) type Constructor = (String, [Field]) type Field = (String, Type)  -- a unique number is used for missing field names@@ -54,7 +54,7 @@     let tn = show $ fullTypeOf x     in  case dataTypeRep $ dataTypeOf x of         AlgRep cs | tn `notElem` tns ->-             Data { typeName = tn, constrs = map (gConstr (tn:tns) x) cs }+             Data { typeName = tn, dconstrs = map (gConstr (tn:tns) x) cs }         _ -> Name { typeName = tn } -- Use type name for truly abstract types and recursive types.  gConstr :: (Data a) => [String] -> a -> Constr -> (String, [Field])
typehash.cabal view
@@ -1,5 +1,6 @@ Name:		typehash-Version:	1.4.0.0+Cabal-Version:  >= 1.2+Version:	1.4.0.1 License:	BSD3 Author:		Lennart Augustsson Maintainer:	Lennart Augustsson@@ -10,6 +11,18 @@ Description:	Produce a hash for a type that is unique for that type. 		The hash takes both actual type names and type structure into account. 		This is useful for checking the type of persisted values.-Hs-Source-Dirs: src-Build-Depends:	base < 4, mtl, bytestring, pureMD5, binary-Exposed-modules:	Data.TypeHash++Flag base4+    Description: Use base-4.*+    Default:    True++Library+  Hs-Source-Dirs: src+  Build-Depends: mtl, bytestring, pureMD5, binary+  If flag(base4)+    Build-Depends:+      base >= 4 && < 4.4,+      syb < 0.3+  else+    Build-Depends: base < 4+  Exposed-modules:	Data.TypeHash