26 void writeU8(uint8_t
v);
28 void writeI8(int8_t
v);
30 void writeU16(uint16_t
v);
32 void writeI16(int16_t
v);
34 void writeU32(uint32_t
v);
36 void writeI32(int32_t
v);
38 void writeU64(uint64_t
v);
40 void writeI64(int64_t
v);
42 void writeF32(
float v);
44 void writeF64(
double v);
46 void writeBool(
bool v);
48 void writeString(
const std::string&
s);
50 void writeBytes(
const void*
d,
size_t n);
53 size_t size()
const {
return buf_.size(); }
55 const char*
data()
const {
return buf_.data(); }
57 const std::vector<char>&
buffer()
const {
return buf_; }
61 return std::string(buf_.data(), buf_.size());
65 void put(
const void*
d,
size_t n);
67 std::vector<char> buf_;
78 explicit NetReader(
const std::vector<char>&
d);
82 bool init(
const void*
d,
size_t n);
84 bool setBytes(
const std::string&
s) {
return init(
s.data(),
s.size()); }
111 std::vector<char>
bytes(
size_t n);
114 size_t remaining()
const;
116 size_t pos()
const {
return pos_; }
118 bool ok()
const {
return ok_; }
121 bool take(
void* out,
size_t n);
123 const char* data_ =
nullptr;
#define EVENGINE_API_PLATFORM
EVENGINE_API_PLATFORM public API.
bool setBytes(const std::string &s)
Sets the bytes.
NetReader()=default
Net reader.
EVENGINE_API_PLATFORM public API.
std::string toString() const
To string.
NetWriter()=default
Net writer.
const char * data() const
Data.
size_t size() const
Returns the size of .
const std::vector< char > & buffer() const
Buffer.