php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
zend_interfaces.h
Go to the documentation of this file.
1/*
2 +----------------------------------------------------------------------+
3 | Zend Engine |
4 +----------------------------------------------------------------------+
5 | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) |
6 +----------------------------------------------------------------------+
7 | This source file is subject to version 2.00 of the Zend license, |
8 | that is bundled with this package in the file LICENSE, and is |
9 | available through the world-wide-web at the following url: |
10 | http://www.zend.com/license/2_00.txt. |
11 | If you did not receive a copy of the Zend license and are unable to |
12 | obtain it through the world-wide-web, please send a note to |
13 | license@zend.com so we can mail you a copy immediately. |
14 +----------------------------------------------------------------------+
15 | Authors: Marcus Boerger <helly@php.net> |
16 +----------------------------------------------------------------------+
17*/
18
19#ifndef ZEND_INTERFACES_H
20#define ZEND_INTERFACES_H
21
22#include "zend.h"
23#include "zend_API.h"
24
26
34
40
41ZEND_API zval* zend_call_method(zend_object *object, zend_class_entry *obj_ce, zend_function **fn_proxy, const char *function_name, size_t function_name_len, zval *retval, uint32_t param_count, zval* arg1, zval* arg2);
42
43static zend_always_inline zval* zend_call_method_with_0_params(zend_object *object, zend_class_entry *obj_ce,
44 zend_function **fn_proxy, const char *function_name, zval *retval)
45{
46 return zend_call_method(object, obj_ce, fn_proxy, function_name, strlen(function_name), retval, 0, NULL, NULL);
47}
48
49static zend_always_inline zval* zend_call_method_with_1_params(zend_object *object, zend_class_entry *obj_ce,
50 zend_function **fn_proxy, const char *function_name, zval *retval, zval* arg1)
51{
52 return zend_call_method(object, obj_ce, fn_proxy, function_name, strlen(function_name), retval, 1, arg1, NULL);
53}
54
55static zend_always_inline zval* zend_call_method_with_2_params(zend_object *object, zend_class_entry *obj_ce,
56 zend_function **fn_proxy, const char *function_name, zval *retval, zval* arg1, zval* arg2)
57{
58 return zend_call_method(object, obj_ce, fn_proxy, function_name, strlen(function_name), retval, 2, arg1, arg2);
59}
60
68
69ZEND_API void zend_user_it_new_iterator(zend_class_entry *ce, zval *object, zval *iterator);
71
73
74ZEND_API int zend_user_serialize(zval *object, unsigned char **buffer, size_t *buf_len, zend_serialize_data *data);
75ZEND_API int zend_user_unserialize(zval *object, zend_class_entry *ce, const unsigned char *buf, size_t buf_len, zend_unserialize_data *data);
76
78
80
81#endif /* ZEND_INTERFACES_H */
zend_long n
Definition ffi.c:4979
zend_ffi_ctype_name_buf buf
Definition ffi.c:4685
#define NULL
Definition gdcache.h:45
unsigned char key[REFLECTION_KEY_LEN]
zend_constant * data
zend_object_iterator it
zend_class_entry * ce
Definition file.h:177
struct _zend_unserialize_data zend_unserialize_data
Definition zend.h:83
struct _zend_serialize_data zend_serialize_data
Definition zend.h:82
struct _zval_struct zval
strlen(string $string)
#define ZEND_API
union _zend_function zend_function
ZEND_API zend_class_entry * zend_ce_countable
ZEND_API zend_class_entry * zend_ce_iterator
ZEND_API zend_class_entry * zend_ce_serializable
ZEND_API zend_class_entry * zend_ce_traversable
ZEND_API zend_class_entry * zend_ce_stringable
ZEND_API zend_class_entry * zend_ce_arrayaccess
ZEND_API zend_class_entry * zend_ce_aggregate
ZEND_API void zend_user_it_invalidate_current(zend_object_iterator *_iter)
ZEND_API void zend_user_it_rewind(zend_object_iterator *_iter)
ZEND_API zend_result zend_user_it_valid(zend_object_iterator *_iter)
ZEND_API int zend_user_unserialize(zval *object, zend_class_entry *ce, const unsigned char *buf, size_t buf_len, zend_unserialize_data *data)
ZEND_API void zend_register_interfaces(void)
ZEND_API void zend_user_it_move_forward(zend_object_iterator *_iter)
ZEND_API void zend_user_it_new_iterator(zend_class_entry *ce, zval *object, zval *iterator)
ZEND_API HashTable * zend_user_it_get_gc(zend_object_iterator *_iter, zval **table, int *n)
ZEND_API int zend_user_serialize(zval *object, unsigned char **buffer, size_t *buf_len, zend_serialize_data *data)
ZEND_API zval * zend_call_method(zend_object *object, zend_class_entry *obj_ce, zend_function **fn_proxy, const char *function_name, size_t function_name_len, zval *retval, uint32_t param_count, zval *arg1, zval *arg2)
ZEND_API zend_object_iterator * zend_user_it_get_new_iterator(zend_class_entry *ce, zval *object, int by_ref)
ZEND_API zend_result zend_create_internal_iterator_zval(zval *return_value, zval *obj)
ZEND_API void zend_user_it_get_current_key(zend_object_iterator *_iter, zval *key)
ZEND_API zval * zend_user_it_get_current_data(zend_object_iterator *_iter)
struct _zend_user_iterator zend_user_iterator
struct _zend_object_iterator zend_object_iterator
#define END_EXTERN_C()
#define zend_always_inline
#define BEGIN_EXTERN_C()
struct _zend_class_entry zend_class_entry
struct _zend_object zend_object
struct _zend_array HashTable
Definition zend_types.h:386
ZEND_RESULT_CODE zend_result
Definition zend_types.h:64
zval retval
zval * return_value
zval * arg1
zval * arg2