fix gc issues
[m6w6/ext-http] / php_http_inflatestream_object.h
1 /*
2 +--------------------------------------------------------------------+
3 | PECL :: http |
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-2007, Michael Wallner <mike@php.net> |
10 +--------------------------------------------------------------------+
11 */
12
13 /* $Id$ */
14
15 #ifndef PHP_HTTP_INFLATESTREAM_OBJECT_H
16 #define PHP_HTTP_INFLATESTREAM_OBJECT_H
17 #ifdef HTTP_HAVE_ZLIB
18 #ifdef ZEND_ENGINE_2
19
20 typedef struct _http_inflatestream_object_t {
21 zend_object zo;
22 http_encoding_stream *stream;
23 } http_inflatestream_object;
24
25 extern zend_class_entry *http_inflatestream_object_ce;
26 extern zend_function_entry http_inflatestream_object_fe[];
27
28 extern PHP_MINIT_FUNCTION(http_inflatestream_object);
29
30 #define http_inflatestream_object_new(ce) _http_inflatestream_object_new((ce) TSRMLS_CC)
31 extern zend_object_value _http_inflatestream_object_new(zend_class_entry *ce TSRMLS_DC);
32 #define http_inflatestream_object_new_ex(ce, s, ptr) _http_inflatestream_object_new_ex((ce), (s), (ptr) TSRMLS_CC)
33 extern zend_object_value _http_inflatestream_object_new_ex(zend_class_entry *ce, http_encoding_stream *s, http_inflatestream_object **ptr TSRMLS_DC);
34 #define http_inflatestream_object_clone(zobj) _http_inflatestream_object_clone_obj(zobj TSRMLS_CC)
35 extern zend_object_value _http_inflatestream_object_clone_obj(zval *object TSRMLS_DC);
36 #define http_inflatestream_object_free(o) _http_inflatestream_object_free((o) TSRMLS_CC)
37 extern void _http_inflatestream_object_free(zend_object *object TSRMLS_DC);
38
39 PHP_METHOD(HttpInflateStream, __construct);
40 PHP_METHOD(HttpInflateStream, factory);
41 PHP_METHOD(HttpInflateStream, update);
42 PHP_METHOD(HttpInflateStream, flush);
43 PHP_METHOD(HttpInflateStream, finish);
44
45 #endif
46 #endif
47 #endif
48
49 /*
50 * Local variables:
51 * tab-width: 4
52 * c-basic-offset: 4
53 * End:
54 * vim600: noet sw=4 ts=4 fdm=marker
55 * vim<600: noet sw=4 ts=4
56 */
57