NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
json_parser类 参考

json配置解析器 更多...

#include <json_parser.hpp>

Public 成员函数

 json_parser (string text) noexcept
 构造函数
unique_ptr< json_valueparse ()
 执行解析
optional< unique_ptr< json_value > > try_parse ()
 尝试执行解析

详细描述

json配置解析器

采用递归下降解析算法。 解析过程会维护行号和列号信息,便于错误定位。

解析符合ECMA-404 json标准的格式,支持以下特性:

  • 对象(Object):键值对集合
  • 数组(Array):有序值列表
  • 字符串(String):双引号包裹的Unicode字符序列
  • 数字(Number):整数和浮点数
  • 布尔值(Boolean):true/false
  • null值

在文件 json_parser.hpp41 行定义.

构造及析构函数说明

◆ json_parser()

json_parser::json_parser ( string text)
inlineexplicitnoexcept

构造函数

参数
text待解析的json字符串

初始化解析器,准备开始解析。

在文件 json_parser.hpp142 行定义.

成员函数说明

◆ parse()

unique_ptr< json_value > json_parser::parse ( )

执行解析

返回
解析完成的json值根节点
异常
json_exception当解析过程中遇到语法错误时抛出

解析整个json文本,构建完整的json值树。 解析完成后会检查是否还有未处理的字符。

◆ try_parse()

optional< unique_ptr< json_value > > json_parser::try_parse ( )

尝试执行解析

返回
解析结果的可选对象

如果解析成功返回包含json值的optional, 如果解析失败返回空的optional。


该类的文档由以下文件生成: