mirror of
https://github.com/urbit/shrub.git
synced 2025-01-07 05:26:56 +03:00
Merge 85fdd6b190
into release/next-userspace
This commit is contained in:
commit
2d76c3868e
@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:61e583dd7db795dac4a7c31bfd3ee8b240e679bb882e35d4e7d1acb5f9f2f3d6
|
oid sha256:e0af91e5c51359719aaa943f37a1e953989c786412616b18fbaa0addb2cf0740
|
||||||
size 8270131
|
size 10272514
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:185ea5e76dc48695e55efc543377e0682e485f81b16e3b443f9be881d026d4f2
|
oid sha256:23d8235b19a3404e0bfbed54aa56a018255beb1f33457e37f521bc0763b4d0eb
|
||||||
size 2616564
|
size 6245506
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:28c1ce6409721365a8c24d77af767550bb6596260833af21fa96964b740b3cf8
|
oid sha256:64d7cd93dbdf650e390b9c5780ee8bee22cf925fa31f47a0a1a3b17ce7443302
|
||||||
size 12381649
|
size 11566105
|
||||||
|
@ -252,11 +252,13 @@
|
|||||||
:: %what: update from files
|
:: %what: update from files
|
||||||
:: %whey: produce $mass :: XX remove, scry
|
:: %whey: produce $mass :: XX remove, scry
|
||||||
:: %verb: toggle laconicity
|
:: %verb: toggle laconicity
|
||||||
|
:: %whiz: prime vane caches
|
||||||
::
|
::
|
||||||
$% [%trim p=@ud]
|
$% [%trim p=@ud]
|
||||||
[%what p=(list (pair path (cask)))]
|
[%what p=(list (pair path (cask)))]
|
||||||
[%whey ~]
|
[%whey ~]
|
||||||
[%verb p=(unit ?)]
|
[%verb p=(unit ?)]
|
||||||
|
[%whiz ~]
|
||||||
==
|
==
|
||||||
+$ wasp
|
+$ wasp
|
||||||
:: %crud: reroute $ovum with $goof
|
:: %crud: reroute $ovum with $goof
|
||||||
@ -291,14 +293,23 @@
|
|||||||
|=(b=beam =*(s scot `path`[(s %p p.b) q.b (s r.b) s.b]))
|
|=(b=beam =*(s scot `path`[(s %p p.b) q.b (s r.b) s.b]))
|
||||||
::
|
::
|
||||||
++ de-beam
|
++ de-beam
|
||||||
|
~/ %de-beam
|
||||||
|= p=path
|
|= p=path
|
||||||
^- (unit beam)
|
^- (unit beam)
|
||||||
?. ?=([@ @ @ *] p) ~
|
?. ?=([@ @ @ *] p) ~
|
||||||
?~ who=(slaw %p i.p) ~
|
?~ who=(slaw %p i.p) ~
|
||||||
?~ des=?~(i.t.p (some %$) (slaw %tas i.t.p)) ~ :: XX +sym ;~(pose low (easy %$))
|
?~ des=?~(i.t.p (some %$) (slaw %tas i.t.p)) ~ :: XX +sym ;~(pose low (easy %$))
|
||||||
?~ ved=(slay i.t.t.p) ~
|
?~ ved=(de-case i.t.t.p) ~
|
||||||
?. ?=([%$ case] u.ved) ~
|
`[[`ship`u.who `desk`u.des u.ved] t.t.t.p]
|
||||||
`(unit beam)`[~ [`ship`u.who `desk`u.des `case`p.u.ved] t.t.t.p]
|
::
|
||||||
|
++ de-case
|
||||||
|
~/ %de-case
|
||||||
|
|= =knot
|
||||||
|
^- (unit case)
|
||||||
|
?^ num=(slaw %ud knot) `[%ud u.num]
|
||||||
|
?^ wen=(slaw %da knot) `[%da u.wen]
|
||||||
|
?~ lab=(slaw %tas knot) ~
|
||||||
|
`[%tas u.lab]
|
||||||
::
|
::
|
||||||
++ en-omen
|
++ en-omen
|
||||||
|= [vis=view bem=beam]
|
|= [vis=view bem=beam]
|
||||||
@ -308,6 +319,7 @@
|
|||||||
~(rent co [%many $/tas/way.vis $/tas/car.vis ~])
|
~(rent co [%many $/tas/way.vis $/tas/car.vis ~])
|
||||||
::
|
::
|
||||||
++ de-omen
|
++ de-omen
|
||||||
|
~/ %de-omen
|
||||||
|= pax=path
|
|= pax=path
|
||||||
^- (unit [vis=view bem=beam])
|
^- (unit [vis=view bem=beam])
|
||||||
?~ pax ~
|
?~ pax ~
|
||||||
@ -1000,8 +1012,11 @@
|
|||||||
++ settle
|
++ settle
|
||||||
|= van=vase
|
|= van=vase
|
||||||
^- (pair vase worm)
|
^- (pair vase worm)
|
||||||
=/ [rig=vase wor=worm] (~(slym wa *worm) van *vane-sample)
|
=| sac=worm
|
||||||
[van +:(~(slap wa wor) rig [%limb %scry])]
|
=^ rig=vase sac (~(slym wa sac) van *vane-sample)
|
||||||
|
=^ gat=vase sac (~(slap wa sac) rig [%limb %scry])
|
||||||
|
=^ pro=vase sac (~(slap wa sac) gat [%limb %$])
|
||||||
|
[van +:(~(mint wa sac) p.pro [%$ 7])]
|
||||||
::
|
::
|
||||||
:: XX pass identity to preserve behavior?
|
:: XX pass identity to preserve behavior?
|
||||||
::
|
::
|
||||||
@ -1470,6 +1485,9 @@
|
|||||||
%verb ..pith(lac.fad ?~(p.waif !lac.fad u.p.waif))
|
%verb ..pith(lac.fad ?~(p.waif !lac.fad u.p.waif))
|
||||||
%what ~(kel what p.waif)
|
%what ~(kel what p.waif)
|
||||||
%whey ..pith(out [[//arvo mass/whey] out])
|
%whey ..pith(out [[//arvo mass/whey] out])
|
||||||
|
::
|
||||||
|
%whiz
|
||||||
|
..pith(van.mod (~(run by van.mod) |=(vane (settle:va:part vase))))
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
++ peek
|
++ peek
|
||||||
|
@ -259,6 +259,8 @@
|
|||||||
++ head |*(^ ,:+<-) :: get head
|
++ head |*(^ ,:+<-) :: get head
|
||||||
++ same |*(* +<) :: identity
|
++ same |*(* +<) :: identity
|
||||||
::
|
::
|
||||||
|
++ succ |=(@ +(+<)) :: successor
|
||||||
|
::
|
||||||
++ tail |*(^ ,:+<+) :: get tail
|
++ tail |*(^ ,:+<+) :: get tail
|
||||||
++ test |=(^ =(+<- +<+)) :: equality
|
++ test |=(^ =(+<- +<+)) :: equality
|
||||||
::
|
::
|
||||||
@ -8764,6 +8766,7 @@
|
|||||||
%peek peek
|
%peek peek
|
||||||
%repo repo
|
%repo repo
|
||||||
%rest rest
|
%rest rest
|
||||||
|
%sink sink
|
||||||
%tack tack
|
%tack tack
|
||||||
%toss toss
|
%toss toss
|
||||||
%wrap wrap
|
%wrap wrap
|
||||||
@ -10838,7 +10841,7 @@
|
|||||||
|- ^- type
|
|- ^- type
|
||||||
?~ lov sut
|
?~ lov sut
|
||||||
$(lov t.lov, sut (face i.lov sut))
|
$(lov t.lov, sut (face i.lov sut))
|
||||||
:: ::
|
::
|
||||||
++ sint :: reduce by reference
|
++ sint :: reduce by reference
|
||||||
|= $: :: hod: expand holds
|
|= $: :: hod: expand holds
|
||||||
::
|
::
|
||||||
@ -10911,6 +10914,39 @@
|
|||||||
%- ~(gas in *(set type))
|
%- ~(gas in *(set type))
|
||||||
(turn leg |=([p=type q=hoon] (play(sut p) q)))
|
(turn leg |=([p=type q=hoon] (play(sut p) q)))
|
||||||
::
|
::
|
||||||
|
++ sink
|
||||||
|
~/ %sink
|
||||||
|
|^ ^- cord
|
||||||
|
?- sut
|
||||||
|
%void 'void'
|
||||||
|
%noun 'noun'
|
||||||
|
[%atom *] (rap 3 'atom ' p.sut ' ' ?~(q.sut '~' u.q.sut) ~)
|
||||||
|
[%cell *] (rap 3 'cell ' (mup p.sut) ' ' (mup q.sut) ~)
|
||||||
|
[%face *] (rap 3 'face ' ?@(p.sut p.sut (mup p.sut)) ' ' (mup q.sut) ~)
|
||||||
|
[%fork *] (rap 3 'fork ' (mup p.sut) ~)
|
||||||
|
[%hint *] (rap 3 'hint ' (mup p.sut) ' ' (mup q.sut) ~)
|
||||||
|
[%hold *] (rap 3 'hold ' (mup p.sut) ' ' (mup q.sut) ~)
|
||||||
|
::
|
||||||
|
[%core *]
|
||||||
|
%+ rap 3
|
||||||
|
:~ 'core '
|
||||||
|
(mup p.sut)
|
||||||
|
' '
|
||||||
|
?~(p.p.q.sut '~' u.p.p.q.sut)
|
||||||
|
' '
|
||||||
|
q.p.q.sut
|
||||||
|
' '
|
||||||
|
r.p.q.sut
|
||||||
|
' '
|
||||||
|
(mup q.q.sut)
|
||||||
|
' '
|
||||||
|
(mup p.r.q.sut)
|
||||||
|
==
|
||||||
|
==
|
||||||
|
::
|
||||||
|
++ mup |=(* (scot %p (mug +<)))
|
||||||
|
--
|
||||||
|
::
|
||||||
++ take
|
++ take
|
||||||
|= [vit=vein duz=$-(type type)]
|
|= [vit=vein duz=$-(type type)]
|
||||||
^- (pair axis type)
|
^- (pair axis type)
|
||||||
|
@ -1069,14 +1069,23 @@
|
|||||||
:::: :: (1d2)
|
:::: :: (1d2)
|
||||||
::
|
::
|
||||||
+$ blew [p=@ud q=@ud] :: columns rows
|
+$ blew [p=@ud q=@ud] :: columns rows
|
||||||
+$ belt :: old belt
|
+$ belt :: client input
|
||||||
|
$? bolt :: simple input
|
||||||
|
$% [%mod mod=?(%ctl %met %hyp) key=bolt] :: w/ modifier
|
||||||
|
[%txt p=(list @c)] :: utf32 text
|
||||||
|
::TODO consider moving %hey, %rez, %yow here ::
|
||||||
|
::TMP forward backwards-compatibility ::
|
||||||
|
:: ::
|
||||||
|
[%ctl p=@c] ::
|
||||||
|
[%met p=@c] ::
|
||||||
|
== == ::
|
||||||
|
+$ bolt :: simple input
|
||||||
|
$@ @c :: simple keystroke
|
||||||
$% [%aro p=?(%d %l %r %u)] :: arrow key
|
$% [%aro p=?(%d %l %r %u)] :: arrow key
|
||||||
[%bac ~] :: true backspace
|
[%bac ~] :: true backspace
|
||||||
[%ctl p=@c] :: control-key
|
|
||||||
[%del ~] :: true delete
|
[%del ~] :: true delete
|
||||||
[%met p=@c] :: meta-key
|
[%hit r=@ud c=@ud] :: mouse click
|
||||||
[%ret ~] :: return
|
[%ret ~] :: return
|
||||||
[%txt p=(list @c)] :: utf32 text
|
|
||||||
== ::
|
== ::
|
||||||
+$ blit :: old blit
|
+$ blit :: old blit
|
||||||
$% [%bel ~] :: make a noise
|
$% [%bel ~] :: make a noise
|
||||||
@ -2102,6 +2111,7 @@
|
|||||||
[%g task:gall]
|
[%g task:gall]
|
||||||
[%i task:iris]
|
[%i task:iris]
|
||||||
[%j task:jael]
|
[%j task:jael]
|
||||||
|
[%$ %whiz ~]
|
||||||
[@tas %meta vase]
|
[@tas %meta vase]
|
||||||
==
|
==
|
||||||
:: full vane names are required in vanes
|
:: full vane names are required in vanes
|
||||||
|
@ -3660,7 +3660,7 @@
|
|||||||
=/ lower=@ud 1
|
=/ lower=@ud 1
|
||||||
|-
|
|-
|
||||||
:: a should be excluded, so wait until we're past it
|
:: a should be excluded, so wait until we're past it
|
||||||
?: =(lower +(a))
|
?: (gte lower +(a))
|
||||||
acc
|
acc
|
||||||
=/ res=(set tako) (reachable-takos (~(got by hit.dom) lower))
|
=/ res=(set tako) (reachable-takos (~(got by hit.dom) lower))
|
||||||
$(acc (~(uni in acc) res), lower +(lower))
|
$(acc (~(uni in acc) res), lower +(lower))
|
||||||
@ -3668,7 +3668,7 @@
|
|||||||
=| acc=(set tako)
|
=| acc=(set tako)
|
||||||
=/ upper=@ud b
|
=/ upper=@ud b
|
||||||
|-
|
|-
|
||||||
?: =(upper a)
|
?: (lte upper a)
|
||||||
acc
|
acc
|
||||||
=/ res=(set tako) (reachable-takos (~(got by hit.dom) upper))
|
=/ res=(set tako) (reachable-takos (~(got by hit.dom) upper))
|
||||||
$(acc (~(uni in acc) res), upper (dec upper))
|
$(acc (~(uni in acc) res), upper (dec upper))
|
||||||
|
@ -106,7 +106,6 @@
|
|||||||
%flow +>
|
%flow +>
|
||||||
%harm +>
|
%harm +>
|
||||||
%hail (send %hey ~)
|
%hail (send %hey ~)
|
||||||
%belt (send `dill-belt`p.kyz)
|
|
||||||
%text (from %out (tuba p.kyz))
|
%text (from %out (tuba p.kyz))
|
||||||
%crud :: (send `dill-belt`[%cru p.kyz q.kyz])
|
%crud :: (send `dill-belt`[%cru p.kyz q.kyz])
|
||||||
(crud p.kyz q.kyz)
|
(crud p.kyz q.kyz)
|
||||||
@ -116,6 +115,18 @@
|
|||||||
%pack (dump kyz)
|
%pack (dump kyz)
|
||||||
%crop (dump trim+p.kyz)
|
%crop (dump trim+p.kyz)
|
||||||
%verb (pass /verb %$ kyz)
|
%verb (pass /verb %$ kyz)
|
||||||
|
::
|
||||||
|
%belt
|
||||||
|
%- send
|
||||||
|
::TMP forwards compatibility with next-dill
|
||||||
|
::
|
||||||
|
?@ p.kyz [%txt p.kyz ~]
|
||||||
|
?: ?=(%hit -.p.kyz) [%txt ~]
|
||||||
|
?. ?=(%mod -.p.kyz) p.kyz
|
||||||
|
=/ =@c
|
||||||
|
?@ key.p.kyz key.p.kyz
|
||||||
|
?:(?=(?(%bac %del %ret) -.key.p.kyz) `@`-.key.p.kyz ~-)
|
||||||
|
?:(?=(%met mod.p.kyz) [%met c] [%ctl c])
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
++ crud
|
++ crud
|
||||||
|
@ -30,6 +30,9 @@
|
|||||||
$% [%rest p=@da]
|
$% [%rest p=@da]
|
||||||
[%wait p=@da]
|
[%wait p=@da]
|
||||||
== ==
|
== ==
|
||||||
|
$: %c
|
||||||
|
$>(%warp task:clay)
|
||||||
|
==
|
||||||
:: %d: to dill
|
:: %d: to dill
|
||||||
::
|
::
|
||||||
$: %d
|
$: %d
|
||||||
@ -53,6 +56,12 @@
|
|||||||
$: %gall
|
$: %gall
|
||||||
gift:gall
|
gift:gall
|
||||||
:: $>(%unto gift:gall)
|
:: $>(%unto gift:gall)
|
||||||
|
::
|
||||||
|
==
|
||||||
|
$: %clay
|
||||||
|
gift:clay
|
||||||
|
:: $>(%writ gift:clay)
|
||||||
|
::
|
||||||
== ==
|
== ==
|
||||||
--
|
--
|
||||||
:: more structures
|
:: more structures
|
||||||
@ -1231,9 +1240,9 @@
|
|||||||
::NOTE these will only fail if the mark and/or json types changed,
|
::NOTE these will only fail if the mark and/or json types changed,
|
||||||
:: since conversion failure also gets caught during first receive.
|
:: since conversion failure also gets caught during first receive.
|
||||||
:: we can't do anything about this, so consider it unsupported.
|
:: we can't do anything about this, so consider it unsupported.
|
||||||
?~ sign=(channel-event-to-sign channel-event) $
|
?~ sign=(channel-event-to-sign channel-event) $
|
||||||
?~ json=(sign-to-json request-id u.sign) $
|
?~ jive=(sign-to-json request-id u.sign) $
|
||||||
$(events [(event-json-to-wall id u.json) events])
|
$(events [(event-json-to-wall id +.u.jive) events])
|
||||||
:: send the start event to the client
|
:: send the start event to the client
|
||||||
::
|
::
|
||||||
=^ http-moves state
|
=^ http-moves state
|
||||||
@ -1499,8 +1508,12 @@
|
|||||||
:: if conversion succeeds, we *can* send it. if the client is actually
|
:: if conversion succeeds, we *can* send it. if the client is actually
|
||||||
:: connected, we *will* send it immediately.
|
:: connected, we *will* send it immediately.
|
||||||
::
|
::
|
||||||
=/ json=(unit json)
|
=/ jive=(unit (quip move json))
|
||||||
(sign-to-json request-id sign)
|
(sign-to-json request-id sign)
|
||||||
|
=/ json=(unit json)
|
||||||
|
?~(jive ~ `+.u.jive)
|
||||||
|
=? moves ?=(^ jive)
|
||||||
|
(weld moves -.u.jive)
|
||||||
=* sending &(?=([%| *] state.u.channel) ?=(^ json))
|
=* sending &(?=([%| *] state.u.channel) ?=(^ json))
|
||||||
::
|
::
|
||||||
=/ next-id next-id.u.channel
|
=/ next-id next-id.u.channel
|
||||||
@ -1578,7 +1591,7 @@
|
|||||||
^= data
|
^= data
|
||||||
%- wall-to-octs
|
%- wall-to-octs
|
||||||
%+ event-json-to-wall next-id
|
%+ event-json-to-wall next-id
|
||||||
(need (sign-to-json request-id %kick ~))
|
+:(need (sign-to-json request-id %kick ~))
|
||||||
::
|
::
|
||||||
complete=%.n
|
complete=%.n
|
||||||
==
|
==
|
||||||
@ -1619,32 +1632,33 @@
|
|||||||
:: +sign-to-json: render sign from request-id as json channel event
|
:: +sign-to-json: render sign from request-id as json channel event
|
||||||
::
|
::
|
||||||
++ sign-to-json
|
++ sign-to-json
|
||||||
|
~% %sign-to-json ..part ~
|
||||||
|= [request-id=@ud =sign:agent:gall]
|
|= [request-id=@ud =sign:agent:gall]
|
||||||
^- (unit json)
|
^- (unit (quip move json))
|
||||||
:: for facts, we try to convert the result to json
|
:: for facts, we try to convert the result to json
|
||||||
::
|
::
|
||||||
=/ jsyn=(unit sign:agent:gall)
|
=/ [from=(unit mark) jsyn=(unit sign:agent:gall)]
|
||||||
?. ?=(%fact -.sign) `sign
|
?. ?=(%fact -.sign) [~ `sign]
|
||||||
?: ?=(%json p.cage.sign) `sign
|
?: ?=(%json p.cage.sign) [~ `sign]
|
||||||
:: find and use tube from fact mark to json
|
:: find and use tube from fact mark to json
|
||||||
::
|
::
|
||||||
=* have=mark p.cage.sign
|
=* have=mark p.cage.sign
|
||||||
=* desc=tape "from {(trip have)} to json"
|
=* desc=tape "from {(trip have)} to json"
|
||||||
=/ tube=(unit tube:clay)
|
=/ convert=(unit vase)
|
||||||
=/ tuc=(unit (unit cage))
|
=/ cag=(unit (unit cage))
|
||||||
(rof ~ %cc [our %home da+now] /[have]/json)
|
(rof ~ %cf [our %home da+now] /[have]/json)
|
||||||
?. ?=([~ ~ *] tuc) ~
|
?. ?=([~ ~ *] cag) ~
|
||||||
`!<(tube:clay q.u.u.tuc)
|
`q.u.u.cag
|
||||||
?~ tube
|
?~ convert
|
||||||
((slog leaf+"eyre: no tube {desc}" ~) ~)
|
((slog leaf+"eyre: no convert {desc}" ~) [~ ~])
|
||||||
::
|
~| "conversion failed {desc}"
|
||||||
=/ res (mule |.((u.tube q.cage.sign)))
|
[`have `[%fact %json (slym u.convert q.q.cage.sign)]]
|
||||||
?: ?=(%& -.res)
|
|
||||||
`[%fact %json p.res]
|
|
||||||
((slog leaf+"eyre: failed tube {desc}" ~) ~)
|
|
||||||
::
|
|
||||||
?~ jsyn ~
|
?~ jsyn ~
|
||||||
%- some
|
%- some
|
||||||
|
:- ?~ from ~
|
||||||
|
:_ ~
|
||||||
|
:^ duct %pass /conversion-cache/[u.from]
|
||||||
|
[%c %warp our %home `[%sing %f da+now /[u.from]/json]]
|
||||||
=* sign u.jsyn
|
=* sign u.jsyn
|
||||||
=, enjs:format
|
=, enjs:format
|
||||||
%- pairs
|
%- pairs
|
||||||
@ -1665,7 +1679,7 @@
|
|||||||
:- 'json'
|
:- 'json'
|
||||||
~| [%unexpected-fact-mark p.cage.sign]
|
~| [%unexpected-fact-mark p.cage.sign]
|
||||||
?> =(%json p.cage.sign)
|
?> =(%json p.cage.sign)
|
||||||
;;(json q.q.cage.sign)
|
!<(json q.cage.sign)
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
%kick
|
%kick
|
||||||
@ -2320,14 +2334,15 @@
|
|||||||
::
|
::
|
||||||
|^ ^- [(list move) _http-server-gate]
|
|^ ^- [(list move) _http-server-gate]
|
||||||
::
|
::
|
||||||
?+ i.wire
|
?+ i.wire
|
||||||
~|([%bad-take-wire wire] !!)
|
~|([%bad-take-wire wire] !!)
|
||||||
::
|
::
|
||||||
%run-app-request run-app-request
|
%run-app-request run-app-request
|
||||||
%watch-response watch-response
|
%watch-response watch-response
|
||||||
%sessions sessions
|
%sessions sessions
|
||||||
%channel channel
|
%channel channel
|
||||||
%acme acme-ack
|
%acme acme-ack
|
||||||
|
%conversion-cache `http-server-gate
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
++ run-app-request
|
++ run-app-request
|
||||||
|
@ -159,7 +159,10 @@
|
|||||||
~< %slog.[0 leaf+"gall: molted"]
|
~< %slog.[0 leaf+"gall: molted"]
|
||||||
:: +molt should never notify its client about agent changes
|
:: +molt should never notify its client about agent changes
|
||||||
::
|
::
|
||||||
=- [(skip -< |=(move ?=([* %give %onto *] +<))) ->]
|
=- :_ ->
|
||||||
|
%+ welp
|
||||||
|
(skip -< |=(move ?=([* %give %onto *] +<)))
|
||||||
|
[^duct %pass /whiz/gall %$ %whiz ~]~
|
||||||
=/ adult adult-core
|
=/ adult adult-core
|
||||||
=. state.adult
|
=. state.adult
|
||||||
[%7 system-duct outstanding contacts yokes=~ blocked]:spore
|
[%7 system-duct outstanding contacts yokes=~ blocked]:spore
|
||||||
|
@ -3391,6 +3391,11 @@
|
|||||||
:: :: ++no:dejs:format
|
:: :: ++no:dejs:format
|
||||||
++ no :: number as cord
|
++ no :: number as cord
|
||||||
|=(jon=json ?>(?=([%n *] jon) p.jon))
|
|=(jon=json ?>(?=([%n *] jon) p.jon))
|
||||||
|
:: :: ++nu:dejs:format
|
||||||
|
++ nu :: parse number as hex
|
||||||
|
|= jon=json
|
||||||
|
?> ?=([%s *] jon)
|
||||||
|
(rash p.jon hex)
|
||||||
:: :: ++of:dejs:format
|
:: :: ++of:dejs:format
|
||||||
++ of :: object as frond
|
++ of :: object as frond
|
||||||
|* wer=(pole [cord fist])
|
|* wer=(pole [cord fist])
|
||||||
@ -3440,6 +3445,11 @@
|
|||||||
=/ ten ~|(key+key.wer (wit.wer (~(get by jom) key.wer)))
|
=/ ten ~|(key+key.wer (wit.wer (~(get by jom) key.wer)))
|
||||||
?~(t.wer ten [ten ((ou-raw t.wer) jom)])
|
?~(t.wer ten [ten ((ou-raw t.wer) jom)])
|
||||||
==
|
==
|
||||||
|
:: :: ++oj:dejs:format
|
||||||
|
++ oj :: object as jug
|
||||||
|
|* =fist
|
||||||
|
^- $-(json (jug cord _(fist *json)))
|
||||||
|
(om (as fist))
|
||||||
:: :: ++om:dejs:format
|
:: :: ++om:dejs:format
|
||||||
++ om :: object as map
|
++ om :: object as map
|
||||||
|* wit=fist
|
|* wit=fist
|
||||||
@ -3466,6 +3476,12 @@
|
|||||||
:: :: ++sa:dejs:format
|
:: :: ++sa:dejs:format
|
||||||
++ sa :: string as tape
|
++ sa :: string as tape
|
||||||
|=(jon=json ?>(?=([%s *] jon) (trip p.jon)))
|
|=(jon=json ?>(?=([%s *] jon) (trip p.jon)))
|
||||||
|
:: :: ++sd:dejs:format
|
||||||
|
++ sd :: string @ud as date
|
||||||
|
|= jon=json
|
||||||
|
^- @da
|
||||||
|
?> ?=(%s -.jon)
|
||||||
|
`@da`(rash p.jon dem:ag)
|
||||||
:: :: ++se:dejs:format
|
:: :: ++se:dejs:format
|
||||||
++ se :: string as aura
|
++ se :: string as aura
|
||||||
|= aur=@tas
|
|= aur=@tas
|
||||||
@ -3580,6 +3596,15 @@
|
|||||||
?. ?=([%s *] jon) ~
|
?. ?=([%s *] jon) ~
|
||||||
(bind (stud:chrono:userlib p.jon) |=(a=date (year a)))
|
(bind (stud:chrono:userlib p.jon) |=(a=date (year a)))
|
||||||
::
|
::
|
||||||
|
++ dank :: tank
|
||||||
|
^- $-(json (unit tank))
|
||||||
|
%+ re *tank |. ~+
|
||||||
|
%- of :~
|
||||||
|
leaf+sa
|
||||||
|
palm+(ot style+(ot mid+sa cap+sa open+sa close+sa ~) lines+(ar dank) ~)
|
||||||
|
rose+(ot style+(ot mid+sa open+sa close+sa ~) lines+(ar dank) ~)
|
||||||
|
==
|
||||||
|
::
|
||||||
++ di :: millisecond date
|
++ di :: millisecond date
|
||||||
(cu from-unix-ms:chrono:userlib ni)
|
(cu from-unix-ms:chrono:userlib ni)
|
||||||
::
|
::
|
||||||
@ -3653,6 +3678,12 @@
|
|||||||
|* [pre=* wit=fist]
|
|* [pre=* wit=fist]
|
||||||
(cu |*(* [pre +<]) wit)
|
(cu |*(* [pre +<]) wit)
|
||||||
::
|
::
|
||||||
|
++ re :: recursive reparsers
|
||||||
|
|* [gar=* sef=_|.(fist)]
|
||||||
|
|= jon=json
|
||||||
|
^- (unit _gar)
|
||||||
|
((sef) jon)
|
||||||
|
::
|
||||||
++ sa :: string as tape
|
++ sa :: string as tape
|
||||||
|= jon=json
|
|= jon=json
|
||||||
?.(?=([%s *] jon) ~ (some (trip p.jon)))
|
?.(?=([%s *] jon) ~ (some (trip p.jon)))
|
||||||
|
@ -49,7 +49,7 @@
|
|||||||
^- hexb:bc
|
^- hexb:bc
|
||||||
%- flip:byt:bc
|
%- flip:byt:bc
|
||||||
%- sha256:bc
|
%- sha256:bc
|
||||||
(script-pubkey:bc a)
|
(to-script-pubkey:adr:bc a)
|
||||||
::
|
::
|
||||||
++ parse-json-rpc
|
++ parse-json-rpc
|
||||||
|= =json
|
|= =json
|
||||||
|
Loading…
Reference in New Issue
Block a user