CurryInfo: icurry-3.2.0 / TermGraph.SVG.generateNode

definition:
generateNode :: Bool -> NodeID -> [NodeID] -> (IG.NodeID, IG.Node) -> Node
generateNode labelNID activenid results (nid, node) =
    Node
      nodetype
      nid
      label
      (IG.nodeChildren node)
      (activenid == nid)
      (nid `elem` results)
        where
          label = (IG.nodeLabel node) ++ if labelNID
                                          then " (" ++ (show nid) ++ ")"
                                          else ""
          nodetype = case node of
            IG.FuncNode _ _     -> FuncNode
            IG.ConsNode _ _     -> ConsNode
            IG.ChoiceNode _ _ _ -> ChoiceNode
            IG.FreeNode         -> FreeNode
            IG.PartNode _ (IG.PartFuncCall _) _ -> FuncNode
            IG.PartNode _ (IG.PartConsCall _) _ -> ConsNode
demand:
argument 4
deterministic:
deterministic operation
failfree:
(_, _, _, _)
indeterministic:
referentially transparent operation
infix:
no fixity defined
iotype:
{(_,_,_,{(,)}) |-> {Node}}
name:
generateNode
precedence:
no precedence defined
result-values:
{Node}
signature:
Prelude.Bool -> Prelude.Int -> [Prelude.Int] -> (Prelude.Int, ICurry.Graph.Node)
-> Node
solution-complete:
operation might suspend on free variables
terminating:
possibly non-terminating
totally-defined:
possibly non-reducible on same data term