awtk/docs/manual/object_default_t.md

154 lines
4.0 KiB
Markdown
Raw Normal View History

2019-01-12 11:52:46 +08:00
## object\_default\_t
### 概述
![image](images/object_default_t_0.png)
2019-12-14 13:25:56 +08:00
对象接口的缺省实现。
内部使用有序数组保存所有属性,可以快速查找指定名称的属性。
2019-01-15 14:34:05 +08:00
----------------------------------
2019-01-12 11:52:46 +08:00
### 函数
<p id="object_default_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
2019-11-15 11:33:43 +08:00
| <a href="#object_default_t_object_default_clear_props">object\_default\_clear\_props</a> | 清除全部属性。 |
2020-05-24 19:28:22 +08:00
| <a href="#object_default_t_object_default_clone">object\_default\_clone</a> | 克隆对象。 |
2019-11-15 11:33:43 +08:00
| <a href="#object_default_t_object_default_create">object\_default\_create</a> | 创建对象。 |
| <a href="#object_default_t_object_default_find_prop">object\_default\_find\_prop</a> | 查找满足条件的属性,并返回它的值。 |
| <a href="#object_default_t_object_default_unref">object\_default\_unref</a> | for script gc |
2019-01-12 11:52:46 +08:00
### 属性
<p id="object_default_t_properties">
2019-01-17 15:56:15 +08:00
| 属性名称 | 类型 | 说明 |
2019-01-12 11:52:46 +08:00
| -------- | ----- | ------------ |
| <a href="#object_default_t_props">props</a> | named\_value\_t | 属性数组。 |
| <a href="#object_default_t_props_capacity">props\_capacity</a> | uint32\_t | 属性数组的容量。 |
| <a href="#object_default_t_props_size">props\_size</a> | uint32\_t | 属性个数。 |
2019-08-24 10:35:53 +08:00
#### object\_default\_clear\_props 函数
-----------------------
* 函数功能:
2019-11-15 11:33:43 +08:00
> <p id="object_default_t_object_default_clear_props">清除全部属性。
2019-10-16 09:02:32 +08:00
2019-08-24 10:35:53 +08:00
* 函数原型:
```
ret_t object_default_clear_props (object_t* obj);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| obj | object\_t* | 对象。 |
2020-05-24 19:28:22 +08:00
#### object\_default\_clone 函数
2019-01-12 11:52:46 +08:00
-----------------------
* 函数功能:
2020-05-24 19:28:22 +08:00
> <p id="object_default_t_object_default_clone">克隆对象。
2019-10-16 09:02:32 +08:00
2019-01-12 11:52:46 +08:00
* 函数原型:
```
2020-05-24 19:28:22 +08:00
object_t* object_default_clone (object_default_t* o);
2019-01-12 11:52:46 +08:00
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
2019-01-14 11:38:31 +08:00
| 返回值 | object\_t* | 返回object对象。 |
2020-05-24 19:28:22 +08:00
| o | object\_default\_t* | 被克隆的对象。 |
2019-03-14 10:52:10 +08:00
#### object\_default\_create 函数
-----------------------
* 函数功能:
2020-05-24 19:28:22 +08:00
> <p id="object_default_t_object_default_create">创建对象。
2019-10-16 09:02:32 +08:00
2019-03-14 10:52:10 +08:00
* 函数原型:
```
2020-05-24 19:28:22 +08:00
object_t* object_default_create ();
2019-03-14 10:52:10 +08:00
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回object对象。 |
2019-09-30 17:11:53 +08:00
#### object\_default\_find\_prop 函数
2019-02-20 15:25:09 +08:00
-----------------------
* 函数功能:
2019-11-15 11:33:43 +08:00
> <p id="object_default_t_object_default_find_prop">查找满足条件的属性,并返回它的值。
2019-10-16 09:02:32 +08:00
2019-09-30 17:11:53 +08:00
* 函数原型:
2019-02-20 15:25:09 +08:00
2019-09-30 17:11:53 +08:00
```
value_t* object_default_find_prop (object_t* obj, tk_compare_t cmp, const void* data);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | value\_t* | 返回属性的值。 |
| obj | object\_t* | 对象。 |
| cmp | tk\_compare\_t | 比较函数。 |
| data | const void* | 要比较的数据。 |
#### object\_default\_unref 函数
-----------------------
2019-02-20 15:25:09 +08:00
2019-09-30 17:11:53 +08:00
* 函数功能:
2019-02-20 15:25:09 +08:00
2019-11-15 11:33:43 +08:00
> <p id="object_default_t_object_default_unref">for script gc
2019-10-16 09:02:32 +08:00
2019-02-20 15:25:09 +08:00
* 函数原型:
```
ret_t object_default_unref (object_t* obj);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| obj | object\_t* | 对象。 |
2019-01-12 11:52:46 +08:00
#### props 属性
-----------------------
2019-11-15 11:33:43 +08:00
> <p id="object_default_t_props">属性数组。
2019-10-16 09:02:32 +08:00
2019-01-12 11:52:46 +08:00
* 类型named\_value\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### props\_capacity 属性
-----------------------
2019-11-15 11:33:43 +08:00
> <p id="object_default_t_props_capacity">属性数组的容量。
2019-10-16 09:02:32 +08:00
2019-01-12 11:52:46 +08:00
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### props\_size 属性
-----------------------
2019-11-15 11:33:43 +08:00
> <p id="object_default_t_props_size">属性个数。
2019-10-16 09:02:32 +08:00
2019-01-12 11:52:46 +08:00
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可脚本化 | 是 |