13 #pragma managed( push, off ) 57 for (
int nIndex = (
m_nCount - 1 ); 0 <= nIndex; --nIndex ) {
76 else for (
int nIndex = 0, nCount =
m_nCount;; ++nIndex ) {
78 if ( nCount <= nIndex ) {
112 rcStream.SkipSpace();
123 if (
nullptr != pcType ) {
125 if ( !
Push( pcType ) ) {
134 rcStream.SkipSpace();
137 if ( rcStream.SkipChar( L
',' ) ) {
144 rcStream.SkipSpace();
202 if ( !rcStreamOut.Indent() ) {
207 else for (
int nIndex = 0, nCount =
m_nCount;; ++nIndex ) {
209 if ( !rcStreamOut.OutputNewLine() ) {
214 else if ( nCount == nIndex ) {
216 if ( !rcStreamOut.Unindent() ) {
221 else if ( !rcStreamOut.OutputIndent() ) {
236 else if ( !rcStreamOut.OutputIndent() ) {
243 if (
nullptr == pcType ) {
248 else if ( !pcType->
OutputJson( rcStreamOut ) ) {
253 else if ( ( nCount - 1 ) > nIndex ) {
255 if ( !rcStreamOut.OutputChar( L
',' ) ) {
271 CJson* result =
nullptr;
346 #pragma managed( pop ) virtual bool CompactJson() noexcept override
JSONクラスコンパクト化関数
virtual bool OutputJson(CStreamOut &rcStreamOut) noexcept
JSONクラス出力関数
virtual void ClearJson() noexcept override
JSONクラスクリア関数
CJsonContainer(CJson *pcParent) noexcept
コンストラクタ
virtual bool InputJson(CStream &rcStream) noexcept override
JSONクラス入力関数
virtual bool SetJsonElement(int nIndex, CJson *pcJson) noexcept
JSONエレメント設定関数
virtual bool Push(CJson * const &rElement) noexcept
プッシュ関数
virtual bool ExtendJsonElementCount(int nCount) noexcept
JSONエレメント数拡張関数
CArray< int > * m_pcInputPointerList
入力ストリームポインタリストポインタ
virtual bool CompactJson() noexcept
JSONクラスコンパクト化関数
virtual ~CJsonContainer() noexcept
デストラクタ
#define LIB_JSON_API
ダイナミックライブラリインポート宣言
virtual CJson * CreateInputJsonElement(CStream &rcStream, CJson *pcParent) noexcept=0
JSONエレメント入力作成関数
virtual wchar_t GetCloseChar() noexcept=0
クローズ文字取得関数
CJson * * m_pBuffer
バッファポインタ
virtual bool CompactBuffer() noexcept
バッファサイズコンパクト化関数
virtual CJson * GetJsonElement(int nIndex) noexcept
JSONエレメント取得関数
virtual bool OutputJson(CStreamOut &rcStreamOut) noexcept override
JSONクラス出力関数
virtual wchar_t GetOpenChar() noexcept=0
オープン文字取得関数
virtual void ClearJson() noexcept
JSONクラスクリア関数
virtual bool UpdateBuffer(int nCount) noexcept
バッファサイズ更新関数