Sha512.rotr_split: def of bend-collections-laws-crypto@1.0.0.0 Import: import bend-collections-laws-crypto@1.0.0.0/spec/crypto/sha512.bend as Sha512 Lines 46-52 of bend-collections-laws-crypto@1.0.0.0/spec/crypto/sha512.bend: https://jend.leeeet.dev/read.txt?path=bend-collections-laws-crypto@1.0.0.0/spec/crypto/sha512.bend&start_line=46&end_line=52 import Base import bend-collections-laws-crypto@1.0.0.0/src/crypto/sha512/types.bend as T # 32 <= n < 64: rotating by 32 swaps the halves, then rotate by n - 32. def rotr_split(+hi: U32, +lo: U32, +n: Nat, small: Bool) -> T.Lane: match small: case True{}: rotr_small(hi, lo, n) case False{}: rotr_small(lo, hi, Nat.sub(n, 32n)) Uses (6): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.sub https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-crypto@1.0.0.0/spec/crypto/sha512.bend&name=rotr_small https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-crypto@1.0.0.0/src/crypto/sha512/types.bend&name=Lane