API 参考
本节提供 github.com/cybergodev/json 库的完整 API 参考。
模块索引
| 模块 | 说明 |
|---|---|
| 包函数 | 包级函数参考,包括路径查询、类型获取、编解码等 |
| Processor | 处理器方法和配置 |
| Config | 配置选项详解 |
| 类型定义 | 核心类型定义(含 Encoder/Decoder) |
| 泛型操作 | 泛型 API 参考 |
| 接口定义 | 扩展接口定义 |
| 流式处理 | 流式处理器参考 |
| NDJSON 处理 | JSONL/NDJSON 处理器 |
| 迭代器 | 迭代遍历 API |
| 辅助函数 | 类型转换和工具函数 |
| 格式化输出 | 格式化和美化输出 |
| 安全验证 | 安全相关 API |
| 验证器 | Schema 验证器 |
| 钩子系统 | 操作拦截钩子 |
| 自定义编码器 | 自定义编码器 |
| 常量与错误 | 常量和错误类型 |
快速查找
按功能分类
路径查询
| 函数 | 说明 |
|---|---|
Get, GetString, GetInt, GetFloat, GetBool, GetArray, GetObject | 类型安全获取 |
GetTyped[T] | 泛型获取 |
SafeGet | 安全获取 AccessResult |
GetMultiple | 批量获取 |
修改操作
| 函数 | 说明 |
|---|---|
Set, SetMultiple | 设置值 |
SetCreate, SetMultipleCreate | 设置值并自动创建路径 |
Delete, DeleteClean | 删除值 |
ProcessBatch | 批量操作 |
编解码
| 函数 | 说明 |
|---|---|
Marshal, Unmarshal | 标准编解码 |
MarshalIndent | 格式化编码 |
Encode, EncodeWithConfig | 编码为字符串 |
NewEncoder, NewDecoder | 流式编解码 |
Parse | 解析 JSON |
格式化
| 函数 | 说明 |
|---|---|
Prettify | 格式化 JSON |
Compact | 压缩 JSON |
文件操作
| 函数 | 说明 |
|---|---|
LoadFromFile, SaveToFile | 文件读写 |
LoadFromReader | 从 Reader 读取 |
MarshalToFile, UnmarshalFromFile | 文件编解码 |
流式处理
| 类型/方法 | 说明 |
|---|---|
ForeachFile | 文件流式处理 |
NDJSONProcessor | NDJSON/JSONL 处理器 |
JSONLWriter | JSONL 写入器 |
验证
| 函数 | 说明 |
|---|---|
Valid | JSON 验证 |
ValidateSchema | Schema 验证(配合 Schema 类型使用) |
命名约定
库遵循以下命名约定:
| 模式 | 说明 | 示例 |
|---|---|---|
Get{Type} | 获取指定类型(支持 defaultValue) | GetString, GetInt |
GetTyped[T] | 泛型获取,返回 T | GetTyped[User] |
New{Type} | 创建实例 | New (返回 *Processor), NewEncoder |
Default{Type} | 默认配置 | DefaultConfig |
{Type}Config | 配置预设 | SecurityConfig, PrettyConfig |