CurryInfo: icurry-3.2.0 / FlatCurry.CaseCompletion.allConsExp

definition:
allConsExp :: Expr -> [QName]
allConsExp (Var _) = []
allConsExp (Lit _) = []
allConsExp (Comb _ _ es) = unionMap allConsExp es
allConsExp (Case _ e brs) =
  union (allConsExp e) (unionMap allConsBranch brs)
 where
  allConsBranch (Branch (LPattern _)   be) = allConsExp be
  allConsBranch (Branch (Pattern qn _) be) = union [qn] (allConsExp be)
allConsExp (Let bs e) =
  union (allConsExp e) (unionMap (allConsExp . snd) bs)
allConsExp (Free _ e) = allConsExp e
allConsExp (Or e1 e2) = union (allConsExp e1) (allConsExp e2)
allConsExp (Typed e _) = allConsExp e
demand:
argument 1
deterministic:
deterministic operation
failfree:
_
indeterministic:
referentially transparent operation
infix:
no fixity defined
iotype:
{({Var}) |-> {[]} || ({Lit}) |-> {[]} || ({Comb}) |-> _ || ({Case}) |-> _ || ({Let}) |-> _ || ({Free}) |-> _ || ({Or}) |-> _ || ({Typed}) |-> _}
name:
allConsExp
precedence:
no precedence defined
result-values:
_
signature:
FlatCurry.Types.Expr -> [(String, String)]
solution-complete:
operation might suspend on free variables
terminating:
possibly non-terminating
totally-defined:
reducible on all ground data terms