def quads
bendtorch@1.3.0.0 · dtype.bend:357
import bendtorch@1.3.0.0/dtype.bend as Dtype
import Base
357
358def quads(xs: List<&2, U32>) -> List<&2, U32>:
359 match xs:
360 case Nil{}:
361 Nil{}
362 case Con{+a, Nil{}}:
363 [a]
364 case Con{+a, Con{+b, Nil{}}}:
365 [(a .|. U32.shln(b, 8n) : U32)]
366 case Con{+a, Con{+b, Con{+c, Nil{}}}}:
367 [((a .|. U32.shln(b, 8n) : U32) .|. U32.shln(c, 16n) : U32)]
368 case Con{+a, Con{+b, Con{+c, Con{+d, t}}}}:
369 (((a .|. U32.shln(b, 8n) : U32) .|. U32.shln(c, 16n) : U32) .|. U32.shln(d, 24n) : U32) <> quads(t)