Solution46
|
JSONドキュメントクラス [詳解]
#include "CJsonDocument.h"
公開メンバ関数 | |
CJsonDocument (CJson *pcJson=nullptr) noexcept | |
コンストラクタ [詳解] | |
virtual | ~CJsonDocument () noexcept |
デストラクタ [詳解] | |
virtual bool | IsEmpty () noexcept |
空状態取得関数 [詳解] | |
virtual CJson * | GetRootJson () noexcept |
ルートJSONクラス取得関数 [詳解] | |
virtual bool | SetRootJson (CJson *pcJson) noexcept |
ルートJSONクラス設定関数 [詳解] | |
virtual CJson * | GetCurrentJson () noexcept |
カレントJSONクラス取得関数 [詳解] | |
virtual bool | SetCurrentJson (CJson *pcJson) noexcept |
カレントJSONクラス設定関数 [詳解] | |
virtual void | ClearDocument () noexcept |
クリア関数 [詳解] | |
virtual bool | CompactDocument () noexcept |
コンパクト化関数 [詳解] | |
virtual bool | InputDocument (CStream &rcStream) noexcept |
JSONドキュメント入力関数 [詳解] | |
virtual bool | OutputDocument (CStreamOut &rcStreamOut) noexcept |
JSONドキュメント出力関数 [詳解] | |
virtual bool | DeleteCurrentJson () noexcept |
カレントJSONクラス削除関数 [詳解] | |
virtual bool | GetCurrentPath (CString &rcPath) noexcept |
カレントパス取得関数 [詳解] | |
virtual bool | SetCurrentPath (wchar_t const *pszPath) noexcept |
カレントパス設定関数 [詳解] | |
virtual bool | GetCurrentSetValue (CString &rcValue, bool bClassName=false, bool bQuotes=true) noexcept |
カレント設定値文字列取得関数 [詳解] | |
virtual bool | SetCurrentSetValue (wchar_t const *pszValue) noexcept |
カレント設定値文字列設定関数 [詳解] | |
virtual bool | CreatePath (wchar_t const *pszPath) noexcept |
JSONパス作成関数 [詳解] | |
静的公開メンバ関数 | |
static bool | GetJsonPath (CString &rcPath, CJson *pcJson) noexcept |
JSONパス取得関数 [詳解] | |
static CJson * | FindJsonPath (wchar_t const *pszPath, CJson *pcJson) noexcept |
JSONパス検索関数 [詳解] | |
static bool | GetJsonSetValue (CString &rcValue, CJson *pcJson, bool bClassName=false, bool bQuotes=true) noexcept |
JSON設定値文字列取得関数 [詳解] | |
static bool | SetJsonSetValue (wchar_t const *pszValue, CJson *&rpcJson) noexcept |
JSON設定値設定関数 [詳解] | |
static bool | SetJsonSetValueByStream (CStream &rcStream, CJson *&rpcJson) noexcept |
JSON設定値ストリーム設定関数 [詳解] | |
static bool | DeleteJson (CJson *&rpcJson) noexcept |
JSONクラス削除関数 [詳解] | |
static bool | CreateJsonPath (wchar_t const *pszPath, CJson *&rpcJson) noexcept |
JSONパス作成関数 [詳解] | |
static bool | GetJsonPathList (CString &rcPathList, CJson *pcJson) noexcept |
JSONパスリスト取得関数 [詳解] | |
静的限定公開メンバ関数 | |
static EJsonPathToken | InputPathToken (CStream &rcStream, CString &rcString, bool bEqual=false) noexcept |
JSONパストークン入力関数 [詳解] | |
static bool | DeleteQuotes (CString &rcString) noexcept |
JSON文字列二重引用符削除関数 [詳解] | |
限定公開変数類 | |
CJson * | m_pcJsonRoot |
ルートJSONクラスポインタ [詳解] | |
CJson * | m_pcJsonCurrent |
カレントJSONクラスポインタ [詳解] | |
非公開メンバ関数 | |
CJsonDocument (CJsonDocument const &)=delete | |
CJsonDocument & | operator= (CJsonDocument const &)=delete |
|
strongprotected |
JSONパストークン種別列挙体
JSONパストークン種別列挙体です。
列挙値 | |
---|---|
Invalid |
無効値 |
Separator |
セパレータ |
Dot |
ドット |
DotDot |
二重ドット |
Name |
名前 |
Index |
インデックス |
Equal |
等号 |
Size |
列挙体サイズ |
CJsonDocument.h の 379 行目に定義があります。
|
explicitnoexcept |
コンストラクタ
コンストラクタです。
[in] | pcJson | JSONクラスポインタ |
CJsonDocument.cpp の 43 行目に定義があります。
|
virtualnoexcept |
デストラクタ
デストラクタです。
なし |
CJsonDocument.cpp の 51 行目に定義があります。
参照先 ClearDocument().
|
privatedelete |
|
inlinevirtualnoexcept |
空状態取得関数
空状態取得関数です。
なし |
CJsonDocument.h の 72 行目に定義があります。
|
inlinevirtualnoexcept |
ルートJSONクラス取得関数
ルートJSONクラス取得関数です。
なし |
CJsonDocument.h の 86 行目に定義があります。
|
virtualnoexcept |
ルートJSONクラス設定関数
ルートJSONクラス設定関数です。
[in] | pcJson | JSONクラスポインタ |
CJsonDocument.cpp の 60 行目に定義があります。
参照先 ClearDocument(), m_pcJsonCurrent, m_pcJsonRoot.
参照元 SetCurrentJson().
|
inlinevirtualnoexcept |
カレントJSONクラス取得関数
カレントJSONクラス取得関数です。
なし |
CJsonDocument.h の 110 行目に定義があります。
|
virtualnoexcept |
カレントJSONクラス設定関数
カレントJSONクラス設定関数です。
[in] | pcJson | JSONクラスポインタ |
CJsonDocument.cpp の 91 行目に定義があります。
参照先 LibJson::CJson::GetJsonRoot(), m_pcJsonCurrent, m_pcJsonRoot, SetRootJson().
|
virtualnoexcept |
クリア関数
クリア関数です。
なし |
CJsonDocument.cpp の 131 行目に定義があります。
参照先 m_pcJsonCurrent, m_pcJsonRoot.
参照元 CreatePath(), DeleteCurrentJson(), InputDocument(), SetCurrentSetValue(), SetRootJson(), ~CJsonDocument().
|
virtualnoexcept |
コンパクト化関数
コンパクト化関数です。
なし |
CJsonDocument.cpp の 140 行目に定義があります。
参照先 LibJson::CJson::CompactJson(), m_pcJsonRoot.
|
virtualnoexcept |
JSONドキュメント入力関数
JSONドキュメント入力関数です。
[in] | rcStream | 入力ストリーム参照 |
CJsonDocument.cpp の 163 行目に定義があります。
参照先 ClearDocument(), LibJson::CJsonValue::CreateInputJson(), LibJson::CJsonPair::CreateInputJson(), m_pcJsonCurrent, m_pcJsonRoot.
参照元 LibJson::CJsonConfig::Load().
|
virtualnoexcept |
JSONドキュメント出力関数
JSONドキュメント出力関数です。
[in] | rcStreamOut | 出力ストリーム参照 |
CJsonDocument.cpp の 206 行目に定義があります。
参照先 m_pcJsonRoot, LibJson::CJson::OutputJson().
参照元 LibJson::CJsonConfig::Save().
|
virtualnoexcept |
カレントJSONクラス削除関数
カレントJSONクラス削除関数です。
なし |
CJsonDocument.cpp の 234 行目に定義があります。
参照先 ClearDocument(), DeleteJson(), m_pcJsonCurrent, m_pcJsonRoot.
参照元 LibJson::CJsonConfigAuto::~CJsonConfigAuto().
|
virtualnoexcept |
カレントパス取得関数
カレントパス取得関数です。
[out] | rcPath | 文字列クラス参照 |
CJsonDocument.cpp の 259 行目に定義があります。
参照先 GetJsonPath(), m_pcJsonCurrent.
参照元 CreatePath().
|
virtualnoexcept |
カレントパス設定関数
カレントパス設定関数です。
[in] | pszPath | JSONパス文字列 |
CJsonDocument.cpp の 273 行目に定義があります。
参照先 FindJsonPath(), m_pcJsonCurrent.
参照元 LibJson::CJsonConfigAuto::~CJsonConfigAuto().
|
virtualnoexcept |
カレント設定値文字列取得関数
カレント設定値文字列取得関数です。
[out] | rcValue | 設定値文字列参照 |
[in] | bClassName | クラス名取得フラグ |
[in] | bQuotes | JSON文字列二重引用符なしフラグ |
CJsonDocument.cpp の 297 行目に定義があります。
参照先 GetJsonSetValue(), m_pcJsonCurrent.
参照元 LibJson::CJsonConfigAuto::~CJsonConfigAuto().
|
virtualnoexcept |
カレント設定値文字列設定関数
カレント設定値文字列設定関数です。
[in] | pszValue | 設定値文字列 |
CJsonDocument.cpp の 311 行目に定義があります。
参照先 ClearDocument(), m_pcJsonCurrent, m_pcJsonRoot, SetJsonSetValue().
|
virtualnoexcept |
JSONパス作成関数
JSONパス作成関数です。
[in] | pszPath | JSONパス文字列 |
CJsonDocument.cpp の 343 行目に定義があります。
参照先 ClearDocument(), CreateJsonPath(), FindJsonPath(), GetCurrentPath(), LibJson::CJson::GetJsonRoot(), m_pcJsonCurrent, m_pcJsonRoot.
参照元 LibJson::CJsonConfig::Set().
JSONパス取得関数
JSONパス取得関数です。
[out] | rcPath | JSONパス文字列参照 |
[in] | pcJson | JSONクラスポインタ |
CJsonDocument.cpp の 390 行目に定義があります。
参照先 LibCommon::CArray< Type >::GetCount(), LibJson::CJson::GetJsonArray(), LibJson::CJson::GetJsonParent(), LibJson::CJson::GetJsonString(), LibJson::CJson::IsJsonArray(), LibJson::CJson::IsJsonPair().
参照元 GetCurrentPath(), GetJsonPathList().
|
staticnoexcept |
JSONパス検索関数
JSONパス検索関数です。
[in] | pszPath | JSONパス文字列 |
[in] | pcJson | JSONクラスポインタ |
CJsonDocument.cpp の 519 行目に定義があります。
参照先 Dot, DotDot, LibJson::CJsonArray::GetJsonArray(), LibJson::CJsonContainer::GetJsonElement(), LibJson::CJsonObject::GetJsonObject(), LibJson::CJsonPair::GetJsonPair(), LibJson::CJsonObject::GetJsonPair(), LibJson::CJsonPair::GetJsonValue(), Index, InputPathToken(), Invalid, LibCommon::CStream::IsStreamEnd(), Name, Separator.
参照元 CreatePath(), LibJson::CJsonConfig::Delete(), LibJson::CJsonConfig::Get(), SetCurrentPath().
|
staticnoexcept |
JSON設定値文字列取得関数
JSON設定値文字列取得関数です。
[out] | rcValue | JSON設定値文字列参照 |
[in] | pcJson | JSONクラスポインタ |
[in] | bClassName | JSONクラス名取得フラグ |
[in] | bQuotes | JSON文字列二重引用符なしフラグ |
CJsonDocument.cpp の 631 行目に定義があります。
参照先 LibCommon::CArray< Type >::GetCount(), LibJson::CJsonContainer::GetJsonContainer(), LibJson::CJsonToken::GetJsonToken(), LibJson::CJson::JsonArray, LibJson::CJson::JsonFixed, LibJson::CJson::JsonNumber, LibJson::CJson::JsonObject, LibJson::CJson::JsonPair, LibJson::CJson::JsonString.
参照元 LibJson::CJsonConfig::Get(), GetCurrentSetValue(), GetJsonPathList().
|
staticnoexcept |
JSON設定値設定関数
JSON設定値設定関数です。
[in] | pszValue | JSON設定値文字列 |
[in,out] | rpcJson | JSONクラスポインタ参照 |
CJsonDocument.cpp の 771 行目に定義があります。
参照先 SetJsonSetValueByStream().
参照元 SetCurrentSetValue().
|
staticnoexcept |
JSON設定値ストリーム設定関数
JSON設定値ストリーム設定関数です。
[in] | rcStream | JSON設定値ストリーム参照 |
[in,out] | rpcJson | JSONクラスポインタ参照 |
CJsonDocument.cpp の 779 行目に定義があります。
参照先 LibJson::CJsonValue::CreateInputJson(), LibJson::CJsonPair::CreateInputJson(), LibCommon::CArray< Type >::Find(), LibJson::CJson::GetJsonContainer(), LibJson::CJsonContainer::GetJsonElement(), LibJson::CJson::GetJsonPair(), LibJson::CJson::GetJsonParent(), LibJson::CJson::GetJsonValue(), LibJson::CJson::IsJsonArray(), LibJson::CJson::IsJsonContainer(), LibJson::CJson::IsJsonObject(), LibJson::CJson::IsJsonPair(), LibJson::CJsonContainer::SetJsonElement(), LibJson::CJsonPair::SetJsonValue().
参照元 CreateJsonPath(), SetJsonSetValue().
|
staticnoexcept |
JSONクラス削除関数
JSONクラス削除関数です。
[in,out] | rpcJson | JSONクラスポインタ参照 |
CJsonDocument.cpp の 925 行目に定義があります。
参照先 LibCommon::CArray< Type >::Find(), LibCommon::CArray< Type >::GetCount(), LibJson::CJson::GetJsonContainer(), LibJson::CJson::GetJsonParent(), LibJson::CJson::IsJsonContainer(), LibJson::CJson::IsJsonPair(), LibCommon::CArray< Type >::Remove().
参照元 LibJson::CJsonConfig::Delete(), DeleteCurrentJson().
|
staticnoexcept |
JSONパス作成関数
JSONパス作成関数です。
[in] | pszPath | JSONパス文字列 |
[in,out] | rpcJson | JSONクラスポインタ参照 |
CJsonDocument.cpp の 1013 行目に定義があります。
参照先 Dot, DotDot, Equal, LibJson::CJsonContainer::ExtendJsonElementCount(), LibCommon::CArray< Type >::Find(), LibCommon::CArray< Type >::GetCount(), LibJson::CJsonArray::GetJsonArray(), LibJson::CJson::GetJsonArray(), LibJson::CJsonObject::GetJsonObject(), LibJson::CJson::GetJsonObject(), LibJson::CJsonPair::GetJsonPair(), LibJson::CJsonObject::GetJsonPair(), LibJson::CJson::GetJsonPair(), LibJson::CJson::GetJsonParent(), LibJson::CJsonPair::GetJsonValue(), Index, InputPathToken(), Invalid, LibJson::CJson::IsJsonArray(), LibJson::CJson::IsJsonObject(), LibJson::CJson::IsJsonPair(), LibCommon::CStream::IsStreamEnd(), Name, LibCommon::CArray< Type >::Push(), Separator, LibJson::CJson::SetJsonParent(), SetJsonSetValueByStream(), LibJson::CJsonPair::SetJsonValue() (計28項目).
参照元 CreatePath().
|
staticnoexcept |
JSONパスリスト取得関数
JSONパスリスト取得関数です。
[out] | rcPathList | 文字列クラス参照 |
[in] | pcJson | JSONクラスポインタ |
CJsonDocument.cpp の 1352 行目に定義があります。
参照先 LibCommon::CString::GetBuffer(), LibCommon::CArray< Type >::GetCount(), LibJson::CJsonContainer::GetJsonContainer(), GetJsonPath(), GetJsonSetValue().
|
staticprotectednoexcept |
JSONパストークン入力関数
JSONパストークン入力関数です。
[in] | rcStream | 入力ストリーム参照 |
[out] | rcToken | 文字列クラス参照 |
[in] | bEqual | 等号許可フラグ |
CJsonDocument.cpp の 1470 行目に定義があります。
参照先 Dot, DotDot, Equal, Index, LibJson::CJsonToken::InputJsonChars(), LibJson::CJsonToken::InputJsonInt(), Invalid, Name, Separator.
参照元 CreateJsonPath(), FindJsonPath().
|
staticprotectednoexcept |
JSON文字列二重引用符削除関数
JSON文字列二重引用符削除関数です。
[out] | rcString | 文字列参照 |
CJsonDocument.cpp の 1602 行目に定義があります。
|
privatedelete |
|
protected |
ルートJSONクラスポインタ
CJsonDocument.h の 422 行目に定義があります。
参照元 ClearDocument(), CompactDocument(), CreatePath(), DeleteCurrentJson(), InputDocument(), OutputDocument(), SetCurrentJson(), SetCurrentSetValue(), SetRootJson().
|
protected |