ref: 5e0c7cc7675adf25f01f33f0fd4b6243ae37f527
dir: /lib/std/writeall.myr/
use "errno"
use "result"
use "option"
use "syswrap"
use "types"
pkg std =
const writeall : (fd : fd, src : byte[:] -> (size, option(errno)))
;;
const writeall = {fd, src
var sz
sz = src.len
while src.len != 0
match std.write(fd, src)
| `Ok n: src = src[n:]
| `Err e: -> (sz - src.len, `Some e)
;;
;;
-> (sz, `None)
}