diff options
Diffstat (limited to 'spec/src/Thermoprint/Identifiers.hs')
-rw-r--r-- | spec/src/Thermoprint/Identifiers.hs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/spec/src/Thermoprint/Identifiers.hs b/spec/src/Thermoprint/Identifiers.hs index ee35e24..0d6f56a 100644 --- a/spec/src/Thermoprint/Identifiers.hs +++ b/spec/src/Thermoprint/Identifiers.hs | |||
@@ -8,17 +8,21 @@ module Thermoprint.Identifiers | |||
8 | , castId | 8 | , castId |
9 | ) where | 9 | ) where |
10 | 10 | ||
11 | import Data.Typeable (Typeable) | ||
12 | import GHC.Generics (Generic) | ||
13 | import Control.DeepSeq (NFData) | ||
14 | |||
11 | import Servant.API (ToText, FromText) | 15 | import Servant.API (ToText, FromText) |
12 | import Data.Aeson (FromJSON, ToJSON) | 16 | import Data.Aeson (FromJSON, ToJSON) |
13 | 17 | ||
14 | newtype PrinterId = PrinterId Integer | 18 | newtype PrinterId = PrinterId Integer |
15 | deriving (Show, Read, Eq, Ord, Num, Real, Integral, Enum, FromText, ToText, FromJSON, ToJSON) | 19 | deriving (Show, Read, Eq, Ord, Num, Real, Integral, Enum, FromText, ToText, FromJSON, ToJSON, Typeable, Generic, NFData) |
16 | 20 | ||
17 | newtype JobId = JobId Integer | 21 | newtype JobId = JobId Integer |
18 | deriving (Show, Read, Eq, Ord, Num, Real, Integral, Enum, FromText, ToText, FromJSON, ToJSON) | 22 | deriving (Show, Read, Eq, Ord, Num, Real, Integral, Enum, FromText, ToText, FromJSON, ToJSON, Typeable, Generic, NFData) |
19 | 23 | ||
20 | newtype DraftId = DraftId Integer | 24 | newtype DraftId = DraftId Integer |
21 | deriving (Show, Read, Eq, Ord, Num, Real, Integral, Enum, FromText, ToText, FromJSON, ToJSON) | 25 | deriving (Show, Read, Eq, Ord, Num, Real, Integral, Enum, FromText, ToText, FromJSON, ToJSON, Typeable, Generic, NFData) |
22 | 26 | ||
23 | castId :: (Integral a, Enum b) => a -> b | 27 | castId :: (Integral a, Enum b) => a -> b |
24 | castId = toEnum . fromInteger . toInteger | 28 | castId = toEnum . fromInteger . toInteger |