nlib
nn::nlib::msgpack::JsonStreamParserSettings 構造体

JsonStreamParserの設定パラメータ群を格納する構造体です。 [詳解]

#include "nn/nlib/msgpack/JsonStreamParser.h"

公開メンバ関数

constexpr JsonStreamParserSettings () noexcept
 デフォルトコンストラクタです。各データメンバにデフォルト値を設定します。
 

公開変数類

size_t max_array_size
 配列の最大サイズを指定します。デフォルトは8192で16が最小の値です。
 
size_t max_map_size
 連想配列の最大サイズを指定します。デフォルトは256で16が最小の値です。
 
size_t token_buffer_size
 トークンを格納するバッファのサイズを指定します。デフォルトは2048で512が最小の値です。 [詳解]
 
size_t max_depth
 配列や連想配列の深さの最大値を指定します。デフォルトは7です。
 
Format format
 パースする際のフォーマット判定をどのように行うかを決定します。デフォルトはFORMAT_ADAPTIVEです。 [詳解]
 
bool strict
 0以外を設定した場合、より厳密にエラーチェックを行います。デフォルトは0です。 [詳解]
 

詳解

JsonStreamParserの設定パラメータ群を格納する構造体です。

JsonStreamParser.h20 行目に定義があります。

メンバ詳解

§ format

nn::nlib::msgpack::JsonStreamParserSettings::format

パースする際のフォーマット判定をどのように行うかを決定します。デフォルトはFORMAT_ADAPTIVEです。

説明
説明
FORMAT_ADAPTIVE 最初に読み込んだ文字を元にパースを行います。
FORMAT_JSON JSONであるとしてパースを行います。
FORMAT_MSGPACK msgpackであるとしてパースを行います。

JsonStreamParser.h30 行目に定義があります。

§ strict

nn::nlib::msgpack::JsonStreamParserSettings::strict

0以外を設定した場合、より厳密にエラーチェックを行います。デフォルトは0です。

説明
0以外を設定した場合、
  • JSONをパースしている場合は、根要素が配列か連想配列でない場合エラーとなります。
  • msgpackをパースしている場合は、str format familyのデータがUTF-8でない場合エラーとなります。

JsonStreamParser.h31 行目に定義があります。

§ token_buffer_size

nn::nlib::msgpack::JsonStreamParserSettings::token_buffer_size

トークンを格納するバッファのサイズを指定します。デフォルトは2048で512が最小の値です。

説明
バッファを超える大きさのトークンを取得した場合、切り捨てられたことが報告される(文字列)かエラー(数値や連想配列のキー)となります。 バッファはパーサーの初期化時に確保され、伸張することはありません。

JsonStreamParser.h28 行目に定義があります。


この構造体詳解は次のファイルから抽出されました: