def cast.lookup

bend-osdev-legacy-ciphers@0.1.0.0 · cast5.bend:320

import bend-osdev-legacy-ciphers@0.1.0.0/cast5.bend as Cast5
import Base
import bend-osdev-legacy-ciphers@0.1.0.0/legacy_ciphers.bend as L

320def cast.lookup(+t: LcCastTabs, +i: U32, n: Nat) -> U32:
321  match t:
322    case LcCastTabs{s1, s2, s3, s4}:
323      match n:
324        case 0n:
325          L.lc.tab.get(8n, s1, L.lc.byte(i, 3n))
326        case 1n+n1:
327          match n1:
328            case 0n:
329              L.lc.tab.get(8n, s2, L.lc.byte(i, 2n))
330            case 1n+n2:
331              match n2:
332                case 0n:
333                  L.lc.tab.get(8n, s3, L.lc.byte(i, 1n))
334                case 1n+n3:
335                  L.lc.tab.get(8n, s4, L.lc.byte(i, 0n))

Uses (5)

Used by (1)