15 #ifndef CEREAL_RAPIDJSON_FILEWRITESTREAM_H_
16 #define CEREAL_RAPIDJSON_FILEWRITESTREAM_H_
22 CEREAL_RAPIDJSON_DIAG_PUSH
23 CEREAL_RAPIDJSON_DIAG_OFF(unreachable-code)
47 void PutN(
char c,
size_t n) {
101 CEREAL_RAPIDJSON_DIAG_POP
#define CEREAL_RAPIDJSON_ASSERT(x)
Definition: json.hpp:50
Wrapper of C file stream for output using fwrite().
Definition: filewritestream.h:32
size_t Tell() const
Definition: filewritestream.h:77
char * bufferEnd_
Definition: filewritestream.h:88
char * current_
Definition: filewritestream.h:89
char * PutBegin()
Definition: filewritestream.h:78
size_t PutEnd(char *)
Definition: filewritestream.h:79
FileWriteStream(std::FILE *fp, char *buffer, size_t bufferSize)
Definition: filewritestream.h:36
FileWriteStream(const FileWriteStream &)
char * buffer_
Definition: filewritestream.h:87
FileWriteStream & operator=(const FileWriteStream &)
void Flush()
Definition: filewritestream.h:63
std::FILE * fp_
Definition: filewritestream.h:86
char Peek() const
Definition: filewritestream.h:75
char Ch
Character type. Only support char.
Definition: filewritestream.h:34
char Take()
Definition: filewritestream.h:76
void PutN(char c, size_t n)
Definition: filewritestream.h:47
void Put(char c)
Definition: filewritestream.h:40
void PutN(FileWriteStream &stream, char c, size_t n)
Implement specialized version of PutN() with memset() for better performance.
Definition: filewritestream.h:94
#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