CurryInfo: nonstrictunif-optimize-3.0.0 / CurryBrowseAnalysis.Dependency.dependencyGraphs

definition: Info
 
dependencyGraphs :: [FuncDecl] -> [(QName,[(QName,[QName])])]
dependencyGraphs funs =
  let directdeps = map directlyDependent funs
   in map (\(f,ds) -> (f,map (\g->(g,toList (fromJust (lookup g directdeps))))
                             (toList (insert f ds))))
          (depsClosure directdeps)
demand: Info
 argument 1
deterministic: Info
 deterministic operation
documentation: Info
 
Computes the list of all direct dependencies for all functions.
This is useful to represent the dependency graph for each function.
Argument: a list of function declarations
Result: a list of pairs of qualified functions names and the corresponding list of
        direct dependencies for all functions on which this functions depend
failfree: Info
 <FAILING>
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {(_) |-> {:,[]}}
name: Info
 dependencyGraphs
precedence: Info
 no precedence defined
result-values: Info
 {:,[]}
signature: Info
 [FlatCurry.Types.FuncDecl]
-> [((String, String), [((String, String), [(String, String)])])]
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 possibly non-terminating
totally-defined: Info
 possibly non-reducible on same data term