protocol-buffers-0.2.8: tests/UnittestProto/TestSparseEnum.hs
module UnittestProto.TestSparseEnum (TestSparseEnum(..)) where
import Prelude ((+))
import qualified Prelude as P'
import qualified Text.ProtocolBuffers.Header as P'
data TestSparseEnum = SPARSE_A
| SPARSE_B
| SPARSE_C
| SPARSE_D
| SPARSE_E
| SPARSE_F
| SPARSE_G
deriving (P'.Read, P'.Show, P'.Eq, P'.Ord, P'.Typeable)
instance P'.Mergeable TestSparseEnum
instance P'.Bounded TestSparseEnum where
minBound = SPARSE_A
maxBound = SPARSE_G
instance P'.Default TestSparseEnum where
defaultValue = SPARSE_A
instance P'.Enum TestSparseEnum where
fromEnum (SPARSE_A) = 123
fromEnum (SPARSE_B) = 62374
fromEnum (SPARSE_C) = 12589234
fromEnum (SPARSE_D) = 15
fromEnum (SPARSE_E) = 53452
fromEnum (SPARSE_F) = 0
fromEnum (SPARSE_G) = 2
toEnum 123 = SPARSE_A
toEnum 62374 = SPARSE_B
toEnum 12589234 = SPARSE_C
toEnum 15 = SPARSE_D
toEnum 53452 = SPARSE_E
toEnum 0 = SPARSE_F
toEnum 2 = SPARSE_G
succ (SPARSE_A) = SPARSE_B
succ (SPARSE_B) = SPARSE_C
succ (SPARSE_C) = SPARSE_D
succ (SPARSE_D) = SPARSE_E
succ (SPARSE_E) = SPARSE_F
succ (SPARSE_F) = SPARSE_G
pred (SPARSE_B) = SPARSE_A
pred (SPARSE_C) = SPARSE_B
pred (SPARSE_D) = SPARSE_C
pred (SPARSE_E) = SPARSE_D
pred (SPARSE_F) = SPARSE_E
pred (SPARSE_G) = SPARSE_F
instance P'.Wire TestSparseEnum where
wireSize ft' enum = P'.wireSize ft' (P'.fromEnum enum)
wirePut ft' enum = P'.wirePut ft' (P'.fromEnum enum)
wireGet 14 = P'.fmap P'.toEnum (P'.wireGet 14)
wireGet ft' = P'.wireGetErr ft'
instance P'.GPB TestSparseEnum
instance P'.MessageAPI msg' (msg' -> TestSparseEnum) TestSparseEnum where
getVal m' f' = f' m'
instance P'.ReflectEnum TestSparseEnum where
reflectEnum
= [(123, "SPARSE_A", SPARSE_A), (62374, "SPARSE_B", SPARSE_B), (12589234, "SPARSE_C", SPARSE_C), (15, "SPARSE_D", SPARSE_D),
(53452, "SPARSE_E", SPARSE_E), (0, "SPARSE_F", SPARSE_F), (2, "SPARSE_G", SPARSE_G)]
reflectEnumInfo _
= P'.EnumInfo (P'.ProtoName "" "UnittestProto" "TestSparseEnum") ["UnittestProto", "TestSparseEnum.hs"]
[(123, "SPARSE_A"), (62374, "SPARSE_B"), (12589234, "SPARSE_C"), (15, "SPARSE_D"), (53452, "SPARSE_E"), (0, "SPARSE_F"),
(2, "SPARSE_G")]