15 #ifndef CEREAL_RAPIDJSON_CURSORSTREAMWRAPPER_H_
16 #define CEREAL_RAPIDJSON_CURSORSTREAMWRAPPER_H_
21 CEREAL_RAPIDJSON_DIAG_PUSH
22 CEREAL_RAPIDJSON_DIAG_OFF(effc++)
25 #if defined(_MSC_VER) && _MSC_VER <= 1800
26 CEREAL_RAPIDJSON_DIAG_PUSH
27 CEREAL_RAPIDJSON_DIAG_OFF(4702)
28 CEREAL_RAPIDJSON_DIAG_OFF(4512)
38 template <
typename InputStream,
typename Encoding = UTF8<> >
41 typedef typename Encoding::Ch
Ch;
48 Ch ch = this->
is_.Take();
68 #if defined(_MSC_VER) && _MSC_VER <= 1800
69 CEREAL_RAPIDJSON_DIAG_POP
73 CEREAL_RAPIDJSON_DIAG_POP
Cursor stream wrapper for counting line and column number if error exists.
Definition: cursorstreamwrapper.h:39
Encoding::Ch Ch
Definition: cursorstreamwrapper.h:41
size_t line_
Current Line.
Definition: cursorstreamwrapper.h:64
CursorStreamWrapper(InputStream &is)
Definition: cursorstreamwrapper.h:43
size_t col_
Current Column.
Definition: cursorstreamwrapper.h:65
size_t GetLine() const
Get the error line number, if error exists.
Definition: cursorstreamwrapper.h:59
Ch Take()
Definition: cursorstreamwrapper.h:47
size_t GetColumn() const
Get the error column number, if error exists.
Definition: cursorstreamwrapper.h:61
A Stream Wrapper.
Definition: stream.h:119
InputStream & is_
Definition: stream.h:140
Concept for encoding of Unicode characters.
#define CEREAL_RAPIDJSON_NAMESPACE_BEGIN
provide custom rapidjson namespace (opening expression)
Definition: rapidjson.h:121
#define CEREAL_RAPIDJSON_NAMESPACE_END
provide custom rapidjson namespace (closing expression)
Definition: rapidjson.h:124