mirror of
https://github.com/urbit/shrub.git
synced 2024-11-28 13:54:20 +03:00
gall: smear @da
if binding to a path earlier than its latest binding
This commit is contained in:
parent
4b82b7b8d3
commit
cf6bbb87a0
@ -983,14 +983,12 @@
|
||||
^+ ap-core
|
||||
=- ap-core(sky.yoke -)
|
||||
%+ ~(put by sky.yoke) spur
|
||||
?~ old=(~(get by sky.yoke) spur) :: insert binding at new path
|
||||
`(put:on-path fan:*path-state 0 now^[%& page])
|
||||
=- u.old(fan (put:on-path fan.u.old - now^[%& page]))
|
||||
?~ las=(ram:on-path fan.u.old)
|
||||
?~(bob.u.old 0 +(u.bob.u.old))
|
||||
~| [%grow-many path=spur]
|
||||
?< =(now p.val.u.las) ::TODO better to no-op?
|
||||
?~(bob.u.old +(key.u.las) +((max key.u.las u.bob.u.old)))
|
||||
=/ ski (~(gut by sky.yoke) spur *path-state)
|
||||
=- ski(fan (put:on-path fan.ski -< -> &/page))
|
||||
?~ las=(ram:on-path fan.ski)
|
||||
[(fall bob.ski 0) now]
|
||||
:_ (max now +(p.val.u.las))
|
||||
?~(bob.ski +(key.u.las) +((max key.u.las u.bob.ski)))
|
||||
:: +ap-tomb: tombstone -- replace bound value with hash
|
||||
::
|
||||
++ ap-tomb
|
||||
|
Loading…
Reference in New Issue
Block a user