def Image.free

Base · base.bend:3119

import Base
3119# Forks k levels, then a dead parameter sinks the rest in one loop.
3120def Image.free(+k: Nat, img: Image) -> Unit:
3121  match k:
3122    case 0n:
3123      Image.sink(img)
3124    case 1n+e:
3125      match img:
3126        case Pix{c}:
3127          Unit{}
3128        case Qua{tl, tr, bl, br}:
3129          a b c d = Image.free(e, tl) Image.free(e, tr) Image.free(e, bl)
3130            Image.free(e, br)
3131          Image.drop.join(a, b, c, d)

Uses (5)

Used by (1)