Solution46
CJsonArray.cpp
[詳解]
1 //=============================================================================
2 /// @file
3 /// JSON配列クラス実装ファイル
4 ///
5 /// JSON配列クラス実装ファイルです。
6 ///
7 /// $Id: CJsonArray.cpp 245 2019-03-20 15:03:41Z admin $
8 /// $Date: 2019-03-21 00:03:41 +0900 (2019/03/21 (木)) $
9 /// $Author: admin $
10 ///
11 /// @attention なし
12 
13 #pragma managed( push, off )
14 
15 //=============================================================================
16 // インクルードファイル
17 #include <CJsonArray.h>
18 
19 //=============================================================================
20 // インクルード実装ファイル
21 #include <CArray.hpp>
22 
23 //=============================================================================
24 // JSONライブラリ名前空間
25 namespace LibJson {
26  //=========================================================================
27  // JSON配列クラス
28  //=========================================================================
29  // 構築子と解体子
30  //-------------------------------------------------------------------------
31  // コンストラクタ
32  CJsonArray::CJsonArray( CJson* pcParent ) noexcept
33  // 基底クラスコンストラクタ
34  : CJsonContainer( pcParent )
35  {}
36 
37  //=========================================================================
38  // 静的公開関数
39  //-------------------------------------------------------------------------
40  // JSON配列入力作成関数
41  CJsonArray* CJsonArray::CreateInputJson( CStream& rcStream, CJson* pcParent ) noexcept {
42  // 処理ブロック
43  CJsonArray* result = nullptr;
44  do {
45  // JSON配列を作成する
46  CJsonArray* pcJsonArray = new CJsonArray( pcParent );
47  if ( nullptr == pcJsonArray ) {
48  // 失敗!
49  break;
50  }
51  // JSON配列を入力する
52  else if ( !pcJsonArray->InputJson( rcStream ) ) {
53  // JSON配列を削除する
54  delete pcJsonArray;
55 
56  // 失敗!
57  break;
58  }
59 
60  // 成功!
61  result = pcJsonArray;
62  } while ( false );
63 
64  // 実行結果を返す
65  return result;
66  }
67 }
68 
69 #pragma managed( pop )
static CJsonArray * CreateInputJson(CStream &rcStream, CJson *pcParent) noexcept
JSON配列入力作成関数
Definition: CJsonArray.cpp:41
JSON配列クラスヘッダファイル
JSONライブラリ名前空間
Definition: CJson.h:24
配列クラス実装ヘッダファイル
JSON配列クラス
Definition: CJsonArray.h:31
virtual bool InputJson(CStream &rcStream) noexcept override
JSONクラス入力関数
CJsonArray(CJson *pcParent) noexcept
コンストラクタ
Definition: CJsonArray.cpp:32
JSONコンテナクラス
ストリームクラス
Definition: CStream.h:31
JSONクラス
Definition: CJson.h:44