mirror of
https://github.com/urbit/shrub.git
synced 2024-12-01 06:35:32 +03:00
Merge pull request #5011 from urbit/la/spider-hints
This commit is contained in:
commit
ff702a8cb1
@ -1,6 +1,7 @@
|
||||
/- spider
|
||||
/+ libstrand=strand, default-agent, verb, server
|
||||
=, strand=strand:libstrand
|
||||
~% %spider-top ..part ~
|
||||
|%
|
||||
+$ card card:agent:gall
|
||||
+$ thread thread:spider
|
||||
@ -60,6 +61,7 @@
|
||||
::
|
||||
:: Trie operations
|
||||
::
|
||||
~% %spider ..card ~
|
||||
|%
|
||||
++ get-yarn
|
||||
|= [=trie =yarn]
|
||||
@ -137,6 +139,7 @@
|
||||
=| =state
|
||||
=<
|
||||
%+ verb |
|
||||
~% %spider-agent ..bind-eyre ~
|
||||
|_ =bowl:gall
|
||||
+* this .
|
||||
spider-core +>
|
||||
@ -192,6 +195,7 @@
|
||||
--
|
||||
::
|
||||
++ on-poke
|
||||
~/ %on-poke
|
||||
|= [=mark =vase]
|
||||
^- (quip card _this)
|
||||
?: ?=(%spider-kill mark)
|
||||
@ -208,6 +212,7 @@
|
||||
[cards this]
|
||||
::
|
||||
++ on-watch
|
||||
~/ %on-watch
|
||||
|= =path
|
||||
^- (quip card _this)
|
||||
=^ cards state
|
||||
@ -220,6 +225,7 @@
|
||||
::
|
||||
++ on-leave on-leave:def
|
||||
++ on-peek
|
||||
~/ %on-peek
|
||||
|= =path
|
||||
^- (unit (unit cage))
|
||||
?+ path (on-peek:def path)
|
||||
@ -234,6 +240,7 @@
|
||||
==
|
||||
::
|
||||
++ on-agent
|
||||
~/ %on-agent
|
||||
|= [=wire =sign:agent:gall]
|
||||
^- (quip card _this)
|
||||
=^ cards state
|
||||
@ -243,6 +250,7 @@
|
||||
[cards this]
|
||||
::
|
||||
++ on-arvo
|
||||
~/ %on-arvo
|
||||
|= [=wire =sign-arvo]
|
||||
^- (quip card _this)
|
||||
=^ cards state
|
||||
@ -261,6 +269,7 @@
|
||||
(on-load on-save)
|
||||
--
|
||||
::
|
||||
~% %spider-helper ..get-yarn ~
|
||||
|_ =bowl:gall
|
||||
::
|
||||
++ bind-eyre
|
||||
@ -272,6 +281,7 @@
|
||||
:((cury cat 3) file '--' (scot %uv (sham eny.bowl)))
|
||||
::
|
||||
++ handle-http-request
|
||||
~/ %handle-http-request
|
||||
|= [eyre-id=@ta =inbound-request:eyre]
|
||||
^- (quip card _state)
|
||||
?> authenticated.inbound-request
|
||||
@ -284,6 +294,8 @@
|
||||
=/ =tid (new-thread-id thread)
|
||||
=. serving.state
|
||||
(~(put by serving.state) tid [eyre-id output-mark])
|
||||
:: TODO: speed this up somehow. we spend about 15ms in this arm alone
|
||||
::
|
||||
=+ .^
|
||||
=tube:clay
|
||||
%cc
|
||||
@ -315,6 +327,7 @@
|
||||
`state
|
||||
::
|
||||
++ handle-sign
|
||||
~/ %handle-sign
|
||||
|= [=tid =wire =sign-arvo]
|
||||
=/ yarn (~(get by tid.state) tid)
|
||||
?~ yarn
|
||||
@ -331,6 +344,7 @@
|
||||
(take-input u.yarn ~ %agent wire sign)
|
||||
::
|
||||
++ handle-start-thread
|
||||
~/ %handle-start-thread
|
||||
|= [parent-tid=(unit tid) use=(unit tid) file=term =vase]
|
||||
^- (quip card ^state)
|
||||
=/ parent-yarn=yarn
|
||||
@ -353,12 +367,13 @@
|
||||
=/ pax=path
|
||||
~| no-file-for-thread+file
|
||||
(need (get-fit:clay [our q.byk da+now]:bowl %ted file))
|
||||
=/ =card
|
||||
:+ %pass /build/[new-tid]
|
||||
[%arvo %c %warp our.bowl %home ~ %sing %a da+now.bowl pax]
|
||||
[[card ~] state]
|
||||
:_ state
|
||||
:_ ~
|
||||
:+ %pass /build/[new-tid]
|
||||
[%arvo %c %warp our.bowl %home ~ %sing %a da+now.bowl pax]
|
||||
::
|
||||
++ handle-build
|
||||
~/ %handle-build
|
||||
|= [=tid =sign-arvo]
|
||||
^- (quip card ^state)
|
||||
=/ =yarn (~(got by tid.state) tid)
|
||||
@ -377,6 +392,7 @@
|
||||
(start-thread yarn p.maybe-thread)
|
||||
::
|
||||
++ start-thread
|
||||
~/ %start-thread
|
||||
|= [=yarn =thread]
|
||||
^- (quip card ^state)
|
||||
=/ =vase vase:(~(got by starting.state) yarn)
|
||||
@ -411,6 +427,7 @@
|
||||
(thread-fail u.yarn %cancelled ~)
|
||||
::
|
||||
++ take-input
|
||||
~/ %take-input
|
||||
|= [=yarn input=(unit input:strand)]
|
||||
^- (quip card ^state)
|
||||
=/ m (strand ,vase)
|
||||
|
Loading…
Reference in New Issue
Block a user