module GI.GIRepository.Flags
(
VFuncInfoFlags(..) ,
RepositoryLoadFlags(..) ,
FunctionInfoFlags(..) ,
FieldInfoFlags(..) ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
data VFuncInfoFlags =
VFuncInfoFlagsMustChainUp
| VFuncInfoFlagsMustOverride
| VFuncInfoFlagsMustNotOverride
| VFuncInfoFlagsThrows
| AnotherVFuncInfoFlags Int
deriving (Show, Eq)
instance Enum VFuncInfoFlags where
fromEnum VFuncInfoFlagsMustChainUp = 1
fromEnum VFuncInfoFlagsMustOverride = 2
fromEnum VFuncInfoFlagsMustNotOverride = 4
fromEnum VFuncInfoFlagsThrows = 8
fromEnum (AnotherVFuncInfoFlags k) = k
toEnum 1 = VFuncInfoFlagsMustChainUp
toEnum 2 = VFuncInfoFlagsMustOverride
toEnum 4 = VFuncInfoFlagsMustNotOverride
toEnum 8 = VFuncInfoFlagsThrows
toEnum k = AnotherVFuncInfoFlags k
instance IsGFlag VFuncInfoFlags
data RepositoryLoadFlags =
RepositoryLoadFlagsIrepositoryLoadFlagLazy
| AnotherRepositoryLoadFlags Int
deriving (Show, Eq)
instance Enum RepositoryLoadFlags where
fromEnum RepositoryLoadFlagsIrepositoryLoadFlagLazy = 1
fromEnum (AnotherRepositoryLoadFlags k) = k
toEnum 1 = RepositoryLoadFlagsIrepositoryLoadFlagLazy
toEnum k = AnotherRepositoryLoadFlags k
instance IsGFlag RepositoryLoadFlags
data FunctionInfoFlags =
FunctionInfoFlagsIsMethod
| FunctionInfoFlagsIsConstructor
| FunctionInfoFlagsIsGetter
| FunctionInfoFlagsIsSetter
| FunctionInfoFlagsWrapsVfunc
| FunctionInfoFlagsThrows
| AnotherFunctionInfoFlags Int
deriving (Show, Eq)
instance Enum FunctionInfoFlags where
fromEnum FunctionInfoFlagsIsMethod = 1
fromEnum FunctionInfoFlagsIsConstructor = 2
fromEnum FunctionInfoFlagsIsGetter = 4
fromEnum FunctionInfoFlagsIsSetter = 8
fromEnum FunctionInfoFlagsWrapsVfunc = 16
fromEnum FunctionInfoFlagsThrows = 32
fromEnum (AnotherFunctionInfoFlags k) = k
toEnum 1 = FunctionInfoFlagsIsMethod
toEnum 2 = FunctionInfoFlagsIsConstructor
toEnum 4 = FunctionInfoFlagsIsGetter
toEnum 8 = FunctionInfoFlagsIsSetter
toEnum 16 = FunctionInfoFlagsWrapsVfunc
toEnum 32 = FunctionInfoFlagsThrows
toEnum k = AnotherFunctionInfoFlags k
instance IsGFlag FunctionInfoFlags
data FieldInfoFlags =
FieldInfoFlagsReadable
| FieldInfoFlagsWritable
| AnotherFieldInfoFlags Int
deriving (Show, Eq)
instance Enum FieldInfoFlags where
fromEnum FieldInfoFlagsReadable = 1
fromEnum FieldInfoFlagsWritable = 2
fromEnum (AnotherFieldInfoFlags k) = k
toEnum 1 = FieldInfoFlagsReadable
toEnum 2 = FieldInfoFlagsWritable
toEnum k = AnotherFieldInfoFlags k
instance IsGFlag FieldInfoFlags