HORIZON HASKELLDocslts/ghc-9.10.x248f8f02026-10-05Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · 248f8f0 · 2026-10-05

ModuleCabal-syntax-3.12.1.0Haskell2010

Distribution.Types.Mixin

  • 1 type
  • 2 values
datadata Mixin
#

Invariant: if mixinLibraryName is LSubLibName, it's not the same as mixinPackageName. In other words, the same invariant as Dependency has.

Instances12Eq, Data, Ord, Read, Show, Generic, …
  • Eq MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • Data MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • Ord MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • Read MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • Show MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • Generic MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • NFData MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • Binary MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • Parsec MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
    Example1 expression
    simpleParsec "mylib" :: Maybe MixinJust (Mixin {mixinPackageName = PackageName "mylib", mixinLibraryName = LMainLibName, mixinIncludeRenaming = IncludeRenaming {includeProvidesRn = DefaultRenaming, includeRequiresRn = DefaultRenaming}})
    Example1 expression
    simpleParsec "thatlib:sublib" :: Maybe MixinJust (Mixin {mixinPackageName = PackageName "thatlib", mixinLibraryName = LSubLibName (UnqualComponentName "sublib"), mixinIncludeRenaming = IncludeRenaming {includeProvidesRn = DefaultRenaming, includeRequiresRn = DefaultRenaming}})
    Example1 expression
    simpleParsec "thatlib:thatlib" :: Maybe MixinJust (Mixin {mixinPackageName = PackageName "thatlib", mixinLibraryName = LMainLibName, mixinIncludeRenaming = IncludeRenaming {includeProvidesRn = DefaultRenaming, includeRequiresRn = DefaultRenaming}})

    Sublibrary syntax is accepted since cabal-version: 3.4.

    Example1 expression
    map (`simpleParsec'` "mylib:sub") [CabalSpecV3_0, CabalSpecV3_4] :: [Maybe Mixin][Nothing,Just (Mixin {mixinPackageName = PackageName "mylib", mixinLibraryName = LSubLibName (UnqualComponentName "sub"), mixinIncludeRenaming = IncludeRenaming {includeProvidesRn = DefaultRenaming, includeRequiresRn = DefaultRenaming}})]
  • Pretty MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • Structured MixinDefined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin
  • type Rep Mixin = D1 ('MetaData "Mixin" "Distribution.Types.Mixin" "Cabal-syntax-3.12.1.0-3adc" 'False) (C1 ('MetaCons "Mixin" 'PrefixI 'True) (S1 ('MetaSel ('Just "mixinPackageName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PackageName) :*: (S1 ('MetaSel ('Just "mixinLibraryName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 LibraryName) :*: S1 ('MetaSel ('Just "mixinIncludeRenaming") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IncludeRenaming))))Defined in Cabal-syntax-3.12.1.0 · Distribution.Types.Mixin