protocol-buffers-0.0.2: src/DescriptorProtos/FileOptions/OptimizeMode.hs
module DescriptorProtos.FileOptions.OptimizeMode
(OptimizeMode(..))
where
import Data.Monoid
import ProtocolBuffers.Header
data OptimizeMode = SPEED | CODE_SIZE
deriving (Show,Eq,Ord,Typeable)
instance OptionFlag a => Monoid (Option a OptimizeMode) where mempty = Absent; mappend = op'Last
err'Name :: String
err'Name = "DescriptorProtos.FileOptions.OptimizeMode"
err' :: String -> b
err' a = error (err'Name ++ " : " ++ show a)
instance Enum OptimizeMode where
fromEnum SPEED = 1
fromEnum CODE_SIZE = 2
toEnum 1 = SPEED
toEnum 2 = CODE_SIZE
toEnum x = err' ("toEnum failed on value "++show x)
succ SPEED = CODE_SIZE
succ CODE_SIZE = err' ("succ failed on value "++show CODE_SIZE)
pred SPEED = err' ("pred failed on value "++show SPEED)
pred CODE_SIZE = SPEED