packages feed

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")]