{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (garetxe@gmail.com) -} module GI.GLib.Flags ( -- * Exported types TraverseFlags(..) , TestTrapFlags(..) , TestSubprocessFlags(..) , SpawnFlags(..) , RegexMatchFlags(..) , RegexCompileFlags(..) , OptionFlags(..) , MarkupParseFlags(..) , MarkupCollectType(..) , LogLevelFlags(..) , KeyFileFlags(..) , IOFlags(..) , IOCondition(..) , HookFlagMask(..) , FormatSizeFlags(..) , FileTest(..) , AsciiType(..) , ) 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 -- Flags TraverseFlags data TraverseFlags = TraverseFlagsLeaves | TraverseFlagsNonLeaves | TraverseFlagsAll | TraverseFlagsMask | TraverseFlagsLeafs | TraverseFlagsNonLeafs | AnotherTraverseFlags Int deriving (Show, Eq) instance Enum TraverseFlags where fromEnum TraverseFlagsLeaves = 1 fromEnum TraverseFlagsNonLeaves = 2 fromEnum TraverseFlagsAll = 3 fromEnum TraverseFlagsMask = 3 fromEnum TraverseFlagsLeafs = 1 fromEnum TraverseFlagsNonLeafs = 2 fromEnum (AnotherTraverseFlags k) = k toEnum 1 = TraverseFlagsLeaves toEnum 2 = TraverseFlagsNonLeaves toEnum 3 = TraverseFlagsAll toEnum k = AnotherTraverseFlags k instance IsGFlag TraverseFlags -- Flags TestTrapFlags {-# DEPRECATED TestTrapFlags ["#GTestTrapFlags is used only with g_test_trap_fork(),","which is deprecated. g_test_trap_subprocess() uses","#GTestTrapSubprocessFlags."]#-} data TestTrapFlags = TestTrapFlagsSilenceStdout | TestTrapFlagsSilenceStderr | TestTrapFlagsInheritStdin | AnotherTestTrapFlags Int deriving (Show, Eq) instance Enum TestTrapFlags where fromEnum TestTrapFlagsSilenceStdout = 128 fromEnum TestTrapFlagsSilenceStderr = 256 fromEnum TestTrapFlagsInheritStdin = 512 fromEnum (AnotherTestTrapFlags k) = k toEnum 128 = TestTrapFlagsSilenceStdout toEnum 256 = TestTrapFlagsSilenceStderr toEnum 512 = TestTrapFlagsInheritStdin toEnum k = AnotherTestTrapFlags k instance IsGFlag TestTrapFlags -- Flags TestSubprocessFlags data TestSubprocessFlags = TestSubprocessFlagsStdin | TestSubprocessFlagsStdout | TestSubprocessFlagsStderr | AnotherTestSubprocessFlags Int deriving (Show, Eq) instance Enum TestSubprocessFlags where fromEnum TestSubprocessFlagsStdin = 1 fromEnum TestSubprocessFlagsStdout = 2 fromEnum TestSubprocessFlagsStderr = 4 fromEnum (AnotherTestSubprocessFlags k) = k toEnum 1 = TestSubprocessFlagsStdin toEnum 2 = TestSubprocessFlagsStdout toEnum 4 = TestSubprocessFlagsStderr toEnum k = AnotherTestSubprocessFlags k instance IsGFlag TestSubprocessFlags -- Flags SpawnFlags data SpawnFlags = SpawnFlagsDefault | SpawnFlagsLeaveDescriptorsOpen | SpawnFlagsDoNotReapChild | SpawnFlagsSearchPath | SpawnFlagsStdoutToDevNull | SpawnFlagsStderrToDevNull | SpawnFlagsChildInheritsStdin | SpawnFlagsFileAndArgvZero | SpawnFlagsSearchPathFromEnvp | SpawnFlagsCloexecPipes | AnotherSpawnFlags Int deriving (Show, Eq) instance Enum SpawnFlags where fromEnum SpawnFlagsDefault = 0 fromEnum SpawnFlagsLeaveDescriptorsOpen = 1 fromEnum SpawnFlagsDoNotReapChild = 2 fromEnum SpawnFlagsSearchPath = 4 fromEnum SpawnFlagsStdoutToDevNull = 8 fromEnum SpawnFlagsStderrToDevNull = 16 fromEnum SpawnFlagsChildInheritsStdin = 32 fromEnum SpawnFlagsFileAndArgvZero = 64 fromEnum SpawnFlagsSearchPathFromEnvp = 128 fromEnum SpawnFlagsCloexecPipes = 256 fromEnum (AnotherSpawnFlags k) = k toEnum 0 = SpawnFlagsDefault toEnum 1 = SpawnFlagsLeaveDescriptorsOpen toEnum 2 = SpawnFlagsDoNotReapChild toEnum 4 = SpawnFlagsSearchPath toEnum 8 = SpawnFlagsStdoutToDevNull toEnum 16 = SpawnFlagsStderrToDevNull toEnum 32 = SpawnFlagsChildInheritsStdin toEnum 64 = SpawnFlagsFileAndArgvZero toEnum 128 = SpawnFlagsSearchPathFromEnvp toEnum 256 = SpawnFlagsCloexecPipes toEnum k = AnotherSpawnFlags k instance IsGFlag SpawnFlags -- Flags RegexMatchFlags data RegexMatchFlags = RegexMatchFlagsAnchored | RegexMatchFlagsNotbol | RegexMatchFlagsNoteol | RegexMatchFlagsNotempty | RegexMatchFlagsPartial | RegexMatchFlagsNewlineCr | RegexMatchFlagsNewlineLf | RegexMatchFlagsNewlineCrlf | RegexMatchFlagsNewlineAny | RegexMatchFlagsNewlineAnycrlf | RegexMatchFlagsBsrAnycrlf | RegexMatchFlagsBsrAny | RegexMatchFlagsPartialSoft | RegexMatchFlagsPartialHard | RegexMatchFlagsNotemptyAtstart | AnotherRegexMatchFlags Int deriving (Show, Eq) instance Enum RegexMatchFlags where fromEnum RegexMatchFlagsAnchored = 16 fromEnum RegexMatchFlagsNotbol = 128 fromEnum RegexMatchFlagsNoteol = 256 fromEnum RegexMatchFlagsNotempty = 1024 fromEnum RegexMatchFlagsPartial = 32768 fromEnum RegexMatchFlagsNewlineCr = 1048576 fromEnum RegexMatchFlagsNewlineLf = 2097152 fromEnum RegexMatchFlagsNewlineCrlf = 3145728 fromEnum RegexMatchFlagsNewlineAny = 4194304 fromEnum RegexMatchFlagsNewlineAnycrlf = 5242880 fromEnum RegexMatchFlagsBsrAnycrlf = 8388608 fromEnum RegexMatchFlagsBsrAny = 16777216 fromEnum RegexMatchFlagsPartialSoft = 32768 fromEnum RegexMatchFlagsPartialHard = 134217728 fromEnum RegexMatchFlagsNotemptyAtstart = 268435456 fromEnum (AnotherRegexMatchFlags k) = k toEnum 16 = RegexMatchFlagsAnchored toEnum 128 = RegexMatchFlagsNotbol toEnum 256 = RegexMatchFlagsNoteol toEnum 1024 = RegexMatchFlagsNotempty toEnum 32768 = RegexMatchFlagsPartial toEnum 1048576 = RegexMatchFlagsNewlineCr toEnum 2097152 = RegexMatchFlagsNewlineLf toEnum 3145728 = RegexMatchFlagsNewlineCrlf toEnum 4194304 = RegexMatchFlagsNewlineAny toEnum 5242880 = RegexMatchFlagsNewlineAnycrlf toEnum 8388608 = RegexMatchFlagsBsrAnycrlf toEnum 16777216 = RegexMatchFlagsBsrAny toEnum 134217728 = RegexMatchFlagsPartialHard toEnum 268435456 = RegexMatchFlagsNotemptyAtstart toEnum k = AnotherRegexMatchFlags k instance IsGFlag RegexMatchFlags -- Flags RegexCompileFlags data RegexCompileFlags = RegexCompileFlagsCaseless | RegexCompileFlagsMultiline | RegexCompileFlagsDotall | RegexCompileFlagsExtended | RegexCompileFlagsAnchored | RegexCompileFlagsDollarEndonly | RegexCompileFlagsUngreedy | RegexCompileFlagsRaw | RegexCompileFlagsNoAutoCapture | RegexCompileFlagsOptimize | RegexCompileFlagsFirstline | RegexCompileFlagsDupnames | RegexCompileFlagsNewlineCr | RegexCompileFlagsNewlineLf | RegexCompileFlagsNewlineCrlf | RegexCompileFlagsNewlineAnycrlf | RegexCompileFlagsBsrAnycrlf | RegexCompileFlagsJavascriptCompat | AnotherRegexCompileFlags Int deriving (Show, Eq) instance Enum RegexCompileFlags where fromEnum RegexCompileFlagsCaseless = 1 fromEnum RegexCompileFlagsMultiline = 2 fromEnum RegexCompileFlagsDotall = 4 fromEnum RegexCompileFlagsExtended = 8 fromEnum RegexCompileFlagsAnchored = 16 fromEnum RegexCompileFlagsDollarEndonly = 32 fromEnum RegexCompileFlagsUngreedy = 512 fromEnum RegexCompileFlagsRaw = 2048 fromEnum RegexCompileFlagsNoAutoCapture = 4096 fromEnum RegexCompileFlagsOptimize = 8192 fromEnum RegexCompileFlagsFirstline = 262144 fromEnum RegexCompileFlagsDupnames = 524288 fromEnum RegexCompileFlagsNewlineCr = 1048576 fromEnum RegexCompileFlagsNewlineLf = 2097152 fromEnum RegexCompileFlagsNewlineCrlf = 3145728 fromEnum RegexCompileFlagsNewlineAnycrlf = 5242880 fromEnum RegexCompileFlagsBsrAnycrlf = 8388608 fromEnum RegexCompileFlagsJavascriptCompat = 33554432 fromEnum (AnotherRegexCompileFlags k) = k toEnum 1 = RegexCompileFlagsCaseless toEnum 2 = RegexCompileFlagsMultiline toEnum 4 = RegexCompileFlagsDotall toEnum 8 = RegexCompileFlagsExtended toEnum 16 = RegexCompileFlagsAnchored toEnum 32 = RegexCompileFlagsDollarEndonly toEnum 512 = RegexCompileFlagsUngreedy toEnum 2048 = RegexCompileFlagsRaw toEnum 4096 = RegexCompileFlagsNoAutoCapture toEnum 8192 = RegexCompileFlagsOptimize toEnum 262144 = RegexCompileFlagsFirstline toEnum 524288 = RegexCompileFlagsDupnames toEnum 1048576 = RegexCompileFlagsNewlineCr toEnum 2097152 = RegexCompileFlagsNewlineLf toEnum 3145728 = RegexCompileFlagsNewlineCrlf toEnum 5242880 = RegexCompileFlagsNewlineAnycrlf toEnum 8388608 = RegexCompileFlagsBsrAnycrlf toEnum 33554432 = RegexCompileFlagsJavascriptCompat toEnum k = AnotherRegexCompileFlags k instance IsGFlag RegexCompileFlags -- Flags OptionFlags data OptionFlags = OptionFlagsNone | OptionFlagsHidden | OptionFlagsInMain | OptionFlagsReverse | OptionFlagsNoArg | OptionFlagsFilename | OptionFlagsOptionalArg | OptionFlagsNoalias | AnotherOptionFlags Int deriving (Show, Eq) instance Enum OptionFlags where fromEnum OptionFlagsNone = 0 fromEnum OptionFlagsHidden = 1 fromEnum OptionFlagsInMain = 2 fromEnum OptionFlagsReverse = 4 fromEnum OptionFlagsNoArg = 8 fromEnum OptionFlagsFilename = 16 fromEnum OptionFlagsOptionalArg = 32 fromEnum OptionFlagsNoalias = 64 fromEnum (AnotherOptionFlags k) = k toEnum 0 = OptionFlagsNone toEnum 1 = OptionFlagsHidden toEnum 2 = OptionFlagsInMain toEnum 4 = OptionFlagsReverse toEnum 8 = OptionFlagsNoArg toEnum 16 = OptionFlagsFilename toEnum 32 = OptionFlagsOptionalArg toEnum 64 = OptionFlagsNoalias toEnum k = AnotherOptionFlags k instance IsGFlag OptionFlags -- Flags MarkupParseFlags data MarkupParseFlags = MarkupParseFlagsDoNotUseThisUnsupportedFlag | MarkupParseFlagsTreatCdataAsText | MarkupParseFlagsPrefixErrorPosition | MarkupParseFlagsIgnoreQualified | AnotherMarkupParseFlags Int deriving (Show, Eq) instance Enum MarkupParseFlags where fromEnum MarkupParseFlagsDoNotUseThisUnsupportedFlag = 1 fromEnum MarkupParseFlagsTreatCdataAsText = 2 fromEnum MarkupParseFlagsPrefixErrorPosition = 4 fromEnum MarkupParseFlagsIgnoreQualified = 8 fromEnum (AnotherMarkupParseFlags k) = k toEnum 1 = MarkupParseFlagsDoNotUseThisUnsupportedFlag toEnum 2 = MarkupParseFlagsTreatCdataAsText toEnum 4 = MarkupParseFlagsPrefixErrorPosition toEnum 8 = MarkupParseFlagsIgnoreQualified toEnum k = AnotherMarkupParseFlags k instance IsGFlag MarkupParseFlags -- Flags MarkupCollectType data MarkupCollectType = MarkupCollectTypeInvalid | MarkupCollectTypeString | MarkupCollectTypeStrdup | MarkupCollectTypeBoolean | MarkupCollectTypeTristate | MarkupCollectTypeOptional | AnotherMarkupCollectType Int deriving (Show, Eq) instance Enum MarkupCollectType where fromEnum MarkupCollectTypeInvalid = 0 fromEnum MarkupCollectTypeString = 1 fromEnum MarkupCollectTypeStrdup = 2 fromEnum MarkupCollectTypeBoolean = 3 fromEnum MarkupCollectTypeTristate = 4 fromEnum MarkupCollectTypeOptional = 65536 fromEnum (AnotherMarkupCollectType k) = k toEnum 0 = MarkupCollectTypeInvalid toEnum 1 = MarkupCollectTypeString toEnum 2 = MarkupCollectTypeStrdup toEnum 3 = MarkupCollectTypeBoolean toEnum 4 = MarkupCollectTypeTristate toEnum 65536 = MarkupCollectTypeOptional toEnum k = AnotherMarkupCollectType k instance IsGFlag MarkupCollectType -- Flags LogLevelFlags data LogLevelFlags = LogLevelFlagsFlagRecursion | LogLevelFlagsFlagFatal | LogLevelFlagsLevelError | LogLevelFlagsLevelCritical | LogLevelFlagsLevelWarning | LogLevelFlagsLevelMessage | LogLevelFlagsLevelInfo | LogLevelFlagsLevelDebug | LogLevelFlagsLevelMask | AnotherLogLevelFlags Int deriving (Show, Eq) instance Enum LogLevelFlags where fromEnum LogLevelFlagsFlagRecursion = 1 fromEnum LogLevelFlagsFlagFatal = 2 fromEnum LogLevelFlagsLevelError = 4 fromEnum LogLevelFlagsLevelCritical = 8 fromEnum LogLevelFlagsLevelWarning = 16 fromEnum LogLevelFlagsLevelMessage = 32 fromEnum LogLevelFlagsLevelInfo = 64 fromEnum LogLevelFlagsLevelDebug = 128 fromEnum LogLevelFlagsLevelMask = -4 fromEnum (AnotherLogLevelFlags k) = k toEnum -4 = LogLevelFlagsLevelMask toEnum 1 = LogLevelFlagsFlagRecursion toEnum 2 = LogLevelFlagsFlagFatal toEnum 4 = LogLevelFlagsLevelError toEnum 8 = LogLevelFlagsLevelCritical toEnum 16 = LogLevelFlagsLevelWarning toEnum 32 = LogLevelFlagsLevelMessage toEnum 64 = LogLevelFlagsLevelInfo toEnum 128 = LogLevelFlagsLevelDebug toEnum k = AnotherLogLevelFlags k instance IsGFlag LogLevelFlags -- Flags KeyFileFlags data KeyFileFlags = KeyFileFlagsNone | KeyFileFlagsKeepComments | KeyFileFlagsKeepTranslations | AnotherKeyFileFlags Int deriving (Show, Eq) instance Enum KeyFileFlags where fromEnum KeyFileFlagsNone = 0 fromEnum KeyFileFlagsKeepComments = 1 fromEnum KeyFileFlagsKeepTranslations = 2 fromEnum (AnotherKeyFileFlags k) = k toEnum 0 = KeyFileFlagsNone toEnum 1 = KeyFileFlagsKeepComments toEnum 2 = KeyFileFlagsKeepTranslations toEnum k = AnotherKeyFileFlags k instance IsGFlag KeyFileFlags -- Flags IOFlags data IOFlags = IOFlagsAppend | IOFlagsNonblock | IOFlagsIsReadable | IOFlagsIsWritable | IOFlagsIsWriteable | IOFlagsIsSeekable | IOFlagsMask | IOFlagsGetMask | IOFlagsSetMask | AnotherIOFlags Int deriving (Show, Eq) instance Enum IOFlags where fromEnum IOFlagsAppend = 1 fromEnum IOFlagsNonblock = 2 fromEnum IOFlagsIsReadable = 4 fromEnum IOFlagsIsWritable = 8 fromEnum IOFlagsIsWriteable = 8 fromEnum IOFlagsIsSeekable = 16 fromEnum IOFlagsMask = 31 fromEnum IOFlagsGetMask = 31 fromEnum IOFlagsSetMask = 3 fromEnum (AnotherIOFlags k) = k toEnum 1 = IOFlagsAppend toEnum 2 = IOFlagsNonblock toEnum 3 = IOFlagsSetMask toEnum 4 = IOFlagsIsReadable toEnum 8 = IOFlagsIsWritable toEnum 16 = IOFlagsIsSeekable toEnum 31 = IOFlagsMask toEnum k = AnotherIOFlags k instance IsGFlag IOFlags -- Flags IOCondition data IOCondition = IOConditionIn | IOConditionOut | IOConditionPri | IOConditionErr | IOConditionHup | IOConditionNval | AnotherIOCondition Int deriving (Show, Eq) instance Enum IOCondition where fromEnum IOConditionIn = 1 fromEnum IOConditionOut = 4 fromEnum IOConditionPri = 2 fromEnum IOConditionErr = 8 fromEnum IOConditionHup = 16 fromEnum IOConditionNval = 32 fromEnum (AnotherIOCondition k) = k toEnum 1 = IOConditionIn toEnum 2 = IOConditionPri toEnum 4 = IOConditionOut toEnum 8 = IOConditionErr toEnum 16 = IOConditionHup toEnum 32 = IOConditionNval toEnum k = AnotherIOCondition k foreign import ccall "g_io_condition_get_type" c_g_io_condition_get_type :: IO GType instance BoxedEnum IOCondition where boxedEnumType _ = c_g_io_condition_get_type instance IsGFlag IOCondition -- Flags HookFlagMask data HookFlagMask = HookFlagMaskActive | HookFlagMaskInCall | HookFlagMaskMask | AnotherHookFlagMask Int deriving (Show, Eq) instance Enum HookFlagMask where fromEnum HookFlagMaskActive = 1 fromEnum HookFlagMaskInCall = 2 fromEnum HookFlagMaskMask = 15 fromEnum (AnotherHookFlagMask k) = k toEnum 1 = HookFlagMaskActive toEnum 2 = HookFlagMaskInCall toEnum 15 = HookFlagMaskMask toEnum k = AnotherHookFlagMask k instance IsGFlag HookFlagMask -- Flags FormatSizeFlags data FormatSizeFlags = FormatSizeFlagsDefault | FormatSizeFlagsLongFormat | FormatSizeFlagsIecUnits | AnotherFormatSizeFlags Int deriving (Show, Eq) instance Enum FormatSizeFlags where fromEnum FormatSizeFlagsDefault = 0 fromEnum FormatSizeFlagsLongFormat = 1 fromEnum FormatSizeFlagsIecUnits = 2 fromEnum (AnotherFormatSizeFlags k) = k toEnum 0 = FormatSizeFlagsDefault toEnum 1 = FormatSizeFlagsLongFormat toEnum 2 = FormatSizeFlagsIecUnits toEnum k = AnotherFormatSizeFlags k instance IsGFlag FormatSizeFlags -- Flags FileTest data FileTest = FileTestIsRegular | FileTestIsSymlink | FileTestIsDir | FileTestIsExecutable | FileTestExists | AnotherFileTest Int deriving (Show, Eq) instance Enum FileTest where fromEnum FileTestIsRegular = 1 fromEnum FileTestIsSymlink = 2 fromEnum FileTestIsDir = 4 fromEnum FileTestIsExecutable = 8 fromEnum FileTestExists = 16 fromEnum (AnotherFileTest k) = k toEnum 1 = FileTestIsRegular toEnum 2 = FileTestIsSymlink toEnum 4 = FileTestIsDir toEnum 8 = FileTestIsExecutable toEnum 16 = FileTestExists toEnum k = AnotherFileTest k instance IsGFlag FileTest -- Flags AsciiType data AsciiType = AsciiTypeAlnum | AsciiTypeAlpha | AsciiTypeCntrl | AsciiTypeDigit | AsciiTypeGraph | AsciiTypeLower | AsciiTypePrint | AsciiTypePunct | AsciiTypeSpace | AsciiTypeUpper | AsciiTypeXdigit | AnotherAsciiType Int deriving (Show, Eq) instance Enum AsciiType where fromEnum AsciiTypeAlnum = 1 fromEnum AsciiTypeAlpha = 2 fromEnum AsciiTypeCntrl = 4 fromEnum AsciiTypeDigit = 8 fromEnum AsciiTypeGraph = 16 fromEnum AsciiTypeLower = 32 fromEnum AsciiTypePrint = 64 fromEnum AsciiTypePunct = 128 fromEnum AsciiTypeSpace = 256 fromEnum AsciiTypeUpper = 512 fromEnum AsciiTypeXdigit = 1024 fromEnum (AnotherAsciiType k) = k toEnum 1 = AsciiTypeAlnum toEnum 2 = AsciiTypeAlpha toEnum 4 = AsciiTypeCntrl toEnum 8 = AsciiTypeDigit toEnum 16 = AsciiTypeGraph toEnum 32 = AsciiTypeLower toEnum 64 = AsciiTypePrint toEnum 128 = AsciiTypePunct toEnum 256 = AsciiTypeSpace toEnum 512 = AsciiTypeUpper toEnum 1024 = AsciiTypeXdigit toEnum k = AnotherAsciiType k instance IsGFlag AsciiType