3 #ifndef INCLUDE_NN_NLIB_MSGPACK_JSONWRITER_H_
4 #define INCLUDE_NN_NLIB_MSGPACK_JSONWRITER_H_
8 #if defined(_MSC_VER) && defined(nx_msgpack_EXPORTS)
10 #define NLIB_VIS_PUBLIC NLIB_WINEXPORT
21 OPTION_DEFAULT = 0x00000000,
22 OPTION_RELAXED = 0x00000001
29 errno_t GetErrorValue() const NLIB_NOEXCEPT {
return m_ErrorValue; }
39 return Write(&str[0], n, obj, option);
45 void SetError(
errno_t e) NLIB_NOEXCEPT {
46 if (m_ErrorValue == 0) m_ErrorValue = e;
59 #if defined(_MSC_VER) && defined(nx_msgpack_EXPORTS)
60 #undef NLIB_VIS_PUBLIC
61 #define NLIB_VIS_PUBLIC NLIB_WINIMPORT
64 #endif // INCLUDE_NN_NLIB_MSGPACK_JSONWRITER_H_
#define NLIB_NOEXCEPT
環境に合わせてnoexcept 又は同等の定義がされます。
#define NLIB_FINAL
利用可能であればfinalが定義されます。そうでない場合は空文字列です。
#define NLIB_DISALLOW_COPY_AND_ASSIGN(TypeName)
TypeName で指定されたクラスのコピーコンストラクタと代入演算子を禁止します。
#define NLIB_SAFE_BOOL(class_name, exp)
クラス内に安全なoperator bool()を定義します。 可能であればC++11のexplicit boolを利用します。 ...
~JsonWriter() noexcept
デストラクタです。
MessagePack又はJSONを読み込むことで作成されるオブジェクトです。
bool Write(BinaryWriter *w, T x)
この関数テンプレートを特殊化することで、ユーザー定義クラスを書きこむことができます。 ...
JsonWriter() noexcept
デフォルトコンストラクタです。
JSONのジェネレータです。MpObjectをJSONに変換してストリームに書き出します。
Option
Write()に渡すことのできるオプション値が定義されています。
出力ストリームの基底クラスです。このクラスを実体化することはできません。