def key
import ezx@1.11.0.0/src/doctor/world.bend as Worldimport Base
import ezx@1.11.0.0/src/lock/world.bend as W
95# a question as a key. A program's name and a directory hold no newline, so
96# the fields are kept apart by one.
97def key(ask: Ask) -> String:
98 match ask:
99 case Probe{name}:
100 "probe\n" ++ name
101 case Lib{dir}:
102 "lib\n" ++ dir
103 case Sources{}:
104 "sources"
105 case Tree{ask}:
106 "tree\n" ++ W.ask.hash(ask)
107 case Name{nv}:
108 "name\n" ++ nv