php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
php_incomplete_class.h File Reference

Go to the source code of this file.

Macros

#define PHP_IC_ENTRY   php_ce_incomplete_class
 
#define PHP_SET_CLASS_ATTRIBUTES(struc)
 
#define PHP_CLEANUP_CLASS_ATTRIBUTES()
 
#define PHP_CLASS_ATTRIBUTES
 
#define INCOMPLETE_CLASS   "__PHP_Incomplete_Class"
 
#define MAGIC_MEMBER   "__PHP_Incomplete_Class_Name"
 

Functions

PHPAPI void php_register_incomplete_class_handlers (void)
 
PHPAPI zend_stringphp_lookup_class_name (zend_object *object)
 
PHPAPI void php_store_class_name (zval *object, zend_string *name)
 

Variables

PHPAPI zend_class_entryphp_ce_incomplete_class
 

Macro Definition Documentation

◆ INCOMPLETE_CLASS

#define INCOMPLETE_CLASS   "__PHP_Incomplete_Class"

Definition at line 45 of file php_incomplete_class.h.

◆ MAGIC_MEMBER

#define MAGIC_MEMBER   "__PHP_Incomplete_Class_Name"

Definition at line 46 of file php_incomplete_class.h.

◆ PHP_CLASS_ATTRIBUTES

#define PHP_CLASS_ATTRIBUTES
Value:
zend_string *class_name; \
bool incomplete_class ZEND_ATTRIBUTE_UNUSED = 0
struct _zend_string zend_string
#define ZEND_ATTRIBUTE_UNUSED

Definition at line 41 of file php_incomplete_class.h.

◆ PHP_CLEANUP_CLASS_ATTRIBUTES

#define PHP_CLEANUP_CLASS_ATTRIBUTES ( )
Value:
zend_string_release_ex(class_name, 0)
zend_string_release_ex(func->internal_function.function_name, 0)

Definition at line 38 of file php_incomplete_class.h.

◆ PHP_IC_ENTRY

#define PHP_IC_ENTRY   php_ce_incomplete_class

Definition at line 24 of file php_incomplete_class.h.

◆ PHP_SET_CLASS_ATTRIBUTES

#define PHP_SET_CLASS_ATTRIBUTES ( struc)
Value:
/* OBJECTS_FIXME: Fix for new object model */ \
class_name = php_lookup_class_name(Z_OBJ_P(struc)); \
if (!class_name) { \
class_name = zend_string_init(INCOMPLETE_CLASS, sizeof(INCOMPLETE_CLASS) - 1, 0); \
} \
incomplete_class = 1; \
} else { \
class_name = zend_string_copy(Z_OBJCE_P(struc)->name); \
}
php_ce_incomplete_class
PHPAPI zend_string * php_lookup_class_name(zend_object *object)
#define INCOMPLETE_CLASS
#define Z_OBJ_P(zval_p)
Definition zend_types.h:990
#define Z_OBJCE_P(zval_p)
zend_string * name

Definition at line 26 of file php_incomplete_class.h.

Function Documentation

◆ php_lookup_class_name()

PHPAPI zend_string * php_lookup_class_name ( zend_object * object)

Definition at line 126 of file incomplete_class.c.

◆ php_register_incomplete_class_handlers()

PHPAPI void php_register_incomplete_class_handlers ( void )

Definition at line 111 of file incomplete_class.c.

◆ php_store_class_name()

PHPAPI void php_store_class_name ( zval * object,
zend_string * name )

Definition at line 141 of file incomplete_class.c.

Variable Documentation

◆ php_ce_incomplete_class

PHPAPI zend_class_entry* php_ce_incomplete_class
extern

Definition at line 292 of file basic_functions.c.