php-internal-docs 8.4.8
Unofficial docs for php/php-src
|
#include <stdint.h>
#include "zend_hash.h"
#include "zend_types.h"
#include "zend_property_hooks.h"
#include "zend_lazy_objects.h"
Go to the source code of this file.
Data Structures | |
struct | _zend_object_handlers |
Variables | |
const ZEND_API zend_object_handlers | std_object_handlers |
Definition at line 45 of file zend_object_handlers.h.
Definition at line 43 of file zend_object_handlers.h.
Definition at line 78 of file zend_object_handlers.h.
Definition at line 41 of file zend_object_handlers.h.
Definition at line 42 of file zend_object_handlers.h.
Definition at line 352 of file zend_object_handlers.h.
Definition at line 79 of file zend_object_handlers.h.
#define ZEND_DYNAMIC_PROPERTY_OFFSET ((uintptr_t)(intptr_t)(-1)) |
Definition at line 35 of file zend_object_handlers.h.
Definition at line 80 of file zend_object_handlers.h.
#define ZEND_FIRST_PROPERTY_OFFSET (1 << 4) |
Definition at line 40 of file zend_object_handlers.h.
Definition at line 340 of file zend_object_handlers.h.
Definition at line 241 of file zend_object_handlers.h.
#define zend_get_std_object_handlers | ( | ) |
Definition at line 238 of file zend_object_handlers.h.
Definition at line 54 of file zend_object_handlers.h.
Definition at line 50 of file zend_object_handlers.h.
Definition at line 52 of file zend_object_handlers.h.
#define ZEND_PROPERTY_EXISTS 0x2 /* Property exists */ |
Definition at line 246 of file zend_object_handlers.h.
Definition at line 49 of file zend_object_handlers.h.
Definition at line 47 of file zend_object_handlers.h.
Definition at line 48 of file zend_object_handlers.h.
Definition at line 244 of file zend_object_handlers.h.
#define ZEND_PROPERTY_NOT_EMPTY ZEND_ISEMPTY /* Property is not empty */ |
Definition at line 245 of file zend_object_handlers.h.
Definition at line 334 of file zend_object_handlers.h.
#define ZEND_SET_PROPERTY_HOOK_SIMPLE_GET | ( | cache_slot | ) |
Definition at line 70 of file zend_object_handlers.h.
#define ZEND_SET_PROPERTY_HOOK_SIMPLE_READ | ( | cache_slot | ) |
Definition at line 56 of file zend_object_handlers.h.
#define ZEND_SET_PROPERTY_HOOK_SIMPLE_WRITE | ( | cache_slot | ) |
Definition at line 63 of file zend_object_handlers.h.
Definition at line 290 of file zend_object_handlers.h.
#define ZEND_WRONG_PROPERTY_INFO ((struct _zend_property_info*)((intptr_t)-1)) |
Definition at line 32 of file zend_object_handlers.h.
typedef zend_result(* zend_object_cast_t) (zend_object *readobj, zval *retval, int type) |
Definition at line 193 of file zend_object_handlers.h.
typedef zend_object *(* zend_object_clone_obj_t) (zend_object *object) |
Definition at line 182 of file zend_object_handlers.h.
Definition at line 188 of file zend_object_handlers.h.
typedef zend_result(* zend_object_count_elements_t) (zend_object *object, zend_long *count) |
Definition at line 197 of file zend_object_handlers.h.
typedef zend_result(* zend_object_do_operation_t) (uint8_t opcode, zval *result, zval *op1, zval *op2) |
Definition at line 203 of file zend_object_handlers.h.
typedef void(* zend_object_dtor_obj_t) (zend_object *object) |
Definition at line 180 of file zend_object_handlers.h.
typedef void(* zend_object_free_obj_t) (zend_object *object) |
Definition at line 167 of file zend_object_handlers.h.
typedef zend_string *(* zend_object_get_class_name_t) (const zend_object *object) |
Definition at line 186 of file zend_object_handlers.h.
typedef zend_result(* zend_object_get_closure_t) (zend_object *obj, zend_class_entry **ce_ptr, zend_function **fptr_ptr, zend_object **obj_ptr, bool check_only) |
Definition at line 199 of file zend_object_handlers.h.
typedef zend_function *(* zend_object_get_constructor_t) (zend_object *object) |
Definition at line 157 of file zend_object_handlers.h.
typedef HashTable *(* zend_object_get_debug_info_t) (zend_object *object, int *is_temp) |
Definition at line 128 of file zend_object_handlers.h.
typedef HashTable *(* zend_object_get_gc_t) (zend_object *object, zval **table, int *n) |
Definition at line 201 of file zend_object_handlers.h.
typedef zend_function *(* zend_object_get_method_t) (zend_object **object, zend_string *method, const zval *key) |
Definition at line 156 of file zend_object_handlers.h.
typedef zend_array *(* zend_object_get_properties_for_t) (zend_object *object, zend_prop_purpose purpose) |
Definition at line 150 of file zend_object_handlers.h.
typedef HashTable *(* zend_object_get_properties_t) (zend_object *object) |
Definition at line 126 of file zend_object_handlers.h.
typedef zval *(* zend_object_get_property_ptr_ptr_t) (zend_object *object, zend_string *member, int type, void **cache_slot) |
Definition at line 106 of file zend_object_handlers.h.
typedef int(* zend_object_has_dimension_t) (zend_object *object, zval *member, int check_empty) |
Definition at line 117 of file zend_object_handlers.h.
typedef int(* zend_object_has_property_t) (zend_object *object, zend_string *member, int has_set_exists, void **cache_slot) |
Definition at line 114 of file zend_object_handlers.h.
typedef zval *(* zend_object_read_dimension_t) (zend_object *object, zval *offset, int type, zval *rv) |
Definition at line 87 of file zend_object_handlers.h.
typedef zval *(* zend_object_read_property_t) (zend_object *object, zend_string *member, int type, void **cache_slot, zval *rv) |
Definition at line 84 of file zend_object_handlers.h.
typedef void(* zend_object_unset_dimension_t) (zend_object *object, zval *offset) |
Definition at line 123 of file zend_object_handlers.h.
typedef void(* zend_object_unset_property_t) (zend_object *object, zend_string *member, void **cache_slot) |
Definition at line 120 of file zend_object_handlers.h.
Definition at line 96 of file zend_object_handlers.h.
typedef zval *(* zend_object_write_property_t) (zend_object *object, zend_string *member, zval *value, void **cache_slot) |
Definition at line 93 of file zend_object_handlers.h.
typedef enum _zend_prop_purpose zend_prop_purpose |
enum _zend_prop_purpose |
Definition at line 130 of file zend_object_handlers.h.
ZEND_API HashTable * rebuild_object_properties_internal | ( | zend_object * | zobj | ) |
Definition at line 75 of file zend_object_handlers.c.
ZEND_API bool ZEND_FASTCALL zend_asymmetric_property_has_set_access | ( | const zend_property_info * | prop_info | ) |
Definition at line 580 of file zend_object_handlers.c.
ZEND_API zend_result zend_check_property_access | ( | const zend_object * | zobj, |
zend_string * | prop_info_name, | ||
bool | is_dynamic ) |
Definition at line 534 of file zend_object_handlers.c.
ZEND_API bool zend_check_protected | ( | const zend_class_entry * | ce, |
const zend_class_entry * | scope ) |
Definition at line 1639 of file zend_object_handlers.c.
ZEND_API void zend_class_init_statics | ( | zend_class_entry * | ce | ) |
Definition at line 1993 of file zend_object_handlers.c.
ZEND_API zend_function * zend_get_call_trampoline_func | ( | const zend_class_entry * | ce, |
zend_string * | method_name, | ||
bool | is_static ) |
Definition at line 1666 of file zend_object_handlers.c.
ZEND_API HashTable * zend_get_properties_for | ( | zval * | obj, |
zend_prop_purpose | purpose ) |
Definition at line 2528 of file zend_object_handlers.c.
ZEND_API HashTable * zend_get_properties_no_lazy_init | ( | zend_object * | zobj | ) |
Definition at line 151 of file zend_object_handlers.c.
ZEND_API uint32_t * zend_get_property_guard | ( | zend_object * | zobj, |
zend_string * | member ) |
Definition at line 604 of file zend_object_handlers.c.
ZEND_API zend_function * zend_get_property_hook_trampoline | ( | const zend_property_info * | prop_info, |
zend_property_hook_kind | kind, | ||
zend_string * | prop_name ) |
Definition at line 1775 of file zend_object_handlers.c.
ZEND_API struct _zend_property_info * zend_get_property_info | ( | const zend_class_entry * | ce, |
zend_string * | member, | ||
int | silent ) |
Definition at line 469 of file zend_object_handlers.c.
ZEND_API uint32_t * zend_get_recursion_guard | ( | zend_object * | zobj | ) |
Definition at line 652 of file zend_object_handlers.c.
Definition at line 2246 of file zend_object_handlers.c.
ZEND_API HashTable * zend_std_build_object_properties_array | ( | zend_object * | zobj | ) |
Definition at line 107 of file zend_object_handlers.c.
ZEND_API zend_result zend_std_cast_object_tostring | ( | zend_object * | object, |
zval * | writeobj, | ||
int | type ) |
Definition at line 2426 of file zend_object_handlers.c.
Definition at line 2128 of file zend_object_handlers.c.
ZEND_API zend_string * zend_std_get_class_name | ( | const zend_object * | zobj | ) |
Definition at line 2420 of file zend_object_handlers.c.
ZEND_API zend_result zend_std_get_closure | ( | zend_object * | obj, |
zend_class_entry ** | ce_ptr, | ||
zend_function ** | fptr_ptr, | ||
zend_object ** | obj_ptr, | ||
bool | check_only ) |
Definition at line 2456 of file zend_object_handlers.c.
ZEND_API zend_function * zend_std_get_constructor | ( | zend_object * | object | ) |
Definition at line 2106 of file zend_object_handlers.c.
ZEND_API HashTable * zend_std_get_debug_info | ( | zend_object * | object, |
int * | is_temp ) |
Definition at line 193 of file zend_object_handlers.c.
ZEND_API HashTable * zend_std_get_gc | ( | zend_object * | object, |
zval ** | table, | ||
int * | n ) |
Definition at line 171 of file zend_object_handlers.c.
ZEND_API zend_function * zend_std_get_method | ( | zend_object ** | obj_ptr, |
zend_string * | method_name, | ||
const zval * | key ) |
Definition at line 1836 of file zend_object_handlers.c.
ZEND_API HashTable * zend_std_get_properties | ( | zend_object * | object | ) |
Definition at line 144 of file zend_object_handlers.c.
ZEND_API HashTable * zend_std_get_properties_for | ( | zend_object * | obj, |
zend_prop_purpose | purpose ) |
Definition at line 2480 of file zend_object_handlers.c.
ZEND_API zval * zend_std_get_property_ptr_ptr | ( | zend_object * | object, |
zend_string * | member, | ||
int | type, | ||
void ** | cache_slot ) |
Definition at line 1375 of file zend_object_handlers.c.
ZEND_API zend_function * zend_std_get_static_method | ( | zend_class_entry * | ce, |
zend_string * | function_name_strval, | ||
const zval * | key ) |
Definition at line 1932 of file zend_object_handlers.c.
ZEND_API zval * zend_std_get_static_property | ( | zend_class_entry * | ce, |
zend_string * | property_name, | ||
int | type ) |
Definition at line 2080 of file zend_object_handlers.c.
ZEND_API zval * zend_std_get_static_property_with_info | ( | zend_class_entry * | ce, |
zend_string * | property_name, | ||
int | type, | ||
struct _zend_property_info ** | prop_info ) |
Definition at line 2017 of file zend_object_handlers.c.
ZEND_API int zend_std_has_dimension | ( | zend_object * | object, |
zval * | offset, | ||
int | check_empty ) |
Definition at line 1346 of file zend_object_handlers.c.
ZEND_API int zend_std_has_property | ( | zend_object * | object, |
zend_string * | member, | ||
int | has_set_exists, | ||
void ** | cache_slot ) |
Definition at line 2252 of file zend_object_handlers.c.
ZEND_API zval * zend_std_read_dimension | ( | zend_object * | object, |
zval * | offset, | ||
int | type, | ||
zval * | rv ) |
Definition at line 1272 of file zend_object_handlers.c.
ZEND_API zval * zend_std_read_property | ( | zend_object * | object, |
zend_string * | member, | ||
int | type, | ||
void ** | cache_slot, | ||
zval * | rv ) |
Definition at line 727 of file zend_object_handlers.c.
ZEND_API void zend_std_unset_dimension | ( | zend_object * | object, |
zval * | offset ) |
Definition at line 1600 of file zend_object_handlers.c.
ZEND_API void zend_std_unset_property | ( | zend_object * | object, |
zend_string * | member, | ||
void ** | cache_slot ) |
Definition at line 1475 of file zend_object_handlers.c.
ZEND_API ZEND_COLD bool zend_std_unset_static_property | ( | zend_class_entry * | ce, |
zend_string * | property_name ) |
Definition at line 2086 of file zend_object_handlers.c.
ZEND_API void zend_std_write_dimension | ( | zend_object * | object, |
zval * | offset, | ||
zval * | value ) |
Definition at line 1323 of file zend_object_handlers.c.
ZEND_API zval * zend_std_write_property | ( | zend_object * | object, |
zend_string * | member, | ||
zval * | value, | ||
void ** | cache_slot ) |
Definition at line 1031 of file zend_object_handlers.c.
|
extern |
Definition at line 2538 of file zend_object_handlers.c.