55 个不稳定版本

0.27.2 2024年3月29日
0.27.0 2024年1月11日
0.26.0 2023年6月30日
0.25.5 2023年3月29日
0.0.0 2020年10月27日

64文件系统 中排名

Download history 30902/week @ 2024-04-14 38984/week @ 2024-04-21 33081/week @ 2024-04-28 38797/week @ 2024-05-05 43970/week @ 2024-05-12 40524/week @ 2024-05-19 39302/week @ 2024-05-26 35278/week @ 2024-06-02 39928/week @ 2024-06-09 44235/week @ 2024-06-16 42482/week @ 2024-06-23 35035/week @ 2024-06-30 42249/week @ 2024-07-07 38522/week @ 2024-07-14 45558/week @ 2024-07-21 41965/week @ 2024-07-28

171,178 每月下载量
用于 81 个 Crates (8 直接)

Apache-2.0…

99KB
2K SLoC

system-interface

Rust 标准库扩展

一个 Bytecode Alliance 项目

Github Actions CI Status zulip chat crates.io page docs.rs docs

system-interface 向 Rust 标准库添加扩展,同时保持与 std 的风格,同时提供额外的功能

  • fs::FileIoExt - 为文件操作提供额外支持,包括std::io::Readstd::io::Writestd::io::Seekstd::os::unix::fs::FileExt的所有功能,同时支持POSIX和Windows,并增加了额外的功能,包括带有_vectored_at_exact/_all所有组合的readwrite。如果您曾经想要像read_exact_vectored_atwrite_all_vectored_at或其他组合,或者甚至是read_to_end_atread_to_string_at这样的功能,它们都在这里,并且它们在Windows上也能工作!
  • io::IsTerminal - 检查给定的I/O句柄是否指向一个终端(即tty)。
  • io::ReadReady - 查询I/O句柄中立即可读的字节数。
  • io::Peek - 从I/O句柄中读取数据而不消耗数据。

此包中的所有功能都可在流行的POSIX兼容平台和Windows上使用。

许多system-interface的功能对应于WASI中的功能,并设计为与cap-std一起使用,但它并不特定于WASI,也可以与常规的std一起使用。为了分离关注点,所有沙盒和面向能力的API都留给cap-std,因此此包的功能可以独立使用。

由于async-std和socket2包需要包含所需的I/O安全性特质实现,因此对它们的支持暂时禁用。

依赖项

~2–12MB
~141K SLoC