typedef STATUS (*php_http_client_pool_setopt_func_t)(struct php_http_client_pool *p, php_http_client_pool_setopt_opt_t opt, void *arg);
typedef struct php_http_client_pool_ops {
- php_http_resource_factory_ops_t *rsrc;
+ php_resource_factory_ops_t *rsrc;
php_http_client_pool_init_func_t init;
php_http_client_pool_copy_func_t copy;
php_http_client_pool_dtor_func_t dtor;
php_http_client_pool_attach_func_t attach;
php_http_client_pool_detach_func_t detach;
php_http_client_pool_setopt_func_t setopt;
+ php_http_new_t create_object;
+ zend_class_entry *(*class_entry)(void);
} php_http_client_pool_ops_t;
typedef struct php_http_client_pool {
void *ctx;
- php_http_resource_factory_t *rf;
+ php_resource_factory_t *rf;
php_http_client_pool_ops_t *ops;
struct {
#endif
} php_http_client_pool_t;
-PHP_HTTP_API php_http_client_pool_t *php_http_client_pool_init(php_http_client_pool_t *pool, php_http_client_pool_ops_t *ops, php_http_resource_factory_t *rf, void *init_arg TSRMLS_DC);
+PHP_HTTP_API php_http_client_pool_t *php_http_client_pool_init(php_http_client_pool_t *pool, php_http_client_pool_ops_t *ops, php_resource_factory_t *rf, void *init_arg TSRMLS_DC);
PHP_HTTP_API php_http_client_pool_t *php_http_client_pool_copy(php_http_client_pool_t *from, php_http_client_pool_t *to);
PHP_HTTP_API void php_http_client_pool_dtor(php_http_client_pool_t *pool);
PHP_HTTP_API void php_http_client_pool_free(php_http_client_pool_t **pool);
} iterator;
} php_http_client_pool_object_t;
-extern zend_class_entry *php_http_client_pool_class_entry;
-extern zend_function_entry php_http_client_pool_method_entry[];
+zend_object_value php_http_client_pool_object_new(zend_class_entry *ce TSRMLS_DC);
+zend_object_value php_http_client_pool_object_new_ex(zend_class_entry *ce, php_http_client_pool_t *p, php_http_client_pool_object_t **ptr TSRMLS_DC);
+void php_http_client_pool_object_free(void *object TSRMLS_DC);
-extern zend_object_value php_http_client_pool_object_new(zend_class_entry *ce TSRMLS_DC);
-extern zend_object_value php_http_client_pool_object_new_ex(zend_class_entry *ce, php_http_client_pool_t *p, php_http_client_pool_object_t **ptr TSRMLS_DC);
-extern void php_http_client_pool_object_free(void *object TSRMLS_DC);
-
-extern zend_object_handlers *php_http_client_pool_get_object_handlers(void);
+zend_class_entry *php_http_client_pool_get_class_entry(void);
+zend_object_handlers *php_http_client_pool_get_object_handlers(void);
PHP_METHOD(HttpClientPool, __destruct);
PHP_METHOD(HttpClientPool, attach);