/* +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ | Copyright (c) 1997-2016 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | | available through the world-wide-web at the following url: | | http://www.php.net/license/3_01.txt | | If you did not receive a copy of the PHP license and are unable to | | obtain it through the world-wide-web, please send a note to | | license@php.net so we can mail you a copy immediately. | +----------------------------------------------------------------------+ | Author: Sascha Schumann <sascha@schumann.cx> | +----------------------------------------------------------------------+ */ /* $Id$ */ #ifndef PHP_INCOMPLETE_CLASS_H #define PHP_INCOMPLETE_CLASS_H #include "ext/standard/basic_functions.h" #define PHP_IC_ENTRY \ BG(incomplete_class) #define PHP_SET_CLASS_ATTRIBUTES(struc) \ /* OBJECTS_FIXME: Fix for new object model */ \ if (Z_OBJ_HT_P(struc)->get_class_entry && \ Z_OBJCE_P(struc) == BG(incomplete_class)) { \ class_name = php_lookup_class_name(struc, &name_len); \ if (!class_name) { \ name_len = sizeof(INCOMPLETE_CLASS) - 1; \ class_name = estrndup(INCOMPLETE_CLASS, name_len); \ } \ free_class_name = 1; \ incomplete_class = 1; \ } else { \ free_class_name = !zend_get_object_classname(struc, (const char **)&class_name, &name_len TSRMLS_CC);\ } #define PHP_CLEANUP_CLASS_ATTRIBUTES() \ if (free_class_name) efree(class_name) #define PHP_CLASS_ATTRIBUTES \ char *class_name; \ zend_uint name_len; \ zend_bool free_class_name = 0; \ zend_bool incomplete_class = 0 #define INCOMPLETE_CLASS "__PHP_Incomplete_Class" #define MAGIC_MEMBER "__PHP_Incomplete_Class_Name" #ifdef __cplusplus extern "C" { #endif PHPAPI zend_class_entry *php_create_incomplete_class(TSRMLS_D); PHPAPI char *php_lookup_class_name(zval *object, zend_uint *nlen); PHPAPI void php_store_class_name(zval *object, const char *name, zend_uint len); #ifdef __cplusplus }; #endif #endif
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
base64.h | File | 1.57 KB | 0644 |
|
basic_functions.h | File | 7.42 KB | 0644 |
|
crc32.h | File | 4.78 KB | 0644 |
|
credits.h | File | 1.7 KB | 0644 |
|
credits_ext.h | File | 5.51 KB | 0644 |
|
credits_sapi.h | File | 1.63 KB | 0644 |
|
crypt_blowfish.h | File | 1.05 KB | 0644 |
|
crypt_freesec.h | File | 662 B | 0644 |
|
css.h | File | 1.21 KB | 0644 |
|
cyr_convert.h | File | 1.24 KB | 0644 |
|
datetime.h | File | 1.37 KB | 0644 |
|
dl.h | File | 1.57 KB | 0644 |
|
exec.h | File | 1.69 KB | 0644 |
|
file.h | File | 4.63 KB | 0644 |
|
flock_compat.h | File | 2.07 KB | 0644 |
|
fsock.h | File | 1.57 KB | 0644 |
|
head.h | File | 1.62 KB | 0644 |
|
html.h | File | 2.71 KB | 0644 |
|
html_tables.h | File | 471.57 KB | 0644 |
|
info.h | File | 20.2 KB | 0644 |
|
md5.h | File | 2.12 KB | 0644 |
|
microtime.h | File | 1.33 KB | 0644 |
|
pack.h | File | 1.25 KB | 0644 |
|
pageinfo.h | File | 1.44 KB | 0644 |
|
php_array.h | File | 4.62 KB | 0644 |
|
php_assert.h | File | 1.4 KB | 0644 |
|
php_browscap.h | File | 1.3 KB | 0644 |
|
php_crypt.h | File | 1.63 KB | 0644 |
|
php_crypt_r.h | File | 2 KB | 0644 |
|
php_dir.h | File | 1.67 KB | 0644 |
|
php_dns.h | File | 2.82 KB | 0644 |
|
php_ext_syslog.h | File | 1.47 KB | 0644 |
|
php_filestat.h | File | 3.28 KB | 0644 |
|
php_fopen_wrappers.h | File | 1.92 KB | 0644 |
|
php_ftok.h | File | 1.23 KB | 0644 |
|
php_http.h | File | 1.76 KB | 0644 |
|
php_image.h | File | 2.37 KB | 0644 |
|
php_incomplete_class.h | File | 2.47 KB | 0644 |
|
php_iptc.h | File | 1.24 KB | 0644 |
|
php_lcg.h | File | 1.5 KB | 0644 |
|
php_link.h | File | 1.34 KB | 0644 |
|
php_mail.h | File | 1.37 KB | 0644 |
|
php_math.h | File | 4.61 KB | 0644 |
|
php_metaphone.h | File | 1.21 KB | 0644 |
|
php_password.h | File | 1.58 KB | 0644 |
|
php_rand.h | File | 2.56 KB | 0644 |
|
php_smart_str.h | File | 6.57 KB | 0644 |
|
php_smart_str_public.h | File | 1.29 KB | 0644 |
|
php_standard.h | File | 2.21 KB | 0644 |
|
php_string.h | File | 6.23 KB | 0644 |
|
php_type.h | File | 1.58 KB | 0644 |
|
php_uuencode.h | File | 1.46 KB | 0644 |
|
php_var.h | File | 7.33 KB | 0644 |
|
php_versioning.h | File | 1.37 KB | 0644 |
|
proc_open.h | File | 1.81 KB | 0644 |
|
quot_print.h | File | 1.51 KB | 0644 |
|
scanf.h | File | 2.27 KB | 0644 |
|
sha1.h | File | 1.71 KB | 0644 |
|
streamsfuncs.h | File | 2.78 KB | 0644 |
|
uniqid.h | File | 1.24 KB | 0644 |
|
url.h | File | 2.28 KB | 0644 |
|
url_scanner_ex.h | File | 2.09 KB | 0644 |
|
winver.h | File | 6.58 KB | 0644 |
|