16 #ifndef INCLUDE_NN_NLIB_MSGPACK_CSVREADER_H_ 17 #define INCLUDE_NN_NLIB_MSGPACK_CSVREADER_H_ 22 #include "nn/nlib/Swap.h" 24 #if defined(_MSC_VER) && defined(nx_msgpack_EXPORTS) 25 #undef NLIB_VIS_PUBLIC 26 #define NLIB_VIS_PUBLIC NLIB_WINEXPORT 54 #ifdef __cpp_rvalue_references 55 static std::pair<bool, MpObject>
57 std::pair<bool, MpObject> rval;
58 rval.first =
Read(&rval.second, csvtext);
67 void SetError(
errno_t e) NLIB_NOEXCEPT {
68 if (error_ == 0) error_ = e;
72 struct CsvReaderPrivate;
73 CsvReaderPrivate* prv_;
80 NLIB_DEFINE_STD_SWAP(::nlib_ns::msgpack::CsvReader)
81 #if defined(_MSC_VER) && defined(nx_msgpack_EXPORTS) 82 #undef NLIB_VIS_PUBLIC 83 #define NLIB_VIS_PUBLIC NLIB_WINIMPORT 86 #endif // INCLUDE_NN_NLIB_MSGPACK_CSVREADER_H_ CSVパーサーです。ストリームからCSV文字列を読み込んでパースします。
#define NLIB_DISALLOW_COPY_AND_ASSIGN(TypeName)
TypeName で指定されたクラスのコピーコンストラクタと代入演算子を禁止します。
#define NLIB_SAFE_BOOL(class_name, exp)
クラス内に安全なoperator bool()を定義します。 可能であればC++11のexplicit boolを利用します。 ...
MessagePack又はJSONを読み込むことで作成されるオブジェクトです。
MessagePack, JSON及びCSVを読み込むと作成されるオブジェクトです。
#define NLIB_NOEXCEPT
環境に合わせてnoexcept 又は同等の定義がされます。
~CsvReader() noexcept
デストラクタです。
#define NLIB_CEXPR
利用可能であればconstexprが定義されます。そうでない場合は空文字列です。
constexpr CsvReader() noexcept
デフォルトコンストラクタです。
#define NLIB_FINAL
利用可能であればfinalが定義されます。そうでない場合は空文字列です。
bool Read(BinaryReader *r, T *x)
この関数テンプレートを特殊化することで、ユーザー定義クラスに読み込むことができます。 ...
errno_t GetErrorValue() const noexcept
発生したエラーを取得します。