Skip to content

Latest commit

 

History

History
60 lines (51 loc) · 1.91 KB

document.md

File metadata and controls

60 lines (51 loc) · 1.91 KB

Symbol Library 文档

SRON 库

  • 基础版本: Alpha v0.1
  • 拓展版本: Syml

Python 3

class SRON ()

SRON 解析类。

参数:
  • 无
返回:
  • SRON 对象

sron.parse (i)

解析 i 输入的 SRON 文本,返回解析后的对象。

参数:
  • i: str | bytes | bytearray | ReadBuffer 解析输入
返回:
  • dict[str, tuple[str, object]] 解析后的对象,每个值为 (类型名, 值) 元组,嵌套命名空间以 ("dict", dict) 表示

sron.construct (data)

将解析结果序列化为 SRON 文本。

参数:
  • data: dict[str, tuple[str, object]] parse 返回的对象
返回:
  • str SRON 文本

sron.__call__ (i)

便捷入口:输入文本时等价于 parse,输入 dict 时等价于 construct。

sron.push_parser (typeof, func, tabled) / sron.pop_parser (typeof)

注册 / 移除自定义类型的解析函数,用于扩展类型支持。

参数:
  • typeof: str 类型名称
  • func: Callable 解析函数,签名为 (in_stream) 或 (in_stream, _parser)
  • tabled: bool 为 True 时向 func 传入解析函数表
返回:
  • 无

sron.push_constructor (typeof, func, tabled) / sron.pop_constructor (typeof)

注册 / 移除自定义类型的序列化函数,参数含义与 push_parser / pop_parser 相同。

class SRONError (Exception)

SRON 解析异常。

属性:
  • type: str 错误类别(如 ParseError、TypeError、PathError、EOF)
  • message: str 错误信息

输入缓冲

class ReadBuffer

抽象读取缓冲接口,定义 read、peek、seek、tell、eof 等方法。

class UnicodeReadBuffer (ReadBuffer)

基于 Unicode 码点的内存读取缓冲。

参数:
  • data: str | bytes | bytearray | array 输入数据(bytes/bytearray 按 UTF-8 解码)