Server.handle: def of bolt@1.27.0.0 Import: import bolt@1.27.0.0/src/lsp/server.bend as Server Lines 604-615 of bolt@1.27.0.0/src/lsp/server.bend: https://jend.leeeet.dev/read.txt?path=bolt@1.27.0.0/src/lsp/server.bend&start_line=604&end_line=615 import Base import emerging-ezjson@1.2.0.0/main.bend as Ezjson import emerging-ezjson@1.2.0.0/src/value.bend as J import bolt@1.27.0.0/src/lsp/docs.bend as Docs import bolt@1.27.0.0/src/lsp/checker/answer.bend as C import bolt@1.27.0.0/src/lsp/files/service.bend as F import bolt@1.27.0.0/src/lsp/enc.bend as Enc # one message: its method's work, then step's decision on it def handle( # noqa: L001 LSP IO glue ~fs: F.Files, ~ck: C.Checker, ee: Enc.Enc, +msg: J.Json, docs: List<&2, Docs.Doc> ) -> IO(Out): +mm = method(name_of(msg)) do IO: w : Work <- work(~fs, ~ck, ee, mm, Ezjson.get(msg, "params"), docs) return step(mm, id_of(msg), w) Uses (17): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=IO https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=IO.bind https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=IO.pure https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/checker/answer.bend&name=Checker https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/docs.bend&name=Doc https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/enc.bend&name=Enc https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/files/service.bend&name=Files https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/server.bend&name=Out https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/server.bend&name=Work https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/server.bend&name=id_of https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/server.bend&name=method https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/server.bend&name=name_of https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/server.bend&name=step https://jend.leeeet.dev/definition.txt?path=bolt@1.27.0.0/src/lsp/server.bend&name=work https://jend.leeeet.dev/definition.txt?path=emerging-ezjson@1.4.0.0/main.bend&name=get https://jend.leeeet.dev/definition.txt?path=emerging-ezjson@1.4.0.0/src/value.bend&name=Json