Files
ww/test/wcc/data/r778_stream_read_unread/case.ww

30 lines
969 B
Plaintext

//ww:run-exit 47
// Migrated from 778_bufio_vstream_run row stream_read_unread.
package main;
import bufio;
import memio;
import io;
export fn main() i32 = {
let raw: [8]u8;
raw[0] = 65u8; raw[1] = 66u8; raw[2] = 67u8; raw[3] = 68u8;
raw[4] = 69u8; raw[5] = 70u8; raw[6] = 71u8; raw[7] = 72u8;
let mst: memio.stream = memio.fixed(raw[0:8]);
let msrc: io.stream = &mst.vt;
let rbuf: [8]u8;
let wbuf: [4]u8;
let b: bufio.stream = bufio.init(msrc, rbuf[0:8], wbuf[0:4]);
let vs: io.stream = &b.vt;
let out: [4]u8;
let rd1 = io.read(vs, out[0:3]);
let n1: size = 0;
if (rd1 is size) { n1 = rd1 as size; };
if (n1 != 3: size) { return 91; };
if (out[0] != 65u8 || out[2] != 67u8) { return 92; };
let rd2 = io.read(vs, out[0:4]);
let n2: size = 0;
if (rd2 is size) { n2 = rd2 as size; };
if (n2 != 4: size) { return 93; };
if (out[0] != 68u8 || out[3] != 71u8) { return 94; };
return 47;
};