#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GstTag.Flags
(
TagLicenseFlags(..) ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
data TagLicenseFlags =
TagLicenseFlagsPermitsReproduction
| TagLicenseFlagsPermitsDistribution
| TagLicenseFlagsPermitsDerivativeWorks
| TagLicenseFlagsPermitsSharing
| TagLicenseFlagsRequiresNotice
| TagLicenseFlagsRequiresAttribution
| TagLicenseFlagsRequiresShareAlike
| TagLicenseFlagsRequiresSourceCode
| TagLicenseFlagsRequiresCopyleft
| TagLicenseFlagsRequiresLesserCopyleft
| TagLicenseFlagsProhibitsCommercialUse
| TagLicenseFlagsProhibitsHighIncomeNationUse
| TagLicenseFlagsCreativeCommonsLicense
| TagLicenseFlagsFreeSoftwareFoundationLicense
| AnotherTagLicenseFlags Int
deriving (Int -> TagLicenseFlags -> ShowS
[TagLicenseFlags] -> ShowS
TagLicenseFlags -> String
(Int -> TagLicenseFlags -> ShowS)
-> (TagLicenseFlags -> String)
-> ([TagLicenseFlags] -> ShowS)
-> Show TagLicenseFlags
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [TagLicenseFlags] -> ShowS
$cshowList :: [TagLicenseFlags] -> ShowS
show :: TagLicenseFlags -> String
$cshow :: TagLicenseFlags -> String
showsPrec :: Int -> TagLicenseFlags -> ShowS
$cshowsPrec :: Int -> TagLicenseFlags -> ShowS
Show, TagLicenseFlags -> TagLicenseFlags -> Bool
(TagLicenseFlags -> TagLicenseFlags -> Bool)
-> (TagLicenseFlags -> TagLicenseFlags -> Bool)
-> Eq TagLicenseFlags
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: TagLicenseFlags -> TagLicenseFlags -> Bool
$c/= :: TagLicenseFlags -> TagLicenseFlags -> Bool
== :: TagLicenseFlags -> TagLicenseFlags -> Bool
$c== :: TagLicenseFlags -> TagLicenseFlags -> Bool
Eq)
instance P.Enum TagLicenseFlags where
fromEnum :: TagLicenseFlags -> Int
fromEnum TagLicenseFlagsPermitsReproduction = 1
fromEnum TagLicenseFlagsPermitsDistribution = 2
fromEnum TagLicenseFlagsPermitsDerivativeWorks = 4
fromEnum TagLicenseFlagsPermitsSharing = 8
fromEnum TagLicenseFlagsRequiresNotice = 256
fromEnum TagLicenseFlagsRequiresAttribution = 512
fromEnum TagLicenseFlagsRequiresShareAlike = 1024
fromEnum TagLicenseFlagsRequiresSourceCode = 2048
fromEnum TagLicenseFlagsRequiresCopyleft = 4096
fromEnum TagLicenseFlagsRequiresLesserCopyleft = 8192
fromEnum TagLicenseFlagsProhibitsCommercialUse = 65536
fromEnum TagLicenseFlagsProhibitsHighIncomeNationUse = 131072
fromEnum TagLicenseFlagsCreativeCommonsLicense = 16777216
fromEnum TagLicenseFlagsFreeSoftwareFoundationLicense = 33554432
fromEnum (AnotherTagLicenseFlags k :: Int
k) = Int
k
toEnum :: Int -> TagLicenseFlags
toEnum 1 = TagLicenseFlags
TagLicenseFlagsPermitsReproduction
toEnum 2 = TagLicenseFlags
TagLicenseFlagsPermitsDistribution
toEnum 4 = TagLicenseFlags
TagLicenseFlagsPermitsDerivativeWorks
toEnum 8 = TagLicenseFlags
TagLicenseFlagsPermitsSharing
toEnum 256 = TagLicenseFlags
TagLicenseFlagsRequiresNotice
toEnum 512 = TagLicenseFlags
TagLicenseFlagsRequiresAttribution
toEnum 1024 = TagLicenseFlags
TagLicenseFlagsRequiresShareAlike
toEnum 2048 = TagLicenseFlags
TagLicenseFlagsRequiresSourceCode
toEnum 4096 = TagLicenseFlags
TagLicenseFlagsRequiresCopyleft
toEnum 8192 = TagLicenseFlags
TagLicenseFlagsRequiresLesserCopyleft
toEnum 65536 = TagLicenseFlags
TagLicenseFlagsProhibitsCommercialUse
toEnum 131072 = TagLicenseFlags
TagLicenseFlagsProhibitsHighIncomeNationUse
toEnum 16777216 = TagLicenseFlags
TagLicenseFlagsCreativeCommonsLicense
toEnum 33554432 = TagLicenseFlags
TagLicenseFlagsFreeSoftwareFoundationLicense
toEnum k :: Int
k = Int -> TagLicenseFlags
AnotherTagLicenseFlags Int
k
instance P.Ord TagLicenseFlags where
compare :: TagLicenseFlags -> TagLicenseFlags -> Ordering
compare a :: TagLicenseFlags
a b :: TagLicenseFlags
b = Int -> Int -> Ordering
forall a. Ord a => a -> a -> Ordering
P.compare (TagLicenseFlags -> Int
forall a. Enum a => a -> Int
P.fromEnum TagLicenseFlags
a) (TagLicenseFlags -> Int
forall a. Enum a => a -> Int
P.fromEnum TagLicenseFlags
b)
foreign import ccall "gst_tag_license_flags_get_type" c_gst_tag_license_flags_get_type ::
IO GType
instance BoxedFlags TagLicenseFlags where
boxedFlagsType :: Proxy TagLicenseFlags -> IO GType
boxedFlagsType _ = IO GType
c_gst_tag_license_flags_get_type
instance IsGFlag TagLicenseFlags