28 KiB
value_t
概述
一个通用数据类型,用来存放整数、浮点数、字符串和其它对象。
在C/C++中,一般不需动态创建对象,直接声明并初始化即可。如:
value_t v;
value_set_int(&v, 100);
在脚本语言中,需要动态创建对象。
函数
函数名称 | 说明 |
---|---|
value_binary_data | 获取为binary_data的值。 |
value_bool | 获取类型为bool的值。 |
value_cast | 转换为value对象。 |
value_copy | 拷贝value的值。 |
value_create | 创建value对象。 |
value_deep_copy | 深拷贝value的值。 |
value_destroy | 销毁value对象。 |
value_double | 获取类型为double的值。 |
value_dup_binary_data | 设置类型为binary_data的值(复制数据)。 |
value_dup_str | 设置类型为字符串的值(并拷贝字符串)。 |
value_dup_str_with_len | 设置类型为字符串的值(并拷贝字符串)。 |
value_equal | 判断两个value是否相同。 |
value_float | 获取类型为float_t的值。 |
value_float32 | 获取类型为float的值。 |
value_gradient | 获取为gradient的值。 |
value_int | 转换为int的值。 |
value_int16 | 获取类型为int16的值。 |
value_int32 | 获取类型为int32的值。 |
value_int64 | 获取类型为int64的值。 |
value_int8 | 获取类型为int8的值。 |
value_is_null | 判断value是否为空值。 |
value_object | 转换为object的值。 |
value_pointer | 获取类型为pointer的值。 |
value_reset | 重置value对象。 |
value_set_binary_data | 设置类型为binary_data的值。 |
value_set_bool | 设置类型为bool的值。 |
value_set_double | 设置类型为double的值。 |
value_set_float | 设置类型为float_t的值。 |
value_set_float32 | 设置类型为float的值。 |
value_set_gradient | 设置类型为gradient的值。 |
value_set_int | 设置类型为int的值。 |
value_set_int16 | 设置类型为int16的值。 |
value_set_int32 | 设置类型为int32的值。 |
value_set_int64 | 设置类型为int64的值。 |
value_set_int8 | 设置类型为int8的值。 |
value_set_object | 设置类型为object的值。 |
value_set_pointer | 设置类型为pointer的值。 |
value_set_sized_str | 设置类型为带长度的字符串的值。 |
value_set_str | 设置类型为字符串的值。 |
value_set_token | 设置类型为token的值。 |
value_set_ubjson | 设置类型为ubjson的值。 |
value_set_uint16 | 设置类型为uint16的值。 |
value_set_uint32 | 设置类型为uint32的值。 |
value_set_uint64 | 设置类型为uint64的值。 |
value_set_uint8 | 设置类型为uint8的值。 |
value_set_wstr | 设置类型为宽字符串的值。 |
value_sized_str | 获取为sized_str的值。 |
value_str | 获取类型为字符串的值。 |
value_str_ex | 获取类型为字符串的值。 |
value_token | 获取token的值。 |
value_type_size | 获取指定类型数据大小。 |
value_ubjson | 获取为ubjson的值。 |
value_uint16 | 获取类型为uint16的值。 |
value_uint32 | 获取类型为uint32的值。 |
value_uint64 | 获取类型为uint64的值。 |
value_uint8 | 获取类型为uint8的值。 |
value_wstr | 获取类型为宽字符串的值。 |
value_binary_data 函数
- 函数功能:
获取为binary_data的值。
- 函数原型:
binary_data_t* value_binary_data (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | binary_data_t* | 值。 |
v | value_t* | value对象。 |
value_bool 函数
- 函数功能:
获取类型为bool的值。
- 函数原型:
bool_t value_bool (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | bool_t | 值。 |
v | value_t* | value对象。 |
value_cast 函数
- 函数功能:
转换为value对象。
供脚本语言使用
- 函数原型:
value_t* value_cast (value_t* value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | 对象。 |
value | value_t* | value对象。 |
value_copy 函数
- 函数功能:
拷贝value的值。
- 函数原型:
ret_t value_copy (value_t* dst, value_t* src);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
dst | value_t* | 目的value对象。 |
src | value_t* | 源value对象。 |
value_create 函数
- 函数功能:
创建value对象。
- 函数原型:
value_t* value_create ();
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | 对象。 |
value_deep_copy 函数
- 函数功能:
深拷贝value的值。
- 函数原型:
ret_t value_deep_copy (value_t* dst, value_t* src);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
dst | value_t* | 目的value对象。 |
src | value_t* | 源value对象。 |
value_destroy 函数
- 函数功能:
销毁value对象。
- 函数原型:
ret_t value_destroy (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
v | value_t* | value对象。 |
value_double 函数
- 函数功能:
获取类型为double的值。
- 函数原型:
double value_double (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | double | 值。 |
v | value_t* | value对象。 |
value_dup_binary_data 函数
- 函数功能:
设置类型为binary_data的值(复制数据)。
- 函数原型:
value_t* value_dup_binary_data (value_t* v, const void* value, uint32_t size);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | const void* | 待设置的值。 |
size | uint32_t | 长度。 |
value_dup_str 函数
- 函数功能:
设置类型为字符串的值(并拷贝字符串)。
- 函数原型:
value_t* value_dup_str (value_t* v, const char* value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | const char* | 待设置的值。 |
value_dup_str_with_len 函数
- 函数功能:
设置类型为字符串的值(并拷贝字符串)。
- 函数原型:
value_t* value_dup_str_with_len (value_t* v, const char* value, uint32_t len);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | const char* | 待设置的值。 |
len | uint32_t | 长度。 |
value_equal 函数
- 函数功能:
判断两个value是否相同。
- 函数原型:
bool_t value_equal (value_t* value, value_t* other);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | bool_t | 为空值返回TRUE,否则返回FALSE。 |
value | value_t* | value对象。 |
other | value_t* | value对象。 |
value_float 函数
- 函数功能:
获取类型为float\_t的值。
- 函数原型:
float_t value_float (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | float_t | 值。 |
v | value_t* | value对象。 |
value_float32 函数
- 函数功能:
获取类型为float的值。
- 函数原型:
float value_float32 (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | float | 值。 |
v | value_t* | value对象。 |
value_gradient 函数
- 函数功能:
获取为gradient的值。
- 函数原型:
binary_data_t* value_gradient (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | binary_data_t* | 值。 |
v | value_t* | value对象。 |
value_int 函数
- 函数功能:
转换为int的值。
- 函数原型:
int value_int (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | int | 值。 |
v | value_t* | value对象。 |
value_int16 函数
- 函数功能:
获取类型为int16的值。
- 函数原型:
int16_t value_int16 (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | int16_t | 值。 |
v | value_t* | value对象。 |
value_int32 函数
- 函数功能:
获取类型为int32的值。
- 函数原型:
int32_t value_int32 (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | int32_t | 值。 |
v | value_t* | value对象。 |
value_int64 函数
- 函数功能:
获取类型为int64的值。
- 函数原型:
int64_t value_int64 (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | int64_t | 值。 |
v | value_t* | value对象。 |
value_int8 函数
- 函数功能:
获取类型为int8的值。
- 函数原型:
int8_t value_int8 (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | int8_t | 值。 |
v | value_t* | value对象。 |
value_is_null 函数
- 函数功能:
判断value是否为空值。
- 函数原型:
bool_t value_is_null (value_t* value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | bool_t | 为空值返回TRUE,否则返回FALSE。 |
value | value_t* | value对象。 |
value_object 函数
- 函数功能:
转换为object的值。
- 函数原型:
object_t* value_object (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | object_t* | 值。 |
v | value_t* | value对象。 |
value_pointer 函数
- 函数功能:
获取类型为pointer的值。
- 函数原型:
void* value_pointer (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | void* | 值。 |
v | value_t* | value对象。 |
value_reset 函数
- 函数功能:
重置value对象。
- 函数原型:
ret_t value_reset (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
v | value_t* | value对象。 |
value_set_binary_data 函数
- 函数功能:
设置类型为binary_data的值。
- 函数原型:
value_t* value_set_binary_data (value_t* v, void* value, uint32_t size);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | void* | 待设置的值。 |
size | uint32_t | 长度。 |
value_set_bool 函数
- 函数功能:
设置类型为bool的值。
- 函数原型:
value_t* value_set_bool (value_t* v, bool_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | bool_t | 待设置的值。 |
value_set_double 函数
- 函数功能:
设置类型为double的值。
- 函数原型:
value_t* value_set_double (value_t* v, double value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | double | 待设置的值。 |
value_set_float 函数
- 函数功能:
设置类型为float\_t的值。
- 函数原型:
value_t* value_set_float (value_t* v, float_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | float_t | 待设置的值。 |
value_set_float32 函数
- 函数功能:
设置类型为float的值。
- 函数原型:
value_t* value_set_float32 (value_t* v, float value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | float | 待设置的值。 |
value_set_gradient 函数
- 函数功能:
设置类型为gradient的值。
- 函数原型:
value_t* value_set_gradient (value_t* v, void* value, uint32_t size);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | void* | 待设置的值。 |
size | uint32_t | 长度。 |
value_set_int 函数
- 函数功能:
设置类型为int的值。
- 函数原型:
value_t* value_set_int (value_t* v, int32_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | int32_t | 待设置的值。 |
value_set_int16 函数
- 函数功能:
设置类型为int16的值。
- 函数原型:
value_t* value_set_int16 (value_t* v, int16_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | int16_t | 待设置的值。 |
value_set_int32 函数
- 函数功能:
设置类型为int32的值。
- 函数原型:
value_t* value_set_int32 (value_t* v, int32_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | int32_t | 待设置的值。 |
value_set_int64 函数
- 函数功能:
设置类型为int64的值。
- 函数原型:
value_t* value_set_int64 (value_t* v, int64_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | int64_t | 待设置的值。 |
value_set_int8 函数
- 函数功能:
设置类型为int8的值。
- 函数原型:
value_t* value_set_int8 (value_t* v, int8_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | int8_t | 待设置的值。 |
value_set_object 函数
- 函数功能:
设置类型为object的值。
- 函数原型:
value_t* value_set_object (value_t* v, object_t* value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | object_t* | 待设置的值。 |
value_set_pointer 函数
- 函数功能:
设置类型为pointer的值。
- 函数原型:
value_t* value_set_pointer (value_t* v, void* value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | void* | 待设置的值。 |
value_set_sized_str 函数
- 函数功能:
设置类型为带长度的字符串的值。
- 函数原型:
value_t* value_set_sized_str (value_t* v, char* str, uint32_t size);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
str | char* | 待设置的值。 |
size | uint32_t | 长度。 |
value_set_str 函数
- 函数功能:
设置类型为字符串的值。
- 函数原型:
value_t* value_set_str (value_t* v, const char* value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | const char* | 待设置的值。 |
value_set_token 函数
- 函数功能:
设置类型为token的值。
- 函数原型:
value_t* value_set_token (value_t* v, uint32_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | uint32_t | 待设置的值。 |
value_set_ubjson 函数
- 函数功能:
设置类型为ubjson的值。
- 函数原型:
value_t* value_set_ubjson (value_t* v, void* value, uint32_t size);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | void* | 待设置的值。 |
size | uint32_t | 长度。 |
value_set_uint16 函数
- 函数功能:
设置类型为uint16的值。
- 函数原型:
value_t* value_set_uint16 (value_t* v, uint16_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | uint16_t | 待设置的值。 |
value_set_uint32 函数
- 函数功能:
设置类型为uint32的值。
- 函数原型:
value_t* value_set_uint32 (value_t* v, uint32_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | uint32_t | 待设置的值。 |
value_set_uint64 函数
- 函数功能:
设置类型为uint64的值。
- 函数原型:
value_t* value_set_uint64 (value_t* v, uint64_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | uint64_t | 待设置的值。 |
value_set_uint8 函数
- 函数功能:
设置类型为uint8的值。
- 函数原型:
value_t* value_set_uint8 (value_t* v, uint8_t value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | uint8_t | 待设置的值。 |
value_set_wstr 函数
- 函数功能:
设置类型为宽字符串的值。
- 函数原型:
value_t* value_set_wstr (value_t* v, const wchar_t* value);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | value_t* | value对象本身。 |
v | value_t* | value对象。 |
value | const wchar_t* | 待设置的值。 |
value_sized_str 函数
- 函数功能:
获取为sized_str的值。
- 函数原型:
sized_str_t* value_sized_str (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | sized_str_t* | 值。 |
v | value_t* | value对象。 |
value_str 函数
- 函数功能:
获取类型为字符串的值。
- 函数原型:
const char* value_str (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | const char* | 值。 |
v | value_t* | value对象。 |
value_str_ex 函数
- 函数功能:
获取类型为字符串的值。
- 函数原型:
const char* value_str_ex (value_t* v, char* buff, uint32_t size);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | const char* | 值。 |
v | value_t* | value对象。 |
buff | char* | 用于格式转换的缓冲区。 |
size | uint32_t | 缓冲区大小。 |
value_token 函数
- 函数功能:
获取token的值。
- 函数原型:
uint32_t value_token (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | uint32_t | 值。 |
v | value_t* | value对象。 |
value_type_size 函数
- 函数功能:
获取指定类型数据大小。
- 函数原型:
uint32_t value_type_size (value_type_t type);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | uint32_t | 返回对应数据类型的长度。 |
type | value_type_t | 类型。 |
value_ubjson 函数
- 函数功能:
获取为ubjson的值。
- 函数原型:
binary_data_t* value_ubjson (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | binary_data_t* | 值。 |
v | value_t* | value对象。 |
value_uint16 函数
- 函数功能:
获取类型为uint16的值。
- 函数原型:
uint16_t value_uint16 (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | uint16_t | 值。 |
v | value_t* | value对象。 |
value_uint32 函数
- 函数功能:
获取类型为uint32的值。
- 函数原型:
uint32_t value_uint32 (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | uint32_t | 值。 |
v | value_t* | value对象。 |
value_uint64 函数
- 函数功能:
获取类型为uint64的值。
- 函数原型:
uint64_t value_uint64 (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | uint64_t | 值。 |
v | value_t* | value对象。 |
value_uint8 函数
- 函数功能:
获取类型为uint8的值。
- 函数原型:
int8_t value_uint8 (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | int8_t | 值。 |
v | value_t* | value对象。 |
value_wstr 函数
- 函数功能:
获取类型为宽字符串的值。
- 函数原型:
const wchar_t* value_wstr (value_t* v);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | const wchar_t* | 值。 |
v | value_t* | value对象。 |