persistable-record 0.4.1.2 → 0.4.2.0
raw patch · 3 files changed
+12/−5 lines, 3 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Database.Record.ToSql: instance (Database.Record.Persistable.PersistableType q, Database.Record.Persistable.PersistableWidth a, Database.Record.ToSql.ToSql q a) => Database.Record.ToSql.ToSql q (GHC.Base.Maybe a)
+ Database.Record.ToSql: instance (Database.Record.Persistable.PersistableType q, Database.Record.ToSql.ToSql q a) => Database.Record.ToSql.ToSql q (GHC.Base.Maybe a)
- Database.Record.ToSql: class ToSql q a
+ Database.Record.ToSql: class PersistableWidth a => ToSql q a
Files
- persistable-record.cabal +1/−1
- src/Database/Record/ToSql.hs +2/−2
- test/nestedEq.hs +9/−2
persistable-record.cabal view
@@ -1,5 +1,5 @@ name: persistable-record-version: 0.4.1.2+version: 0.4.2.0 synopsis: Binding between SQL database values and haskell records. description: This package contiains types to represent table constraints and interfaces to bind between SQL database values and Haskell records.
src/Database/Record/ToSql.hs view
@@ -91,7 +91,7 @@ -- | Inference rule interface for 'RecordToSql' proof object.-class ToSql q a where+class PersistableWidth a => ToSql q a where -- | Infer 'RecordToSql' proof object. recordToSql :: RecordToSql q a @@ -102,7 +102,7 @@ -- | Inference rule of 'RecordToSql' proof object which can convert -- from Haskell 'Maybe' type into list of SQL type ['q'].-instance (PersistableType q, PersistableWidth a, ToSql q a) => ToSql q (Maybe a) where+instance (PersistableType q, ToSql q a) => ToSql q (Maybe a) where recordToSql = maybeRecord persistableType persistableWidth recordToSql -- | Inference rule of 'RecordToSql' proof object which can convert
test/nestedEq.hs view
@@ -5,10 +5,11 @@ import Test.QuickCheck.Simple (defaultMain, eqTest) import Database.Record- (PersistableType (..),+ (PersistableType (..), PersistableWidth (..), FromSql (..), valueRecordFromSql, toRecord, ToSql (..), valueRecordToSql)-import Database.Record.Persistable (unsafePersistableSqlTypeFromNull)+import Database.Record.Persistable+ (unsafePersistableSqlTypeFromNull, unsafeValueWidth) instance PersistableType String where@@ -21,8 +22,14 @@ instance FromSql String Int where recordFromSql = valueRecordFromSql read +instance PersistableWidth String where+ persistableWidth = unsafeValueWidth+ instance ToSql String String where recordToSql = valueRecordToSql id++instance PersistableWidth Int where+ persistableWidth = unsafeValueWidth instance ToSql String Int where recordToSql = valueRecordToSql show