| 1 | {-# LANGUAGE QuasiQuotes #-} |
|---|
| 2 | {-# LANGUAGE TemplateHaskell #-} |
|---|
| 3 | {-# LANGUAGE TypeFamilies #-} |
|---|
| 4 | {-# LANGUAGE GeneralizedNewtypeDeriving #-} |
|---|
| 5 | module Tests where |
|---|
| 6 | |
|---|
| 7 | import Database.Persist |
|---|
| 8 | import Database.Persist.TH |
|---|
| 9 | |
|---|
| 10 | mkPersist [$persist| |
|---|
| 11 | Person |
|---|
| 12 | name String Update Eq Ne Desc |
|---|
| 13 | age Int Update "Asc" Desc Lt "some ignored -- attribute" Eq Add |
|---|
| 14 | color String Maybe Eq Ne -- this is a comment sql=foobarbaz |
|---|
| 15 | PersonNameKey name -- this is a comment sql=foobarbaz |
|---|
| 16 | Pet |
|---|
| 17 | owner PersonId Eq |
|---|
| 18 | name String |
|---|
| 19 | type PetType |
|---|
| 20 | |] |
|---|
| 21 | |
|---|
| 22 | data PetType = Cat | Dog |
|---|
| 23 | deriving (Show, Read, Eq) |
|---|
| 24 | derivePersistField "PetType" |
|---|