Cabal-syntax-3.14.0.0: A library for working with .cabal files
Safe HaskellNone
LanguageHaskell2010

Distribution.Types.ForeignLib.Lens

Synopsis

Documentation

data ForeignLib Source #

A foreign library stanza is like a library stanza, except that the built code is intended for consumption by a non-Haskell client.

Instances

Instances details
HasBuildInfo ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Methods

buildInfo :: Lens' ForeignLib BuildInfo Source #

buildable :: Lens' ForeignLib Bool Source #

buildTools :: Lens' ForeignLib [LegacyExeDependency] Source #

buildToolDepends :: Lens' ForeignLib [ExeDependency] Source #

cppOptions :: Lens' ForeignLib [String] Source #

asmOptions :: Lens' ForeignLib [String] Source #

cmmOptions :: Lens' ForeignLib [String] Source #

ccOptions :: Lens' ForeignLib [String] Source #

cxxOptions :: Lens' ForeignLib [String] Source #

ldOptions :: Lens' ForeignLib [String] Source #

hsc2hsOptions :: Lens' ForeignLib [String] Source #

pkgconfigDepends :: Lens' ForeignLib [PkgconfigDependency] Source #

frameworks :: Lens' ForeignLib [RelativePath Framework 'File] Source #

extraFrameworkDirs :: Lens' ForeignLib [SymbolicPath Pkg ('Dir Framework)] Source #

asmSources :: Lens' ForeignLib [SymbolicPath Pkg 'File] Source #

cmmSources :: Lens' ForeignLib [SymbolicPath Pkg 'File] Source #

cSources :: Lens' ForeignLib [SymbolicPath Pkg 'File] Source #

cxxSources :: Lens' ForeignLib [SymbolicPath Pkg 'File] Source #

jsSources :: Lens' ForeignLib [SymbolicPath Pkg 'File] Source #

hsSourceDirs :: Lens' ForeignLib [SymbolicPath Pkg ('Dir Source)] Source #

otherModules :: Lens' ForeignLib [ModuleName] Source #

virtualModules :: Lens' ForeignLib [ModuleName] Source #

autogenModules :: Lens' ForeignLib [ModuleName] Source #

defaultLanguage :: Lens' ForeignLib (Maybe Language) Source #

otherLanguages :: Lens' ForeignLib [Language] Source #

defaultExtensions :: Lens' ForeignLib [Extension] Source #

otherExtensions :: Lens' ForeignLib [Extension] Source #

oldExtensions :: Lens' ForeignLib [Extension] Source #

extraLibs :: Lens' ForeignLib [String] Source #

extraLibsStatic :: Lens' ForeignLib [String] Source #

extraGHCiLibs :: Lens' ForeignLib [String] Source #

extraBundledLibs :: Lens' ForeignLib [String] Source #

extraLibFlavours :: Lens' ForeignLib [String] Source #

extraDynLibFlavours :: Lens' ForeignLib [String] Source #

extraLibDirs :: Lens' ForeignLib [SymbolicPath Pkg ('Dir Lib)] Source #

extraLibDirsStatic :: Lens' ForeignLib [SymbolicPath Pkg ('Dir Lib)] Source #

includeDirs :: Lens' ForeignLib [SymbolicPath Pkg ('Dir Include)] Source #

includes :: Lens' ForeignLib [SymbolicPath Include 'File] Source #

autogenIncludes :: Lens' ForeignLib [RelativePath Include 'File] Source #

installIncludes :: Lens' ForeignLib [RelativePath Include 'File] Source #

options :: Lens' ForeignLib (PerCompilerFlavor [String]) Source #

profOptions :: Lens' ForeignLib (PerCompilerFlavor [String]) Source #

sharedOptions :: Lens' ForeignLib (PerCompilerFlavor [String]) Source #

profSharedOptions :: Lens' ForeignLib (PerCompilerFlavor [String]) Source #

staticOptions :: Lens' ForeignLib (PerCompilerFlavor [String]) Source #

customFieldsBI :: Lens' ForeignLib [(String, String)] Source #

targetBuildDepends :: Lens' ForeignLib [Dependency] Source #

mixins :: Lens' ForeignLib [Mixin] Source #

Structured ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Binary ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

NFData ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Methods

rnf :: ForeignLib -> () Source #

Monoid ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Semigroup ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Data ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ForeignLib -> c ForeignLib #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ForeignLib #

toConstr :: ForeignLib -> Constr #

dataTypeOf :: ForeignLib -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ForeignLib) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ForeignLib) #

gmapT :: (forall b. Data b => b -> b) -> ForeignLib -> ForeignLib #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ForeignLib -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ForeignLib -> r #

gmapQ :: (forall d. Data d => d -> u) -> ForeignLib -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ForeignLib -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ForeignLib -> m ForeignLib #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ForeignLib -> m ForeignLib #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ForeignLib -> m ForeignLib #

Generic ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Associated Types

type Rep ForeignLib 
Instance details

Defined in Distribution.Types.ForeignLib

type Rep ForeignLib = D1 ('MetaData "ForeignLib" "Distribution.Types.ForeignLib" "Cabal-syntax-3.14.0.0-inplace" 'False) (C1 ('MetaCons "ForeignLib" 'PrefixI 'True) ((S1 ('MetaSel ('Just "foreignLibName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnqualComponentName) :*: (S1 ('MetaSel ('Just "foreignLibType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ForeignLibType) :*: S1 ('MetaSel ('Just "foreignLibOptions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [ForeignLibOption]))) :*: ((S1 ('MetaSel ('Just "foreignLibBuildInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuildInfo) :*: S1 ('MetaSel ('Just "foreignLibVersionInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe LibVersionInfo))) :*: (S1 ('MetaSel ('Just "foreignLibVersionLinux") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Version)) :*: S1 ('MetaSel ('Just "foreignLibModDefFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [RelativePath Source 'File])))))
Read ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Show ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Eq ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

Ord ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

type Rep ForeignLib Source # 
Instance details

Defined in Distribution.Types.ForeignLib

type Rep ForeignLib = D1 ('MetaData "ForeignLib" "Distribution.Types.ForeignLib" "Cabal-syntax-3.14.0.0-inplace" 'False) (C1 ('MetaCons "ForeignLib" 'PrefixI 'True) ((S1 ('MetaSel ('Just "foreignLibName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnqualComponentName) :*: (S1 ('MetaSel ('Just "foreignLibType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ForeignLibType) :*: S1 ('MetaSel ('Just "foreignLibOptions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [ForeignLibOption]))) :*: ((S1 ('MetaSel ('Just "foreignLibBuildInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuildInfo) :*: S1 ('MetaSel ('Just "foreignLibVersionInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe LibVersionInfo))) :*: (S1 ('MetaSel ('Just "foreignLibVersionLinux") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Version)) :*: S1 ('MetaSel ('Just "foreignLibModDefFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [RelativePath Source 'File])))))