18 #ifndef INCLUDED_ISERIALIZER
19 #define INCLUDED_ISERIALIZER
142 void NumberI32(
const char* name, int32_t value, int32_t lower, int32_t upper);
199 void Bool(
const char* name,
bool value)
223 void ScriptVal(
const char* name, jsval value);
243 void RawBytes(
const char* name,
const u8* data,
size_t len);
266 virtual void PutNumber(
const char* name, int32_t value) = 0;
267 virtual void PutNumber(
const char* name,
float value) = 0;
268 virtual void PutNumber(
const char* name,
double value) = 0;
270 virtual void PutBool(
const char* name,
bool value) = 0;
271 virtual void PutString(
const char* name,
const std::string& value) = 0;
272 virtual void PutScriptVal(
const char* name, jsval value) = 0;
273 virtual void PutRaw(
const char* name,
const u8* data,
size_t len) = 0;
276 #endif // INCLUDED_ISERIALIZER
A simple fixed-point number class.
void NumberFixed_Unbounded(const char *name, fixed value)
Serialize a number.
virtual bool IsDebug() const
Returns true if the serializer is being used in debug mode.
virtual void PutRaw(const char *name, const u8 *data, size_t len)=0
Serialization interface; see serialization overview.
void NumberI16_Unbounded(const char *name, int16_t value)
Serialize a number.
void NumberU8_Unbounded(const char *name, uint8_t value)
Serialize a number.
A trivial wrapper around a jsval.
void ScriptVal(const char *name, jsval value)
Serialize a jsval.
void NumberI8(const char *name, int8_t value, int8_t lower, int8_t upper)
void NumberI32(const char *name, int32_t value, int32_t lower, int32_t upper)
Serialize a number, which must be lower <= value <= upper.
virtual void PutString(const char *name, const std::string &value)=0
void NumberFloat_Unbounded(const char *name, float value)
Serialize a number.
void NumberI16(const char *name, int16_t value, int16_t lower, int16_t upper)
Serialize a number, which must be lower <= value <= upper.
virtual void PutNumber(const char *name, uint8_t value)=0
void StringASCII(const char *name, const std::string &value, uint32_t minlength, uint32_t maxlength)
Serialize an ASCII string.
void Bool(const char *name, bool value)
Serialize a boolean.
void NumberU32_Unbounded(const char *name, uint32_t value)
Serialize a number.
virtual void PutScriptVal(const char *name, jsval value)=0
void NumberI8_Unbounded(const char *name, int8_t value)
Serialize a number.
void String(const char *name, const std::wstring &value, uint32_t minlength, uint32_t maxlength)
Serialize a Unicode string.
void RawBytes(const char *name, const u8 *data, size_t len)
Serialize a stream of bytes.
void NumberDouble_Unbounded(const char *name, double value)
Serialize a number.
void NumberU16(const char *name, uint16_t value, uint16_t lower, uint16_t upper)
Serialize a number, which must be lower <= value <= upper.
void NumberI32_Unbounded(const char *name, int32_t value)
Serialize a number.
virtual void PutBool(const char *name, bool value)=0
virtual std::ostream & GetStream()=0
Returns a stream which can be used to serialize data directly.
void NumberU32(const char *name, uint32_t value, uint32_t lower, uint32_t upper)
Serialize a number, which must be lower <= value <= upper.
void NumberU16_Unbounded(const char *name, uint16_t value)
Serialize a number.
void NumberU8(const char *name, uint8_t value, uint8_t lower, uint8_t upper)
Serialize a number, which must be lower <= value <= upper.