CurryInfo: call-analysis-3.2.0 / Analysis.transformRules

definition:
transformRules :: [(String,Bool)] -> [(String,[Int])] -> [Rule] -> ([Rule],Int)
transformRules ndinfos strinfos rules =
  let (newrules,numopts) = unzip $
        map (\ (Rule f args exp) ->
              let (newrhs,_,numopt) = transformExp ndinfos strinfos exp
               in (Rule f args newrhs, numopt))
            rules
   in (newrules, foldr (+) 0 numopts)
demand:
no demanded arguments
deterministic:
deterministic operation
documentation:
-----------------------------------------------------------------------
-- Optimize program w.r.t. non-determinism and strictness information
-- Returns new rules and number of optimization transformations performed
failfree:
<FAILING>
indeterministic:
referentially transparent operation
infix:
no fixity defined
iotype:
{(_,_,_) |-> {(,)}}
name:
transformRules
precedence:
no precedence defined
result-values:
{(,)}
signature:
[(String, Prelude.Bool)] -> [(String, [Prelude.Int])] -> [TRS.Rule]
-> ([TRS.Rule], Prelude.Int)
solution-complete:
operation might suspend on free variables
terminating:
possibly non-terminating
totally-defined:
possibly non-reducible on same data term