CurryInfo: benchmark-papers-3.0.0 / Test.Benchmark.runUntilOn

definition: Info
 
runUntilOn :: (a -> Benchmark b) -> (b -> Bool) -> [a] -> Benchmark [(a,b)]
runUntilOn _ _ [] = return []
runUntilOn bench stop (x:xs) = do
  bmresult <- bench x
  if stop bmresult
    then return []
    else do results <- runUntilOn bench stop xs
            return ((x,bmresult):results)
demand: Info
 argument 3
deterministic: Info
 deterministic operation
documentation: Info
 
Runs a `Maybe` benchmark on an (infinite) input list of values
until a benchmark delivers `Nothing`.

@param bench - the `Maybe` benchmark parameterized by the input data
@param benchdata - the list of input data for the benchmarks
@return Benchmark with the list of input data and benchmark results pairs
failfree: Info
 (_, _, _)
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {(_,_,{[]}) |-> _ || (_,_,{:}) |-> _}
name: Info
 runUntilOn
precedence: Info
 no precedence defined
result-values: Info
 _
signature: Info
 (a -> Benchmark b) -> (b -> Prelude.Bool) -> [a] -> Benchmark [(a, b)]
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 possibly non-terminating
totally-defined: Info
 reducible on all ground data terms