-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathphp_deepclone.h
More file actions
31 lines (24 loc) · 1.06 KB
/
Copy pathphp_deepclone.h
File metadata and controls
31 lines (24 loc) · 1.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#ifndef PHP_DEEPCLONE_H
#define PHP_DEEPCLONE_H
extern zend_module_entry deepclone_module_entry;
#define phpext_deepclone_ptr &deepclone_module_entry
#define PHP_DEEPCLONE_VERSION "0.8.1"
ZEND_BEGIN_MODULE_GLOBALS(deepclone)
HashTable hydrate_cache;
/* Per-request cache of pre-constructed ReflectionProperty instances, keyed
* by zend_property_info pointer. Used to amortize the construction cost in
* the DEEPCLONE_HYDRATE_NO_LAZY_INIT path. */
HashTable lazy_init_refl_cache;
/* PHP 8.5 cross-class first-class-callable provenance (experimental).
* Maps a const-expr-declared FCC's target op_array.opcodes pointer to the
* class whose constant expression declares it, captured by instrumenting
* ReflectionAttribute::getArguments(). Lazily initialized; request-scoped. */
HashTable attr_provenance;
zend_bool capture_attribute_closures;
ZEND_END_MODULE_GLOBALS(deepclone)
ZEND_EXTERN_MODULE_GLOBALS(deepclone)
#define DC_G(v) ZEND_MODULE_GLOBALS_ACCESSOR(deepclone, v)
#if defined(ZTS) && defined(COMPILE_DL_DEEPCLONE)
ZEND_TSRMLS_CACHE_EXTERN()
#endif
#endif