definition: |
lookupChoiceNodeIds :: [(NodeID,Node)] -> ChoiceID -> [NodeID] lookupChoiceNodeIds [] _ = [] lookupChoiceNodeIds ((nid,n):nodes) cid = case n of -- explicit case expressions are rigid (and deterministic)! ChoiceNode ccid _ _ | ccid == cid -> nid : (lookupChoiceNodeIds nodes cid) | otherwise -> lookupChoiceNodeIds nodes cid _ -> lookupChoiceNodeIds nodes cid |
demand: |
argument 1 |
deterministic: |
deterministic operation |
documentation: |
lookup a ChoiceNodes NodeIDs. |
failfree: |
(_, _) |
indeterministic: |
referentially transparent operation |
infix: |
no fixity defined |
iotype: |
{({[]},_) |-> {[]} || ({:},_) |-> _} |
name: |
lookupChoiceNodeIds |
precedence: |
no precedence defined |
result-values: |
{:,[]} |
signature: |
[(Prelude.Int, ICurry.Graph.Node)] -> Prelude.Int -> [Prelude.Int] |
solution-complete: |
operation might suspend on free variables |
terminating: |
yes |
totally-defined: |
reducible on all ground data terms |