Lines Matching refs:res

46 ZEND_API zend_result ZEND_FASTCALL zend_list_delete(zend_resource *res)  in zend_list_delete()  argument
48 if (GC_DELREF(res) <= 0) { in zend_list_delete()
49 return zend_hash_index_del(&EG(regular_list), res->handle); in zend_list_delete()
55 ZEND_API void ZEND_FASTCALL zend_list_free(zend_resource *res) in zend_list_free() argument
57 ZEND_ASSERT(GC_REFCOUNT(res) == 0); in zend_list_free()
58 zend_hash_index_del(&EG(regular_list), res->handle); in zend_list_free()
61 static void zend_resource_dtor(zend_resource *res) in zend_resource_dtor() argument
64 zend_resource r = *res; in zend_resource_dtor()
66 res->type = -1; in zend_resource_dtor()
67 res->ptr = NULL; in zend_resource_dtor()
78 ZEND_API void ZEND_FASTCALL zend_list_close(zend_resource *res) in zend_list_close() argument
80 if (GC_REFCOUNT(res) <= 0) { in zend_list_close()
81 zend_list_free(res); in zend_list_close()
82 } else if (res->type >= 0) { in zend_list_close()
83 zend_resource_dtor(res); in zend_list_close()
96 ZEND_API void *zend_fetch_resource2(zend_resource *res, const char *resource_type_name, int resourc… in zend_fetch_resource2() argument
98 if (res) { in zend_fetch_resource2()
99 if (resource_type1 == res->type) { in zend_fetch_resource2()
100 return res->ptr; in zend_fetch_resource2()
103 if (resource_type2 == res->type) { in zend_fetch_resource2()
104 return res->ptr; in zend_fetch_resource2()
117 ZEND_API void *zend_fetch_resource(zend_resource *res, const char *resource_type_name, int resource… in zend_fetch_resource() argument
119 if (resource_type == res->type) { in zend_fetch_resource()
120 return res->ptr; in zend_fetch_resource()
132 ZEND_API void *zend_fetch_resource_ex(zval *res, const char *resource_type_name, int resource_type) in zend_fetch_resource_ex() argument
135 if (res == NULL) { in zend_fetch_resource_ex()
142 if (Z_TYPE_P(res) != IS_RESOURCE) { in zend_fetch_resource_ex()
150 return zend_fetch_resource(Z_RES_P(res), resource_type_name, resource_type); in zend_fetch_resource_ex()
153 ZEND_API void *zend_fetch_resource2_ex(zval *res, const char *resource_type_name, int resource_type… in zend_fetch_resource2_ex() argument
156 if (res == NULL) { in zend_fetch_resource2_ex()
163 if (Z_TYPE_P(res) != IS_RESOURCE) { in zend_fetch_resource2_ex()
171 return zend_fetch_resource2(Z_RES_P(res), resource_type_name, resource_type1, resource_type2); in zend_fetch_resource2_ex()
176 zend_resource *res = Z_RES_P(zv); in list_entry_destructor() local
179 if (res->type >= 0) { in list_entry_destructor()
180 zend_resource_dtor(res); in list_entry_destructor()
182 efree_size(res, sizeof(zend_resource)); in list_entry_destructor()
187 zend_resource *res = Z_RES_P(zv); in plist_entry_destructor() local
189 if (res->type >= 0) { in plist_entry_destructor()
192 ld = zend_hash_index_find_ptr(&list_destructors, res->type); in plist_entry_destructor()
196 ld->plist_dtor_ex(res); in plist_entry_destructor()
199 free(res); in plist_entry_destructor()
223 zend_resource *res = Z_PTR_P(p); in zend_close_rsrc_list() local
224 if (res->type >= 0) { in zend_close_rsrc_list()
225 zend_resource_dtor(res); in zend_close_rsrc_list()
316 const char *zend_rsrc_list_get_rsrc_type(zend_resource *res) in zend_rsrc_list_get_rsrc_type() argument
320 lde = zend_hash_index_find_ptr(&list_destructors, res->type); in zend_rsrc_list_get_rsrc_type()