Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
type family IsRuleConform (b :: k) (r :: l) :: Bool Source #
Instances
data TopLevel :: Type -> Type Source #
Instances
type IsRuleConform (t :: k) (TopLevel rule :: Type) Source # | |
data OneOf :: [Type] -> Type Source #
Instances
type IsRuleConform (t :: k) (OneOf (r ': rs) :: Type) Source # | |
Defined in Data.ByteString.IsoBaseFileFormat.Util.TypeLayout type IsRuleConform (t :: k) (OneOf (r ': rs) :: Type) = IsRuleConform t r || IsRuleConform t (OneOf rs) | |
type IsRuleConform (t :: k) (OneOf ([] :: [Type])) Source # | |
data MatchSymbol :: Symbol -> Type Source #
Instances
type IsRuleConform (b :: Type) (MatchSymbol fourcc :: Type) Source # | |
data OnceOptionalX t Source #
data SomeOptionalX t Source #
data SomeMandatoryX t Source #
type family IsSequence (bs :: [k]) (rs :: [j]) :: Bool where ... Source #
IsSequence '[] '[] = True | |
IsSequence (b ': bs) '[] = False | |
IsSequence '[] (OnceOptionalX r ': rs) = IsSequence '[] rs | |
IsSequence (b ': bs) (OnceOptionalX r ': rs) = If (IsRuleConform b r) (IsSequence bs rs) (IsSequence (b ': bs) rs) | |
IsSequence '[] (SomeOptionalX r ': rs) = IsSequence '[] rs | |
IsSequence (b ': bs) (SomeOptionalX r ': rs) = If (IsRuleConform b r) (IsSequence bs (SomeOptionalX r ': rs)) (IsSequence (b ': bs) rs) | |
IsSequence '[] (SomeMandatoryX r ': rs) = False | |
IsSequence (b ': bs) (SomeMandatoryX r ': rs) = IsRuleConform b r && IsSequence bs (SomeOptionalX r ': rs) | |
IsSequence '[] (r ': rs) = False | |
IsSequence (b ': bs) (r ': rs) = IsRuleConform b r && IsSequence bs rs |