模块

std.io

基于调用者拥有存储的缓冲读写辅助。

状态

当前可运行:

API返回值说明
std.io.bufferedReader(buffer)BufferedReader基于调用者拥有的固定存储构建读取器。
std.io.bufferedWriter(buffer)BufferedWriter基于调用者拥有的固定存储构建写入器。
std.io.readerCapacity(&reader)usize报告读取器存储容量。
std.io.writerCapacity(&writer)usize报告写入器存储容量。
std.io.copy(dst, src)usize将字节复制到调用者拥有的可变存储中。

元数据标签:

  • 副作用:memory
  • 分配行为:使用调用者缓冲区;无隐藏堆分配
  • 目标支持:与目标无关
  • 错误行为:容量辅助函数不会失败;copy 返回复制的字节数
  • 所有权说明:借用或写入调用者拥有的存储
  • 示例:examples/std-path-io.0

示例

pub fn main Void world World !  mut copy_dst [4]u8 [0, 0, 0, 0]  mut reader_buf [8]u8 [0, 0, 0, 0, 0, 0, 0, 0]  let reader std.io.bufferedReader reader_buf  let copied std.io.copy copy_dst (std.mem.span "abcd")  if && (== (std.io.readerCapacity (&reader)) 8) (== copied 4)    check world.out.write "io ok\n"

设计说明

std.io 是调用者拥有的缓冲区接口,而非进程级 I/O 层。

进程 stdin/stdout 保留在显式能力(如 WorldIo)之后。