Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Synopsis
- data Bench = Bench {
- name :: !String
- enabled :: !Bool
- samples :: !Natural
- benchSetup :: [DocumentPositions] -> Session ()
- experiment :: Experiment
- data BenchRun = BenchRun {
- startup :: !Seconds
- runSetup :: !Seconds
- runExperiment :: !Seconds
- userWaits :: !Seconds
- delayedWork :: !Seconds
- firstResponse :: !Seconds
- firstResponseDelayed :: !Seconds
- rulesBuilt :: !Int
- rulesChanged :: !Int
- rulesVisited :: !Int
- rulesTotal :: !Int
- edgesTotal :: !Int
- rebuildsTotal :: !Int
- success :: !Bool
- data Config = Config {
- verbosity :: !Verbosity
- shakeProfiling :: !(Maybe FilePath)
- otMemoryProfiling :: !(Maybe FilePath)
- outputCSV :: !FilePath
- buildTool :: !CabalStack
- ghcideOptions :: ![String]
- matches :: ![String]
- repetitions :: Maybe Natural
- ghcide :: FilePath
- timeoutLsp :: Int
- example :: Example
- lspConfig :: Bool
- data Verbosity
- data CabalStack
- data SetupResult = SetupResult {}
- data Example = Example {}
- experiments :: HasConfig => [Bench]
- configP :: Parser Config
- defConfig :: Config
- output :: (MonadIO m, HasConfig) => String -> m ()
- setup :: HasConfig => IO SetupResult
- runBench :: HasConfig => (Session BenchRun -> IO BenchRun) -> Bench -> IO BenchRun
- exampleToOptions :: Example -> [String] -> [String]
Documentation
Bench | |
|
BenchRun | |
|
Config | |
|
data CabalStack Source #
Instances
Show CabalStack Source # | |
Defined in Experiments.Types showsPrec :: Int -> CabalStack -> ShowS # show :: CabalStack -> String # showList :: [CabalStack] -> ShowS # | |
Eq CabalStack Source # | |
Defined in Experiments.Types (==) :: CabalStack -> CabalStack -> Bool # (/=) :: CabalStack -> CabalStack -> Bool # |
Example | |
|
Instances
FromJSON Example Source # | |
Defined in Experiments.Types | |
Generic Example Source # | |
Show Example Source # | |
Binary Example Source # | |
NFData Example Source # | |
Defined in Experiments.Types | |
Eq Example Source # | |
Hashable Example Source # | |
Defined in Experiments.Types | |
type Rep Example Source # | |
Defined in Experiments.Types type Rep Example = D1 ('MetaData "Example" "Experiments.Types" "haskell-language-server-2.9.0.0-4S5Vh3BPyyeJWzPv4aazqb-ghcide-bench-lib" 'False) (C1 ('MetaCons "Example" 'PrefixI 'True) ((S1 ('MetaSel ('Just "exampleName") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 String) :*: S1 ('MetaSel ('Just "exampleDetails") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ExampleDetails)) :*: (S1 ('MetaSel ('Just "exampleModules") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FilePath]) :*: S1 ('MetaSel ('Just "exampleExtraArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [String])))) |
experiments :: HasConfig => [Bench] Source #
setup :: HasConfig => IO SetupResult Source #
Setup the benchmark we need to create a hie.yaml file for the examples or the hie.yaml file would be searched in the parent directories recursively implicit-hie is error prone for the example test `lsp-types-2.1.1.0` we are using the simpleCabalCradleContent for the hie.yaml file instead. it works if we have cabal > 3.2.