跳到正文
豫言包管理
← 全部包

豫言操作系统文件 0.1.0

豫言 · 库

按已授目录权访问文件的接口规范。

文件接口规范 0.1.0

本包只声明接口,文件句柄与目录权的构造属于宿主实现。应用依赖本包是必需条件;宿主仍须在本次运行中单独授予具名目录。

  • 取得已授目录 根据本次运行的授权表取目录权。名称未授权时返回 未获授权;接口包在宿主上不存在时于构建或装载阶段失败。
  • 路径使用 / 分隔的相对字符串;为空、以 / 起始、含空段、.、.. 或零字节者为 输入无效。合法路径的组成段按 Unicode 码点原样比较,不隐式改大小写或正规化。宿主须把解析限制在目录权内,不因符号链接、重新命名或文件系统大小写规则逃出授权边界;不能保持此约定的宿主不得宣称实现本包。
  • 打开只读文件 取得只能读的文件柄。打开可写文件 打开已存在的可写文件,不隐式创建或截断。其他打开模式以后另加接口函数。
  • 读取文件 的上限须非负。正上限时,返回长度 1 至上限的字节串,或独立的 文件读尽;上限为零返回空字节串。读取可能挂起,应用不得假定立即返回。
  • 写入文件 返回本次实际接受的字节数;输入为空时返回零,输入非空且成功时须返回一至输入长度之间的值。暂时不能接受任何字节时返回 资源暂不可用,不能以“成功写入零字节”使调用者无限重试。部分写入由调用者继续提交。写入可能挂起,返回不保证数据已落盘。
  • 关闭文件 无论成功或失败都使句柄失效;失败可表示写入或关闭时的宿主错误,调用者不能再用旧句柄重试。其后读写返回 资源已失效。首版要求调用者串行使用同一句柄;并发读写及重复关闭均须返回 输入无效 或 资源已失效,不得产生未定义行为。

规范样例须覆盖:未授权目录、路径越界、读到末尾、嵌零字节、部分写入、关闭后使用,以及读取和写入的权限分离。

依赖

查看包配置

上传历史

当前上传修订:1 ·

  1. 上传修订 1
    下载 ZIP

包层级

父包:豫言操作系统接口

没有子包。