spider: make handle-stop-thread into a get by instead of a got by to fix failing +on-load
++ handle-stop-thread
|= [=tid nice=?]
^- (quip card ^state)
- =/ =yarn (~(got by tid.state) tid)
- ?: (has-yarn running.state yarn)
+ =/ yarn=(unit yarn) (~(get by tid.state) tid)
+ ?~ yarn
+ ~& %stopping-nonexistent-thread
+ [~ state]
+ ?: (has-yarn running.state u.yarn)
?: nice
- (thread-done yarn *vase)
- (thread-fail yarn %cancelled ~)
- ?: (~(has by starting.state) yarn)
+ (thread-done u.yarn *vase)
+ (thread-fail u.yarn %cancelled ~)
+ ?: (~(has by starting.state) u.yarn)
(thread-fail-not-running tid %stopped-before-started ~)
- ~& [%thread-not-started yarn]
+ ~& [%thread-not-started u.yarn]
?: nice
- (thread-done yarn *vase)
- (thread-fail yarn %cancelled ~)
+ (thread-done u.yarn *vase)
+ (thread-fail u.yarn %cancelled ~)
::
++ take-input
|= [=yarn input=(unit input:strand)]
