CurryInfo: verify-non-fail-2.0.0 / Verify.NonFailConditions.genNonFailCond

definition: Info
 
genNonFailCond :: [(Int,TypeExpr)] -> Expr -> NonFailCond
genNonFailCond vts cond =
  let condvars = nub (allVars cond)
  -- restrict variables to occurrences in cond:
  in (filter ((`elem` condvars) . fst) vts, cond)
demand: Info
 no demanded arguments
deterministic: Info
 deterministic operation
documentation: Info
 
Generate a non-fail condition from a list of variables types
and a list of Boolean expressions.
failfree: Info
 <FAILING>
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {(_,_) |-> {(,)}}
name: Info
 genNonFailCond
precedence: Info
 no precedence defined
result-values: Info
 {(,)}
signature: Info
 [(Prelude.Int, FlatCurry.Types.TypeExpr)] -> FlatCurry.Types.Expr
-> ([(Prelude.Int, FlatCurry.Types.TypeExpr)], FlatCurry.Types.Expr)
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 possibly non-terminating
totally-defined: Info
 possibly non-reducible on same data term