def b64.enc.go
cswap-bend-cli@0.1.0.0 · b64.bend:90
import cswap-bend-cli@0.1.0.0/b64.bend as B64
import Base
90def b64.enc.go(bs: List<&2, U32>) -> String:
91 match bs:
92 case Nil{}:
93 SNil{}
94 case Con{+a, Nil{}}:
95 SCon{b64.char((a >> 2n : U32)), SCon{b64.char(((a .&. 3) << 4n : U32)), "=="}}
96 case Con{+a, Con{+b, Nil{}}}:
97 SCon{b64.char((a >> 2n : U32)), SCon{b64.char((((a .&. 3) << 4n) .|. (b >> 4n) : U32)),
98 SCon{b64.char(((b .&. 15) << 2n : U32)), "="}}}
99 case Con{+a, Con{+b, Con{+c, t}}}:
100 SCon{b64.char((a >> 2n : U32)), SCon{b64.char((((a .&. 3) << 4n) .|. (b >> 4n) : U32)),
101 SCon{b64.char((((b .&. 15) << 2n) .|. (c >> 6n) : U32)), SCon{b64.char((c .&. 63 : U32)),
102 b64.enc.go(t)}}}}