Module sys/bufio/buf_reader
sys/bufio/buf_reader
Buffered reader for file descriptors.
Wraps a file descriptor with an internal buffer for efficient reads. Reduces the number of system calls by reading data in larger chunks.
Example
{ BufReader } :: import "std/sys/bufio/buf_reader";
IO_file :: import "std/sys/file";
reader := BufReader.new(fd);
line := io.await(reader.read_line(using(io)));
match(line,
.Ok(.Some(s)) => println(s),
.Ok(.None) => println("EOF"),
.Err(e) => println(e.to_string())
);
Types
BufReader
object
BufReader
Fields
| Name | Type | Description |
|---|---|---|
_fd | i32 | |
_buf | ArrayList(u8) | |
_pos | usize | |
_filled | usize | |
_offset | u64 | |
_capacity | usize |
impl(BufReader, ...)
new : (BufReader) fn(fd : i32) -> BufReaderwith_capacity : (BufReader) fn(fd : i32, capacity : usize) -> BufReaderfd : (BufReader) fn(self : BufReader) -> i32buffered : (BufReader) fn(self : BufReader) -> usizeread_line : (BufReader) fn(self : BufReader, using(io : IO)) -> Impl(Future(Result(Option(String), IOError), IO))read : (BufReader) fn(self : BufReader, buf : *(u8), size : u32, using(io : IO)) -> Impl(Future(Result(i32, IOError), IO))read_bytes : (BufReader) fn(self : BufReader, using(io : IO)) -> Impl(Future(Result(ArrayList(u8), IOError), IO))