Cabal-syntax-3.12.1.0: A library for working with .cabal files

Safe Haskell | None
Language | Haskell2010

Distribution.Types.Benchmark

Synopsis

- data Benchmark = Benchmark {
  - benchmarkName :: UnqualComponentName
  - benchmarkInterface :: BenchmarkInterface
  - benchmarkBuildInfo :: BuildInfo
  }
- emptyBenchmark :: Benchmark
- benchmarkType :: Benchmark -> BenchmarkType
- benchmarkModules :: Benchmark -> [ModuleName]
- benchmarkModulesAutogen :: Benchmark -> [ModuleName]

# Documentation

data Benchmark Source #

A "benchmark" stanza in a cabal file.

Constructors

Benchmark |

Fields

- benchmarkName :: UnqualComponentName
- benchmarkInterface :: BenchmarkInterface
- benchmarkBuildInfo :: BuildInfo

#### Instances

Instances details

HasBuildInfo Benchmark Source # |

Instance details

Defined in Distribution.Types.Benchmark

Methods

buildInfo :: Lens' Benchmark BuildInfo Source #

buildable :: Lens' Benchmark Bool Source #

buildTools :: Lens' Benchmark [LegacyExeDependency] Source #

buildToolDepends :: Lens' Benchmark [ExeDependency] Source #

cppOptions :: Lens' Benchmark [String] Source #

asmOptions :: Lens' Benchmark [String] Source #

cmmOptions :: Lens' Benchmark [String] Source #

ccOptions :: Lens' Benchmark [String] Source #

cxxOptions :: Lens' Benchmark [String] Source #

ldOptions :: Lens' Benchmark [String] Source #

hsc2hsOptions :: Lens' Benchmark [String] Source #

pkgconfigDepends :: Lens' Benchmark [PkgconfigDependency] Source #

frameworks :: Lens' Benchmark [String] Source #

extraFrameworkDirs :: Lens' Benchmark [String] Source #

asmSources :: Lens' Benchmark [FilePath] Source #

cmmSources :: Lens' Benchmark [FilePath] Source #

cSources :: Lens' Benchmark [FilePath] Source #

cxxSources :: Lens' Benchmark [FilePath] Source #

jsSources :: Lens' Benchmark [FilePath] Source #

hsSourceDirs :: Lens' Benchmark [SymbolicPath PackageDir SourceDir] Source #

otherModules :: Lens' Benchmark [ModuleName] Source #

virtualModules :: Lens' Benchmark [ModuleName] Source #

autogenModules :: Lens' Benchmark [ModuleName] Source #

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

otherLanguages :: Lens' Benchmark [Language] Source #

defaultExtensions :: Lens' Benchmark [Extension] Source #

otherExtensions :: Lens' Benchmark [Extension] Source #

oldExtensions :: Lens' Benchmark [Extension] Source #

extraLibs :: Lens' Benchmark [String] Source #

extraLibsStatic :: Lens' Benchmark [String] Source #

extraGHCiLibs :: Lens' Benchmark [String] Source #

extraBundledLibs :: Lens' Benchmark [String] Source #

extraLibFlavours :: Lens' Benchmark [String] Source #

extraDynLibFlavours :: Lens' Benchmark [String] Source #

extraLibDirs :: Lens' Benchmark [String] Source #

extraLibDirsStatic :: Lens' Benchmark [String] Source #

includeDirs :: Lens' Benchmark [FilePath] Source #

includes :: Lens' Benchmark [FilePath] Source #

autogenIncludes :: Lens' Benchmark [FilePath] Source #

installIncludes :: Lens' Benchmark [FilePath] Source #

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

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

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

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

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

targetBuildDepends :: Lens' Benchmark [Dependency] Source #

mixins :: Lens' Benchmark [Mixin] Source #

Structured Benchmark Source # |
Instance details Defined in Distribution.Types.Benchmark Methods structure :: Proxy Benchmark -> Structure Source # structureHash' :: Tagged Benchmark MD5
Binary Benchmark Source # |
Instance details Defined in Distribution.Types.Benchmark Methods put :: Benchmark -> Put Source # get :: Get Benchmark Source # putList :: [Benchmark] -> Put Source #
NFData Benchmark Source # |
Instance details Defined in Distribution.Types.Benchmark Methods rnf :: Benchmark -> () Source #
Monoid Benchmark Source # |
Instance details Defined in Distribution.Types.Benchmark Methods mempty :: Benchmark # mappend :: Benchmark -> Benchmark -> Benchmark # mconcat :: [Benchmark] -> Benchmark #
Semigroup Benchmark Source # |
Instance details Defined in Distribution.Types.Benchmark Methods (<>) :: Benchmark -> Benchmark -> Benchmark # sconcat :: NonEmpty Benchmark -> Benchmark # stimes :: Integral b => b -> Benchmark -> Benchmark #
Data Benchmark Source # |

Instance details

Defined in Distribution.Types.Benchmark

Methods

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

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

toConstr :: Benchmark -> Constr #

dataTypeOf :: Benchmark -> DataType #

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

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

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

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

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

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

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

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

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

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

Generic Benchmark Source # |

Instance details

Defined in Distribution.Types.Benchmark

Associated Types

type Rep Benchmark |

Instance details

Defined in Distribution.Types.Benchmark

type Rep Benchmark = D1 ('MetaData "Benchmark" "Distribution.Types.Benchmark" "Cabal-syntax-3.12.1.0-5c0e" 'False) (C1 ('MetaCons "Benchmark" 'PrefixI 'True) (S1 ('MetaSel ('Just "benchmarkName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnqualComponentName) :*: (S1 ('MetaSel ('Just "benchmarkInterface") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BenchmarkInterface) :*: S1 ('MetaSel ('Just "benchmarkBuildInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuildInfo))))

Methods

from :: Benchmark -> Rep Benchmark x #

to :: Rep Benchmark x -> Benchmark #

Read Benchmark Source # |
Instance details Defined in Distribution.Types.Benchmark Methods readsPrec :: Int -> ReadS Benchmark # readList :: ReadS [Benchmark] # readPrec :: ReadPrec Benchmark # readListPrec :: ReadPrec [Benchmark] #
Show Benchmark Source # |
Instance details Defined in Distribution.Types.Benchmark Methods showsPrec :: Int -> Benchmark -> ShowS # show :: Benchmark -> String # showList :: [Benchmark] -> ShowS #
Eq Benchmark Source # |
Instance details Defined in Distribution.Types.Benchmark Methods (==) :: Benchmark -> Benchmark -> Bool # (/=) :: Benchmark -> Benchmark -> Bool #
Ord Benchmark Source # |
Instance details Defined in Distribution.Types.Benchmark Methods compare :: Benchmark -> Benchmark -> Ordering # (<) :: Benchmark -> Benchmark -> Bool # (<=) :: Benchmark -> Benchmark -> Bool # (>) :: Benchmark -> Benchmark -> Bool # (>=) :: Benchmark -> Benchmark -> Bool # max :: Benchmark -> Benchmark -> Benchmark # min :: Benchmark -> Benchmark -> Benchmark #
type Rep Benchmark Source # |

Instance details

Defined in Distribution.Types.Benchmark

type Rep Benchmark = D1 ('MetaData "Benchmark" "Distribution.Types.Benchmark" "Cabal-syntax-3.12.1.0-5c0e" 'False) (C1 ('MetaCons "Benchmark" 'PrefixI 'True) (S1 ('MetaSel ('Just "benchmarkName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnqualComponentName) :*: (S1 ('MetaSel ('Just "benchmarkInterface") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BenchmarkInterface) :*: S1 ('MetaSel ('Just "benchmarkBuildInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuildInfo))))

emptyBenchmark :: Benchmark Source #

benchmarkType :: Benchmark -> BenchmarkType Source #

benchmarkModules :: Benchmark -> [ModuleName] Source #

Get all the module names from a benchmark.

benchmarkModulesAutogen :: Benchmark -> [ModuleName] Source #

Get all the auto generated module names from a benchmark. This are a subset of `benchmarkModules`.