From b7beb6a69785846b706de4f0b40881e5dd32cf5e Mon Sep 17 00:00:00 2001 From: Philip Monk Date: Sat, 16 May 2020 05:22:39 -0700 Subject: [PATCH] clay: make covariant in type of +hoon --- bin/solid.pill | 4 ++-- pkg/arvo/sys/vane/clay.hoon | 25 ++++++++++++++++++++++++- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/bin/solid.pill b/bin/solid.pill index a1a73d72d..8cee85a8c 100644 --- a/bin/solid.pill +++ b/bin/solid.pill @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9c37d3bca1ecd239b23a4f3f6c8a046dbbcf6e1c1f48b7a89ae14eea2d9a5255 -size 13122161 +oid sha256:aa03602671bf8e42072f75ae41c6978fd670a84c33959a7caf29fb125355fcf8 +size 13137499 diff --git a/pkg/arvo/sys/vane/clay.hoon b/pkg/arvo/sys/vane/clay.hoon index abb84b0d0..43092c628 100644 --- a/pkg/arvo/sys/vane/clay.hoon +++ b/pkg/arvo/sys/vane/clay.hoon @@ -3810,7 +3810,30 @@ ?: ?=(%& -.u.u.p.result) ``p.u.u.p.result ~ :: -++ stay [ver ruf] +:: We clear the ford cache by replacing it with its bunt as a literal. +:: This nests within +ford-cache without reference to +type, +hoon, or +:: anything else in the sample of cache objects. Otherwise we would be +:: contravariant in the those types, which makes them harder to change. +:: +++ stay + :- ver + %= ruf + dos.rom + %- ~(run by dos.rom.ruf) + |= =dojo + dojo(fod.dom [~ ~ ~]) + :: + hoy + %- ~(run by hoy.ruf) + |= =rung + %= rung + rus + %- ~(run by rus.rung) + |= =rede + rede(fod.dom [~ ~ ~]) + == + == +:: ++ take :: accept response |= [tea=wire hen=duct dud=(unit goof) hin=(hypo sign)] ^+ [*(list move) ..^$]