úÎ!|¾vˆG      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFSafeåGHIJKLMNCommand-line parsing(c) Ivan Lazar MiljenovicMITIvan.Miljenovic@gmail.comNone"#‚ testbenchThis is the same as O1 from criterion but with the verbosity set to P& to avoid unnecessary noise on stdout.QRSTUVWXYZ[\]^_Labelled rose-tree structure(c) Ivan Lazar MiljenovicMITIvan.Miljenovic@gmail.comSafe4 Œ testbenchEA simple labelled rose-tree data structure also containing the depth.`abc1Tree-based representation for Criterion and Weigh(c) Ivan Lazar MiljenovicMITIvan.Miljenovic@gmail.comNone &'>SXi d testbenchInvariant: length == rowDepth testbench(The results from measuring memory usage.  testbenchMA more explicit tree-like structure for benchmarks than using Criterion's e type.  testbenchHow to weigh a function. testbenchAn IO-based variant of  . testbenchSRemove the explicit tree-like structure into the implicit one used by Criterion.EUseful for embedding the results into an existing benchmark suite. testbenchŠRun the specified benchmarks, printing the results (once they're all complete) to stdout in a tabular format for easier comparisons.f testbenchQHuman-readable description of the number of bytes used. Assumed non-negative.g testbenchnUnlike terminal output, this instance creates columns for benchmarks, weighing, etc. even if they're not used.h testbenchnUnlike terminal output, this instance creates columns for benchmarks, weighing, etc. even if they're not used. ij$Create tests and benchmarks together(c) Ivan Lazar MiljenovicMITIvan.Miljenovic@gmail.comNone "#=>?@ACMt¬' testbench8A specialised monad used solely for running comparisons.>No lifting is permitted; the only operations permitted are 8, 9 and :. testbench1A convenience class to make it easier to provide  values.You can either:Provide no parameters with mempty&Provide values chained together using k or <>,Use the list instance and provide a list of  values. testbench5Monoidally build up the parameters used to control a  environment.(This will typically be a combination of * with either 2 or 5. testbench6An environment for combining testing and benchmarking. testbenchA tree of operations. testbenchMAn individual operation potentially consisting of a benchmark and/or test. testbenchLabel a sub-part of a  TestBench. testbench@Obtain the resulting tests and benchmarks from the specified  TestBench. testbenchwRun the specified benchmarks if and only if all tests pass, using a comparison-based format for benchmarking output.For more control, use . testbenchAs with * but allow specifying a custom default l parameter rather than . testbenchjCreate a single benchmark evaluated to normal form, where the results should equal the value specified.Will also weigh the function. testbenchtCreate a single benchmark evaluated to weak head normal form, where the results should equal the value specified.  testbench†A way of writing custom testing/benchmarking statements. You will probably want to use one of the pre-defined versions instead.! testbenchVCompare how various input values (of the same type) behave for a specific function. By default:Results are only evaluated to Weak Head Normal Form'. To fully evaluate results, use *..No tests are performed by default; use either 2 or 5 to specify one." testbenchAs with !H but use the provided list of values to base the benchmarking off of.²This is useful in situations where you create an enumeration type to describe everything you're benchmarking and a function that takes one of these values and evaluates it.20 is used on the first value (if non-empty); the m' instance is used to provide labels.# testbench A variant of ". that allows for the function to return an n value.$ testbench A variant of "- where you provide your own equivalent to 2.Most useful with 4.% testbench A variant of " that doesn't use 2, (allowing you to specify your own test).& testbenchAn extension to " that uses the o and p. instances to generate the list of all values.' testbenchAn extension to # that uses the o and p. instances to generate the list of all values.( testbenchAn extension to $ that uses the o and p. instances to generate the list of all values.) testbench A variant of comapreFuncAll that doesn't use 2, (allowing you to specify your own test).* testbench'Evaluate all benchmarks to normal form.+ testbenchA combination of * and 6‚, taking into account the common case that you want to consider a value that can - and should - be evaluated to normal form., testbench A variant of + where the results are within IO.- testbench:Evaluate all IO-based benchmarks to weak head normal form.. testbench0Evaluate all IO-based benchmarks to normal form./ testbenchaAllow specifying how benchmarks should be evaluated. This may allow usage of methods such as nfIO), but this has not been tested as yet.0 testbench£Don't run any benchmarks. I'm not sure why you'd want to do this as there's surely easier/better testing environments available, but this way it's possible.1 testbench¨Don't run any tests. This isn't recommended, but could be useful if all you want to do is run comparisons (potentially because no meaningful tests are possible).2 testbenchxSpecify a sample baseline value to benchmark and test against (such that the result of applying the function to this a% is what everything should match).>You shouldn't specify this more than once, nor mix it with 1 or 5.3 testbench A variant of 2 where the function returns an n value.4 testbench A variant of 23 that lets you specify how to test for equality.wThe first argument to the provided function will be the "baseline" value; the second will be the value being tested.5 testbench4Specify a predicate that all results should satisfy.%Note that the last statement between 5, 2 and 13 "wins" in specifying which testing (if any) to do.6 testbench1Calculate memory usage of the various parameters.Note that to achieve this, ä and associated functions will run copies of itself to be able to calculate memory usage in a pristine environment (i.e. without influence of caching from testing and benchmarking). As such, you may wish to use the  -threaded: GHC option when building your benchmarking executable.7 testbenchAn IO-based equivalent to 68 testbenchOBenchmark and test (if specified) this value against the specified function.9 testbenchaOnly benchmark and possibly weigh (but do not test) this value against the specified function.: testbenchWOnly test (but do not benchmark or weigh) this value against the specified function.  testbench-Define the benchmark to be performed, if any. testbenchjIf a benchmark is performed, should its memory usage also be calculated? See the documentation for 6 on how to get this work. testbenchShould the result be checked?;  !"#$%&'()*+,-./0123456789:;!"#$%&'()+,*-./02345167 89:  q       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUSVWXYZ[\]^_`abcdefghijklmnopqrstuvSVwtxyz{|t}~t}€(testbench-0.2.1.3-1LxutX8Fi8w3uQd6lHEDWN TestBenchPaths_testbenchTestBench.CommandsTestBench.LabelTreeTestBench.EvaluatetestBenchConfig LabelTreeLeafBranchDepth GetWeightEvaleNameeBencheWeigh EvalForestEvalTree getWeight getWeightIOflattenBenchForest evalForest Comparison ComparisonM ProvideParamstoParams CompParams TestBenchMOpTree Operation collectiongetTestBenches testBench testBenchWithnfEqwhnfEq mkTestBench compareFunccompareFuncListcompareFuncListIOcompareFuncListWithcompareFuncList'compareFuncAllcompareFuncAllIOcompareFuncAllWithcompareFuncAll'benchNormalForm normalForm normalFormIObenchIObenchNormalFormIO withBenchMode noBenchmarksnoTestsbaseline baselineIO baselineWithtestWithweighweighIOcomp compBenchcompTest$fMonoidCompParams$fSemigroupCompParams$fProvideParams[]ab$fProvideParamsCompParamsab$fFunctorTestBenchM$fApplicativeTestBenchM$fMonadTestBenchM$fMonadIOTestBenchM$fFunctorComparisonM$fApplicativeComparisonM$fMonadComparisonM$fMonadIOComparisonMversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName(criterion-1.5.5.0-HZ9Eh4gaYhgHYfBSgiEfhhCriterion.Main.Options defaultConfigCriterion.TypesQuiet RunTestBenchWeighVersionListRunrunTestsrunBenchbenchCfg optionParser parseWith versionInforesetUnusedConfig configParser weighIndexArg weighFileArg foldLTree mapMaybeTreemapMaybeForestleavesrowPath4criterion-measurement-0.1.1.0-IG7dNk72llxCAXVqsGcZsICriterion.Measurement.Types Benchmarkbytes$fToNamedRecordRow $fToRecordRowflattenBenchTree weighIndexbaseGHC.BasemappendConfigGHC.ShowShowghc-prim GHC.TypesIOGHC.EnumBoundedEnum