change auto-derive behaviour

This commit is contained in:
Hideyuki Tanaka
2011-11-18 16:49:12 +09:00
parent 43903d446a
commit 1845f34b81
3 changed files with 34 additions and 21 deletions

View File

@@ -1,4 +1,5 @@
{-# Language TemplateHaskell #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE OverloadedStrings #-}
import Data.MessagePack
@@ -7,27 +8,27 @@ data T
| B Double
deriving (Show, Eq)
deriveObject ''T
deriveObject True ''T
data U
= C { c1 :: Int, c2 :: String }
| D { z1 :: Double }
deriving (Show, Eq)
deriveObject ''U
deriveObject True ''U
data V
= E String | F
deriving (Show, Eq)
deriveObject ''V
deriveObject True ''V
data W a
= G a String
| H { hHoge :: Int, h_age :: a }
deriving (Show, Eq)
deriveObject ''W
deriveObject True ''W
test :: (OBJECT a, Show a, Eq a) => a -> IO ()
test v = do