Lru.link_tail: def of bend-collections@1.0.0.0
Import: import bend-collections@1.0.0.0/src/containers/lru.bend as Lru
Lines 169-173 of bend-collections@1.0.0.0/src/containers/lru.bend: https://jend.leeeet.dev/read.txt?path=bend-collections@1.0.0.0/src/containers/lru.bend&start_line=169&end_line=173
import Base
import bend-collections@1.0.0.0/src/containers/hash_table.bend as H
# Attach slot s as the newest.
def link_tail(a, -V: Kind(a), f: LRU, +s: U32) -> LRU:
F{cap, n, head, +tail, free, m, tab, ks, ents, lk} = f
F{cap, n, pick(U32.is_eq(tail, 0), H.link(s), head), H.link(s), free, m, tab, ks, ents,
set_if(Array.set(U32, Array.set(U32, lk, pidx(s), tail), nidx(s), 0), nidx(H.slot(tail)), H.link(s), U32.is_eq(tail, 0))}
Uses (10):
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Array.set
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.is_eq
https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/hash_table.bend&name=link
https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/hash_table.bend&name=slot
https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/lru.bend&name=LRU
https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/lru.bend&name=nidx
https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/lru.bend&name=pick
https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/lru.bend&name=pidx
https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/containers/lru.bend&name=set_if