2 +--------------------------------------------------------------------+
4 +--------------------------------------------------------------------+
5 | Redistribution and use in source and binary forms, with or without |
6 | modification, are permitted provided that the conditions mentioned |
7 | in the accompanying LICENSE file are met. |
8 +--------------------------------------------------------------------+
9 | Copyright (c) 2004-2011, Michael Wallner <mike@php.net> |
10 +--------------------------------------------------------------------+
13 #include "php_http_api.h"
15 PHP_HTTP_API php_http_resource_factory_t
*php_http_resource_factory_init(php_http_resource_factory_t
*f
, php_http_resource_factory_ops_t
*fops
, void *data
, void (*dtor
)(void *data
))
18 f
= emalloc(sizeof(*f
));
20 memset(f
, 0, sizeof(*f
));
22 memcpy(&f
->fops
, fops
, sizeof(*fops
));
30 PHP_HTTP_API
void php_http_resource_factory_dtor(php_http_resource_factory_t
*f
)
36 PHP_HTTP_API
void php_http_resource_factory_free(php_http_resource_factory_t
**f
)
39 php_http_resource_factory_dtor(*f
);
45 PHP_HTTP_API
void *php_http_resource_factory_handle_ctor(php_http_resource_factory_t
*f TSRMLS_DC
)
48 return f
->fops
.ctor(f
->data TSRMLS_CC
);
53 PHP_HTTP_API
void *php_http_resource_factory_handle_copy(php_http_resource_factory_t
*f
, void *handle TSRMLS_DC
)
56 return f
->fops
.copy(f
->data
, handle TSRMLS_CC
);
61 PHP_HTTP_API
void php_http_resource_factory_handle_dtor(php_http_resource_factory_t
*f
, void *handle TSRMLS_DC
)
64 f
->fops
.dtor(f
->data
, handle TSRMLS_CC
);
73 * vim600: noet sw=4 ts=4 fdm=marker
74 * vim<600: noet sw=4 ts=4