graph: rewrite +tap-deep to function properly

This commit is contained in:
Logan Allen 2021-02-24 19:14:18 -06:00
parent 63dc2f4c36
commit 19005f3ca3
2 changed files with 15 additions and 21 deletions

View File

@ -105,7 +105,9 @@
^- (list [index:store node:store])
?: ?=(%empty -.children.node)
~
(turn (tap-deep:gra p.children.node) empty-children)
%+ turn
(tap-deep:gra index p.children.node)
empty-children
::
++ empty-children
|= [=index:store =node:store]

View File

@ -104,27 +104,19 @@
resources.q.update
::
++ tap-deep
|= =graph:store
|= [=index:store =graph:store]
^- (list [index:store node:store])
=| =index:store
=/ nodes=(list [atom node:store])
(tap:orm:store graph)
|- =* tap-nodes $
^- (list [index:store node:store])
%- zing
%+ turn
nodes
|= [=atom =node:store]
^- (list [index:store node:store])
%+ welp
^- (list [index:store node:store])
[(snoc index atom) node]~
?. ?=(%graph -.children.node)
~
%_ tap-nodes
index (snoc index atom)
nodes (tap:orm:store p.children.node)
==
%+ roll (tap:orm:store graph)
|= $: [=atom =node:store]
lis=(list [index:store node:store])
==
=/ child-index (snoc index atom)
=/ childless-node node(children [%empty ~])
?: ?=(%empty -.children.node)
(snoc lis [child-index childless-node])
%+ weld
(snoc lis [child-index childless-node])
(tap-deep child-index p.children.node)
::
++ get-mark
|= res=resource