definition:
|
chain :: ((Node,Node) -> Grappa t a) -> (Node,Node) -> Grappa t [a]
chain p (n1,n2) = (:[]) <$> p (n1,n2)
chain p (n1,n2) = (:) <$> p (n1,n) <*> chain p (n,n2)
where n free
|
demand:
|
argument 2
|
deterministic:
|
possibly non-deterministic operation
|
documentation:
|
--- The combinator `chain p (n1,n2)` can be used to identify
--- a non-empty chain of graphs that can be parsed with `p`.
--- This chain has to be anchored between the nodes `n1` and `n2`.
|
failfree:
|
(_, _)
|
indeterministic:
|
referentially transparent operation
|
infix:
|
no fixity defined
|
iotype:
|
{(_,{(,)}) |-> {<*>}}
|
name:
|
chain
|
precedence:
|
no precedence defined
|
result-values:
|
{<*>}
|
signature:
|
((Prelude.Int, Prelude.Int) -> [(a, [Prelude.Int])]
-> (b, [(a, [Prelude.Int])])) -> (Prelude.Int, Prelude.Int)
-> [(a, [Prelude.Int])] -> ([b], [(a, [Prelude.Int])])
|
solution-complete:
|
operation might suspend on free variables
|
terminating:
|
possibly non-terminating
|
totally-defined:
|
reducible on all ground data terms
|