mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
Declare ext/reflection constants in stubs (#9111)
This commit is contained in:
parent
c854816b65
commit
e4d79ce24c
3 changed files with 242 additions and 35 deletions
|
@ -45,6 +45,9 @@
|
||||||
#include "zend_smart_str.h"
|
#include "zend_smart_str.h"
|
||||||
#include "zend_enum.h"
|
#include "zend_enum.h"
|
||||||
#include "zend_fibers.h"
|
#include "zend_fibers.h"
|
||||||
|
|
||||||
|
#define REFLECTION_ATTRIBUTE_IS_INSTANCEOF (1 << 1)
|
||||||
|
|
||||||
#include "php_reflection_arginfo.h"
|
#include "php_reflection_arginfo.h"
|
||||||
|
|
||||||
/* Key used to avoid leaking addresses in ReflectionProperty::getId() */
|
/* Key used to avoid leaking addresses in ReflectionProperty::getId() */
|
||||||
|
@ -115,12 +118,6 @@ PHPAPI zend_class_entry *reflection_fiber_ptr;
|
||||||
target = intern->ptr; \
|
target = intern->ptr; \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
/* Class constants */
|
|
||||||
#define REGISTER_REFLECTION_CLASS_CONST_LONG(class_name, const_name, value) \
|
|
||||||
zend_declare_class_constant_long(reflection_ ## class_name ## _ptr, const_name, sizeof(const_name)-1, (zend_long)value);
|
|
||||||
|
|
||||||
#define REFLECTION_ATTRIBUTE_IS_INSTANCEOF (1 << 1)
|
|
||||||
|
|
||||||
/* {{{ Object structure */
|
/* {{{ Object structure */
|
||||||
|
|
||||||
/* Struct for properties */
|
/* Struct for properties */
|
||||||
|
@ -7135,8 +7132,6 @@ PHP_MINIT_FUNCTION(reflection) /* {{{ */
|
||||||
reflection_function_ptr = register_class_ReflectionFunction(reflection_function_abstract_ptr);
|
reflection_function_ptr = register_class_ReflectionFunction(reflection_function_abstract_ptr);
|
||||||
reflection_function_ptr->create_object = reflection_objects_new;
|
reflection_function_ptr->create_object = reflection_objects_new;
|
||||||
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(function, "IS_DEPRECATED", ZEND_ACC_DEPRECATED);
|
|
||||||
|
|
||||||
reflection_generator_ptr = register_class_ReflectionGenerator();
|
reflection_generator_ptr = register_class_ReflectionGenerator();
|
||||||
reflection_generator_ptr->create_object = reflection_objects_new;
|
reflection_generator_ptr->create_object = reflection_objects_new;
|
||||||
|
|
||||||
|
@ -7158,42 +7153,18 @@ PHP_MINIT_FUNCTION(reflection) /* {{{ */
|
||||||
reflection_method_ptr = register_class_ReflectionMethod(reflection_function_abstract_ptr);
|
reflection_method_ptr = register_class_ReflectionMethod(reflection_function_abstract_ptr);
|
||||||
reflection_method_ptr->create_object = reflection_objects_new;
|
reflection_method_ptr->create_object = reflection_objects_new;
|
||||||
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(method, "IS_STATIC", ZEND_ACC_STATIC);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(method, "IS_PUBLIC", ZEND_ACC_PUBLIC);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(method, "IS_PROTECTED", ZEND_ACC_PROTECTED);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(method, "IS_PRIVATE", ZEND_ACC_PRIVATE);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(method, "IS_ABSTRACT", ZEND_ACC_ABSTRACT);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(method, "IS_FINAL", ZEND_ACC_FINAL);
|
|
||||||
|
|
||||||
reflection_class_ptr = register_class_ReflectionClass(reflector_ptr);
|
reflection_class_ptr = register_class_ReflectionClass(reflector_ptr);
|
||||||
reflection_class_ptr->create_object = reflection_objects_new;
|
reflection_class_ptr->create_object = reflection_objects_new;
|
||||||
|
|
||||||
/* IS_IMPLICIT_ABSTRACT is not longer used */
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(class, "IS_IMPLICIT_ABSTRACT", ZEND_ACC_IMPLICIT_ABSTRACT_CLASS);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(class, "IS_EXPLICIT_ABSTRACT", ZEND_ACC_EXPLICIT_ABSTRACT_CLASS);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(class, "IS_FINAL", ZEND_ACC_FINAL);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(class, "IS_READONLY", ZEND_ACC_READONLY_CLASS);
|
|
||||||
|
|
||||||
reflection_object_ptr = register_class_ReflectionObject(reflection_class_ptr);
|
reflection_object_ptr = register_class_ReflectionObject(reflection_class_ptr);
|
||||||
reflection_object_ptr->create_object = reflection_objects_new;
|
reflection_object_ptr->create_object = reflection_objects_new;
|
||||||
|
|
||||||
reflection_property_ptr = register_class_ReflectionProperty(reflector_ptr);
|
reflection_property_ptr = register_class_ReflectionProperty(reflector_ptr);
|
||||||
reflection_property_ptr->create_object = reflection_objects_new;
|
reflection_property_ptr->create_object = reflection_objects_new;
|
||||||
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(property, "IS_STATIC", ZEND_ACC_STATIC);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(property, "IS_READONLY", ZEND_ACC_READONLY);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(property, "IS_PUBLIC", ZEND_ACC_PUBLIC);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(property, "IS_PROTECTED", ZEND_ACC_PROTECTED);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(property, "IS_PRIVATE", ZEND_ACC_PRIVATE);
|
|
||||||
|
|
||||||
reflection_class_constant_ptr = register_class_ReflectionClassConstant(reflector_ptr);
|
reflection_class_constant_ptr = register_class_ReflectionClassConstant(reflector_ptr);
|
||||||
reflection_class_constant_ptr->create_object = reflection_objects_new;
|
reflection_class_constant_ptr->create_object = reflection_objects_new;
|
||||||
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(class_constant, "IS_PUBLIC", ZEND_ACC_PUBLIC);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(class_constant, "IS_PROTECTED", ZEND_ACC_PROTECTED);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(class_constant, "IS_PRIVATE", ZEND_ACC_PRIVATE);
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(class_constant, "IS_FINAL", ZEND_ACC_FINAL);
|
|
||||||
|
|
||||||
reflection_extension_ptr = register_class_ReflectionExtension(reflector_ptr);
|
reflection_extension_ptr = register_class_ReflectionExtension(reflector_ptr);
|
||||||
reflection_extension_ptr->create_object = reflection_objects_new;
|
reflection_extension_ptr->create_object = reflection_objects_new;
|
||||||
|
|
||||||
|
@ -7218,8 +7189,6 @@ PHP_MINIT_FUNCTION(reflection) /* {{{ */
|
||||||
reflection_fiber_ptr = register_class_ReflectionFiber();
|
reflection_fiber_ptr = register_class_ReflectionFiber();
|
||||||
reflection_fiber_ptr->create_object = reflection_objects_new;
|
reflection_fiber_ptr->create_object = reflection_objects_new;
|
||||||
|
|
||||||
REGISTER_REFLECTION_CLASS_CONST_LONG(attribute, "IS_INSTANCEOF", REFLECTION_ATTRIBUTE_IS_INSTANCEOF);
|
|
||||||
|
|
||||||
REFLECTION_G(key_initialized) = 0;
|
REFLECTION_G(key_initialized) = 0;
|
||||||
|
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
|
|
|
@ -113,6 +113,12 @@ abstract class ReflectionFunctionAbstract implements Reflector
|
||||||
|
|
||||||
class ReflectionFunction extends ReflectionFunctionAbstract
|
class ReflectionFunction extends ReflectionFunctionAbstract
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_DEPRECATED
|
||||||
|
*/
|
||||||
|
public const IS_DEPRECATED = UNKNOWN;
|
||||||
|
|
||||||
public function __construct(Closure|string $function) {}
|
public function __construct(Closure|string $function) {}
|
||||||
|
|
||||||
public function __toString(): string {}
|
public function __toString(): string {}
|
||||||
|
@ -161,6 +167,37 @@ final class ReflectionGenerator
|
||||||
|
|
||||||
class ReflectionMethod extends ReflectionFunctionAbstract
|
class ReflectionMethod extends ReflectionFunctionAbstract
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_STATIC
|
||||||
|
*/
|
||||||
|
public const IS_STATIC = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_PUBLIC
|
||||||
|
*/
|
||||||
|
public const IS_PUBLIC = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_PROTECTED
|
||||||
|
*/
|
||||||
|
public const IS_PROTECTED = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_PRIVATE
|
||||||
|
*/
|
||||||
|
public const IS_PRIVATE = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_ABSTRACT
|
||||||
|
*/
|
||||||
|
public const IS_ABSTRACT = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_FINAL
|
||||||
|
*/
|
||||||
|
public const IS_FINAL = UNKNOWN;
|
||||||
|
|
||||||
public string $class;
|
public string $class;
|
||||||
|
|
||||||
public function __construct(object|string $objectOrMethod, ?string $method = null) {}
|
public function __construct(object|string $objectOrMethod, ?string $method = null) {}
|
||||||
|
@ -215,6 +252,28 @@ class ReflectionMethod extends ReflectionFunctionAbstract
|
||||||
/** @not-serializable */
|
/** @not-serializable */
|
||||||
class ReflectionClass implements Reflector
|
class ReflectionClass implements Reflector
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_IMPLICIT_ABSTRACT_CLASS
|
||||||
|
* @todo deprecate
|
||||||
|
*/
|
||||||
|
public const IS_IMPLICIT_ABSTRACT = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_EXPLICIT_ABSTRACT_CLASS
|
||||||
|
*/
|
||||||
|
public const IS_EXPLICIT_ABSTRACT = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_FINAL
|
||||||
|
*/
|
||||||
|
public const IS_FINAL = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_READONLY_CLASS
|
||||||
|
*/
|
||||||
|
public const IS_READONLY = UNKNOWN;
|
||||||
|
|
||||||
public string $name;
|
public string $name;
|
||||||
|
|
||||||
private function __clone(): void {}
|
private function __clone(): void {}
|
||||||
|
@ -391,6 +450,32 @@ class ReflectionObject extends ReflectionClass
|
||||||
/** @not-serializable */
|
/** @not-serializable */
|
||||||
class ReflectionProperty implements Reflector
|
class ReflectionProperty implements Reflector
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_STATIC
|
||||||
|
*/
|
||||||
|
public const IS_STATIC = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_READONLY
|
||||||
|
*/
|
||||||
|
public const IS_READONLY = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_PUBLIC
|
||||||
|
*/
|
||||||
|
public const IS_PUBLIC = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_PROTECTED
|
||||||
|
*/
|
||||||
|
public const IS_PROTECTED = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_PRIVATE
|
||||||
|
*/
|
||||||
|
public const IS_PRIVATE = UNKNOWN;
|
||||||
|
|
||||||
public string $name;
|
public string $name;
|
||||||
public string $class;
|
public string $class;
|
||||||
|
|
||||||
|
@ -461,6 +546,27 @@ class ReflectionProperty implements Reflector
|
||||||
/** @not-serializable */
|
/** @not-serializable */
|
||||||
class ReflectionClassConstant implements Reflector
|
class ReflectionClassConstant implements Reflector
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_PUBLIC
|
||||||
|
*/
|
||||||
|
public const IS_PUBLIC = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_PROTECTED
|
||||||
|
*/
|
||||||
|
public const IS_PROTECTED = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_PRIVATE
|
||||||
|
*/
|
||||||
|
public const IS_PRIVATE = UNKNOWN;
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue ZEND_ACC_FINAL
|
||||||
|
*/
|
||||||
|
public const IS_FINAL = UNKNOWN;
|
||||||
|
|
||||||
public string $name;
|
public string $name;
|
||||||
public string $class;
|
public string $class;
|
||||||
|
|
||||||
|
@ -704,6 +810,12 @@ final class ReflectionReference
|
||||||
/** @not-serializable */
|
/** @not-serializable */
|
||||||
class ReflectionAttribute implements Reflector
|
class ReflectionAttribute implements Reflector
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* @var int
|
||||||
|
* @cvalue REFLECTION_ATTRIBUTE_IS_INSTANCEOF
|
||||||
|
*/
|
||||||
|
public const IS_INSTANCEOF = UNKNOWN;
|
||||||
|
|
||||||
public function getName(): string {}
|
public function getName(): string {}
|
||||||
public function getTarget(): int {}
|
public function getTarget(): int {}
|
||||||
public function isRepeated(): bool {}
|
public function isRepeated(): bool {}
|
||||||
|
|
128
ext/reflection/php_reflection_arginfo.h
generated
128
ext/reflection/php_reflection_arginfo.h
generated
|
@ -1,5 +1,5 @@
|
||||||
/* This is a generated file, edit the .stub.php file instead.
|
/* This is a generated file, edit the .stub.php file instead.
|
||||||
* Stub hash: 9daec020902840b7f678d787e61e91f7e16ad4da */
|
* Stub hash: 25b36d66ab7fb88b8d44d51e15e530ebff2e1e2c */
|
||||||
|
|
||||||
ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_Reflection_getModifierNames, 0, 1, IS_ARRAY, 0)
|
ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_Reflection_getModifierNames, 0, 1, IS_ARRAY, 0)
|
||||||
ZEND_ARG_TYPE_INFO(0, modifiers, IS_LONG, 0)
|
ZEND_ARG_TYPE_INFO(0, modifiers, IS_LONG, 0)
|
||||||
|
@ -1246,6 +1246,12 @@ static zend_class_entry *register_class_ReflectionFunction(zend_class_entry *cla
|
||||||
INIT_CLASS_ENTRY(ce, "ReflectionFunction", class_ReflectionFunction_methods);
|
INIT_CLASS_ENTRY(ce, "ReflectionFunction", class_ReflectionFunction_methods);
|
||||||
class_entry = zend_register_internal_class_ex(&ce, class_entry_ReflectionFunctionAbstract);
|
class_entry = zend_register_internal_class_ex(&ce, class_entry_ReflectionFunctionAbstract);
|
||||||
|
|
||||||
|
zval const_IS_DEPRECATED_value;
|
||||||
|
ZVAL_LONG(&const_IS_DEPRECATED_value, ZEND_ACC_DEPRECATED);
|
||||||
|
zend_string *const_IS_DEPRECATED_name = zend_string_init_interned("IS_DEPRECATED", sizeof("IS_DEPRECATED") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_DEPRECATED_name, &const_IS_DEPRECATED_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_DEPRECATED_name);
|
||||||
|
|
||||||
return class_entry;
|
return class_entry;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1267,6 +1273,42 @@ static zend_class_entry *register_class_ReflectionMethod(zend_class_entry *class
|
||||||
INIT_CLASS_ENTRY(ce, "ReflectionMethod", class_ReflectionMethod_methods);
|
INIT_CLASS_ENTRY(ce, "ReflectionMethod", class_ReflectionMethod_methods);
|
||||||
class_entry = zend_register_internal_class_ex(&ce, class_entry_ReflectionFunctionAbstract);
|
class_entry = zend_register_internal_class_ex(&ce, class_entry_ReflectionFunctionAbstract);
|
||||||
|
|
||||||
|
zval const_IS_STATIC_value;
|
||||||
|
ZVAL_LONG(&const_IS_STATIC_value, ZEND_ACC_STATIC);
|
||||||
|
zend_string *const_IS_STATIC_name = zend_string_init_interned("IS_STATIC", sizeof("IS_STATIC") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_STATIC_name, &const_IS_STATIC_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_STATIC_name);
|
||||||
|
|
||||||
|
zval const_IS_PUBLIC_value;
|
||||||
|
ZVAL_LONG(&const_IS_PUBLIC_value, ZEND_ACC_PUBLIC);
|
||||||
|
zend_string *const_IS_PUBLIC_name = zend_string_init_interned("IS_PUBLIC", sizeof("IS_PUBLIC") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_PUBLIC_name, &const_IS_PUBLIC_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_PUBLIC_name);
|
||||||
|
|
||||||
|
zval const_IS_PROTECTED_value;
|
||||||
|
ZVAL_LONG(&const_IS_PROTECTED_value, ZEND_ACC_PROTECTED);
|
||||||
|
zend_string *const_IS_PROTECTED_name = zend_string_init_interned("IS_PROTECTED", sizeof("IS_PROTECTED") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_PROTECTED_name, &const_IS_PROTECTED_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_PROTECTED_name);
|
||||||
|
|
||||||
|
zval const_IS_PRIVATE_value;
|
||||||
|
ZVAL_LONG(&const_IS_PRIVATE_value, ZEND_ACC_PRIVATE);
|
||||||
|
zend_string *const_IS_PRIVATE_name = zend_string_init_interned("IS_PRIVATE", sizeof("IS_PRIVATE") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_PRIVATE_name, &const_IS_PRIVATE_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_PRIVATE_name);
|
||||||
|
|
||||||
|
zval const_IS_ABSTRACT_value;
|
||||||
|
ZVAL_LONG(&const_IS_ABSTRACT_value, ZEND_ACC_ABSTRACT);
|
||||||
|
zend_string *const_IS_ABSTRACT_name = zend_string_init_interned("IS_ABSTRACT", sizeof("IS_ABSTRACT") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_ABSTRACT_name, &const_IS_ABSTRACT_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_ABSTRACT_name);
|
||||||
|
|
||||||
|
zval const_IS_FINAL_value;
|
||||||
|
ZVAL_LONG(&const_IS_FINAL_value, ZEND_ACC_FINAL);
|
||||||
|
zend_string *const_IS_FINAL_name = zend_string_init_interned("IS_FINAL", sizeof("IS_FINAL") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_FINAL_name, &const_IS_FINAL_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_FINAL_name);
|
||||||
|
|
||||||
zval property_class_default_value;
|
zval property_class_default_value;
|
||||||
ZVAL_UNDEF(&property_class_default_value);
|
ZVAL_UNDEF(&property_class_default_value);
|
||||||
zend_string *property_class_name = zend_string_init("class", sizeof("class") - 1, 1);
|
zend_string *property_class_name = zend_string_init("class", sizeof("class") - 1, 1);
|
||||||
|
@ -1285,6 +1327,30 @@ static zend_class_entry *register_class_ReflectionClass(zend_class_entry *class_
|
||||||
class_entry->ce_flags |= ZEND_ACC_NOT_SERIALIZABLE;
|
class_entry->ce_flags |= ZEND_ACC_NOT_SERIALIZABLE;
|
||||||
zend_class_implements(class_entry, 1, class_entry_Reflector);
|
zend_class_implements(class_entry, 1, class_entry_Reflector);
|
||||||
|
|
||||||
|
zval const_IS_IMPLICIT_ABSTRACT_value;
|
||||||
|
ZVAL_LONG(&const_IS_IMPLICIT_ABSTRACT_value, ZEND_ACC_IMPLICIT_ABSTRACT_CLASS);
|
||||||
|
zend_string *const_IS_IMPLICIT_ABSTRACT_name = zend_string_init_interned("IS_IMPLICIT_ABSTRACT", sizeof("IS_IMPLICIT_ABSTRACT") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_IMPLICIT_ABSTRACT_name, &const_IS_IMPLICIT_ABSTRACT_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_IMPLICIT_ABSTRACT_name);
|
||||||
|
|
||||||
|
zval const_IS_EXPLICIT_ABSTRACT_value;
|
||||||
|
ZVAL_LONG(&const_IS_EXPLICIT_ABSTRACT_value, ZEND_ACC_EXPLICIT_ABSTRACT_CLASS);
|
||||||
|
zend_string *const_IS_EXPLICIT_ABSTRACT_name = zend_string_init_interned("IS_EXPLICIT_ABSTRACT", sizeof("IS_EXPLICIT_ABSTRACT") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_EXPLICIT_ABSTRACT_name, &const_IS_EXPLICIT_ABSTRACT_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_EXPLICIT_ABSTRACT_name);
|
||||||
|
|
||||||
|
zval const_IS_FINAL_value;
|
||||||
|
ZVAL_LONG(&const_IS_FINAL_value, ZEND_ACC_FINAL);
|
||||||
|
zend_string *const_IS_FINAL_name = zend_string_init_interned("IS_FINAL", sizeof("IS_FINAL") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_FINAL_name, &const_IS_FINAL_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_FINAL_name);
|
||||||
|
|
||||||
|
zval const_IS_READONLY_value;
|
||||||
|
ZVAL_LONG(&const_IS_READONLY_value, ZEND_ACC_READONLY_CLASS);
|
||||||
|
zend_string *const_IS_READONLY_name = zend_string_init_interned("IS_READONLY", sizeof("IS_READONLY") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_READONLY_name, &const_IS_READONLY_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_READONLY_name);
|
||||||
|
|
||||||
zval property_name_default_value;
|
zval property_name_default_value;
|
||||||
ZVAL_UNDEF(&property_name_default_value);
|
ZVAL_UNDEF(&property_name_default_value);
|
||||||
zend_string *property_name_name = zend_string_init("name", sizeof("name") - 1, 1);
|
zend_string *property_name_name = zend_string_init("name", sizeof("name") - 1, 1);
|
||||||
|
@ -1313,6 +1379,36 @@ static zend_class_entry *register_class_ReflectionProperty(zend_class_entry *cla
|
||||||
class_entry->ce_flags |= ZEND_ACC_NOT_SERIALIZABLE;
|
class_entry->ce_flags |= ZEND_ACC_NOT_SERIALIZABLE;
|
||||||
zend_class_implements(class_entry, 1, class_entry_Reflector);
|
zend_class_implements(class_entry, 1, class_entry_Reflector);
|
||||||
|
|
||||||
|
zval const_IS_STATIC_value;
|
||||||
|
ZVAL_LONG(&const_IS_STATIC_value, ZEND_ACC_STATIC);
|
||||||
|
zend_string *const_IS_STATIC_name = zend_string_init_interned("IS_STATIC", sizeof("IS_STATIC") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_STATIC_name, &const_IS_STATIC_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_STATIC_name);
|
||||||
|
|
||||||
|
zval const_IS_READONLY_value;
|
||||||
|
ZVAL_LONG(&const_IS_READONLY_value, ZEND_ACC_READONLY);
|
||||||
|
zend_string *const_IS_READONLY_name = zend_string_init_interned("IS_READONLY", sizeof("IS_READONLY") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_READONLY_name, &const_IS_READONLY_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_READONLY_name);
|
||||||
|
|
||||||
|
zval const_IS_PUBLIC_value;
|
||||||
|
ZVAL_LONG(&const_IS_PUBLIC_value, ZEND_ACC_PUBLIC);
|
||||||
|
zend_string *const_IS_PUBLIC_name = zend_string_init_interned("IS_PUBLIC", sizeof("IS_PUBLIC") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_PUBLIC_name, &const_IS_PUBLIC_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_PUBLIC_name);
|
||||||
|
|
||||||
|
zval const_IS_PROTECTED_value;
|
||||||
|
ZVAL_LONG(&const_IS_PROTECTED_value, ZEND_ACC_PROTECTED);
|
||||||
|
zend_string *const_IS_PROTECTED_name = zend_string_init_interned("IS_PROTECTED", sizeof("IS_PROTECTED") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_PROTECTED_name, &const_IS_PROTECTED_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_PROTECTED_name);
|
||||||
|
|
||||||
|
zval const_IS_PRIVATE_value;
|
||||||
|
ZVAL_LONG(&const_IS_PRIVATE_value, ZEND_ACC_PRIVATE);
|
||||||
|
zend_string *const_IS_PRIVATE_name = zend_string_init_interned("IS_PRIVATE", sizeof("IS_PRIVATE") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_PRIVATE_name, &const_IS_PRIVATE_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_PRIVATE_name);
|
||||||
|
|
||||||
zval property_name_default_value;
|
zval property_name_default_value;
|
||||||
ZVAL_UNDEF(&property_name_default_value);
|
ZVAL_UNDEF(&property_name_default_value);
|
||||||
zend_string *property_name_name = zend_string_init("name", sizeof("name") - 1, 1);
|
zend_string *property_name_name = zend_string_init("name", sizeof("name") - 1, 1);
|
||||||
|
@ -1337,6 +1433,30 @@ static zend_class_entry *register_class_ReflectionClassConstant(zend_class_entry
|
||||||
class_entry->ce_flags |= ZEND_ACC_NOT_SERIALIZABLE;
|
class_entry->ce_flags |= ZEND_ACC_NOT_SERIALIZABLE;
|
||||||
zend_class_implements(class_entry, 1, class_entry_Reflector);
|
zend_class_implements(class_entry, 1, class_entry_Reflector);
|
||||||
|
|
||||||
|
zval const_IS_PUBLIC_value;
|
||||||
|
ZVAL_LONG(&const_IS_PUBLIC_value, ZEND_ACC_PUBLIC);
|
||||||
|
zend_string *const_IS_PUBLIC_name = zend_string_init_interned("IS_PUBLIC", sizeof("IS_PUBLIC") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_PUBLIC_name, &const_IS_PUBLIC_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_PUBLIC_name);
|
||||||
|
|
||||||
|
zval const_IS_PROTECTED_value;
|
||||||
|
ZVAL_LONG(&const_IS_PROTECTED_value, ZEND_ACC_PROTECTED);
|
||||||
|
zend_string *const_IS_PROTECTED_name = zend_string_init_interned("IS_PROTECTED", sizeof("IS_PROTECTED") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_PROTECTED_name, &const_IS_PROTECTED_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_PROTECTED_name);
|
||||||
|
|
||||||
|
zval const_IS_PRIVATE_value;
|
||||||
|
ZVAL_LONG(&const_IS_PRIVATE_value, ZEND_ACC_PRIVATE);
|
||||||
|
zend_string *const_IS_PRIVATE_name = zend_string_init_interned("IS_PRIVATE", sizeof("IS_PRIVATE") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_PRIVATE_name, &const_IS_PRIVATE_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_PRIVATE_name);
|
||||||
|
|
||||||
|
zval const_IS_FINAL_value;
|
||||||
|
ZVAL_LONG(&const_IS_FINAL_value, ZEND_ACC_FINAL);
|
||||||
|
zend_string *const_IS_FINAL_name = zend_string_init_interned("IS_FINAL", sizeof("IS_FINAL") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_FINAL_name, &const_IS_FINAL_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_FINAL_name);
|
||||||
|
|
||||||
zval property_name_default_value;
|
zval property_name_default_value;
|
||||||
ZVAL_UNDEF(&property_name_default_value);
|
ZVAL_UNDEF(&property_name_default_value);
|
||||||
zend_string *property_name_name = zend_string_init("name", sizeof("name") - 1, 1);
|
zend_string *property_name_name = zend_string_init("name", sizeof("name") - 1, 1);
|
||||||
|
@ -1468,6 +1588,12 @@ static zend_class_entry *register_class_ReflectionAttribute(zend_class_entry *cl
|
||||||
class_entry->ce_flags |= ZEND_ACC_NOT_SERIALIZABLE;
|
class_entry->ce_flags |= ZEND_ACC_NOT_SERIALIZABLE;
|
||||||
zend_class_implements(class_entry, 1, class_entry_Reflector);
|
zend_class_implements(class_entry, 1, class_entry_Reflector);
|
||||||
|
|
||||||
|
zval const_IS_INSTANCEOF_value;
|
||||||
|
ZVAL_LONG(&const_IS_INSTANCEOF_value, REFLECTION_ATTRIBUTE_IS_INSTANCEOF);
|
||||||
|
zend_string *const_IS_INSTANCEOF_name = zend_string_init_interned("IS_INSTANCEOF", sizeof("IS_INSTANCEOF") - 1, 1);
|
||||||
|
zend_declare_class_constant_ex(class_entry, const_IS_INSTANCEOF_name, &const_IS_INSTANCEOF_value, ZEND_ACC_PUBLIC, NULL);
|
||||||
|
zend_string_release(const_IS_INSTANCEOF_name);
|
||||||
|
|
||||||
return class_entry;
|
return class_entry;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue