]> granicus.if.org Git - php/commitdiff
Add stubs for ext-reflection
authorThomas Gerbet <thomas@gerbet.me>
Sun, 13 Oct 2019 18:57:09 +0000 (20:57 +0200)
committerChristoph M. Becker <cmbecker69@gmx.de>
Sat, 26 Oct 2019 10:32:12 +0000 (12:32 +0200)
ext/reflection/php_reflection.c
ext/reflection/reflection.stub.php [new file with mode: 0644]
ext/reflection/reflection_arginfo.h [new file with mode: 0644]
ext/reflection/tests/ReflectionClass_toString_001.phpt
ext/reflection/tests/ReflectionMethod_basic2.phpt

index d3e8a0400680350cce1fc6fc7d1f8ee9abdbd3e5..9f60fc8f74986ab1ea3d727c69c26f7c41b78317 100644 (file)
@@ -41,6 +41,7 @@
 #include "zend_extensions.h"
 #include "zend_builtin_functions.h"
 #include "zend_smart_str.h"
+#include "reflection_arginfo.h"
 
 /* Key used to avoid leaking addresses in ReflectionProperty::getId() */
 #define REFLECTION_KEY_LEN 16
@@ -6201,493 +6202,272 @@ static const zend_function_entry reflection_exception_functions[] = {
        PHP_FE_END
 };
 
-ZEND_BEGIN_ARG_INFO(arginfo_reflection__void, 0)
-ZEND_END_ARG_INFO()
-
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_getModifierNames, 0)
-       ZEND_ARG_INFO(0, modifiers)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_export, 0, 0, 1)
-       ZEND_ARG_OBJ_INFO(0, reflector, Reflector, 0)
-       ZEND_ARG_INFO(0, return)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_functions[] = {
-       ZEND_ME(reflection, getModifierNames, arginfo_reflection_getModifierNames, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
-       ZEND_DEP_ME(reflection, export, arginfo_reflection_export, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
+       ZEND_ME(reflection, getModifierNames, arginfo_class_Reflection_getModifierNames, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
+       ZEND_DEP_ME(reflection, export, arginfo_class_Reflection_export, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
        PHP_FE_END
 };
 
 static const zend_function_entry reflector_functions[] = {
-       ZEND_ABSTRACT_ME(reflector, __toString, arginfo_reflection__void)
+       ZEND_ABSTRACT_ME(reflector, __toString, arginfo_class_Reflector___toString)
        PHP_FE_END
 };
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_function_export, 0, 0, 1)
-       ZEND_ARG_INFO(0, name)
-       ZEND_ARG_INFO(0, return)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_function___construct, 0)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_function_invoke, 0, 0, 0)
-       ZEND_ARG_VARIADIC_INFO(0, args)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_function_invokeArgs, 0)
-       ZEND_ARG_ARRAY_INFO(0, args, 0)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_function_abstract_functions[] = {
-       ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
-       ZEND_ME(reflection_function, inNamespace, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, isClosure, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, isDeprecated, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, isInternal, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, isUserDefined, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, isGenerator, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, isVariadic, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getClosureThis, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getClosureScopeClass, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getDocComment, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getEndLine, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getExtension, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getExtensionName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getFileName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getNamespaceName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getNumberOfParameters, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getNumberOfRequiredParameters, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getParameters, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getShortName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getStartLine, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getStaticVariables, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, returnsReference, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, hasReturnType, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, getReturnType, arginfo_reflection__void, 0)
+       ZEND_ME(reflection, __clone, arginfo_class_ReflectionFunctionAbstract___clone, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
+       ZEND_ME(reflection_function, inNamespace, arginfo_class_ReflectionFunctionAbstract_inNamespace, 0)
+       ZEND_ME(reflection_function, isClosure, arginfo_class_ReflectionFunctionAbstract_isClosure, 0)
+       ZEND_ME(reflection_function, isDeprecated, arginfo_class_ReflectionFunctionAbstract_isDeprecated, 0)
+       ZEND_ME(reflection_function, isInternal, arginfo_class_ReflectionFunctionAbstract_isInternal, 0)
+       ZEND_ME(reflection_function, isUserDefined, arginfo_class_ReflectionFunctionAbstract_isUserDefined, 0)
+       ZEND_ME(reflection_function, isGenerator, arginfo_class_ReflectionFunctionAbstract_isGenerator, 0)
+       ZEND_ME(reflection_function, isVariadic, arginfo_class_ReflectionFunctionAbstract_isVariadic, 0)
+       ZEND_ME(reflection_function, getClosureThis, arginfo_class_ReflectionFunctionAbstract_getClosureThis, 0)
+       ZEND_ME(reflection_function, getClosureScopeClass, arginfo_class_ReflectionFunctionAbstract_getClosureScopeClass, 0)
+       ZEND_ME(reflection_function, getDocComment, arginfo_class_ReflectionFunctionAbstract_getDocComment, 0)
+       ZEND_ME(reflection_function, getEndLine, arginfo_class_ReflectionFunctionAbstract_getEndLine, 0)
+       ZEND_ME(reflection_function, getExtension, arginfo_class_ReflectionFunctionAbstract_getExtension, 0)
+       ZEND_ME(reflection_function, getExtensionName, arginfo_class_ReflectionFunctionAbstract_getExtensionName, 0)
+       ZEND_ME(reflection_function, getFileName, arginfo_class_ReflectionFunctionAbstract_getFileName, 0)
+       ZEND_ME(reflection_function, getName, arginfo_class_ReflectionFunctionAbstract_getName, 0)
+       ZEND_ME(reflection_function, getNamespaceName, arginfo_class_ReflectionFunctionAbstract_getNamespaceName, 0)
+       ZEND_ME(reflection_function, getNumberOfParameters, arginfo_class_ReflectionFunctionAbstract_getNumberOfParameters, 0)
+       ZEND_ME(reflection_function, getNumberOfRequiredParameters, arginfo_class_ReflectionFunctionAbstract_getNumberOfRequiredParameters, 0)
+       ZEND_ME(reflection_function, getParameters, arginfo_class_ReflectionFunctionAbstract_getParameters, 0)
+       ZEND_ME(reflection_function, getShortName, arginfo_class_ReflectionFunctionAbstract_getShortName, 0)
+       ZEND_ME(reflection_function, getStartLine, arginfo_class_ReflectionFunctionAbstract_getStartLine, 0)
+       ZEND_ME(reflection_function, getStaticVariables, arginfo_class_ReflectionFunctionAbstract_getStaticVariables, 0)
+       ZEND_ME(reflection_function, returnsReference, arginfo_class_ReflectionFunctionAbstract_returnsReference, 0)
+       ZEND_ME(reflection_function, hasReturnType, arginfo_class_ReflectionFunctionAbstract_hasReturnType, 0)
+       ZEND_ME(reflection_function, getReturnType, arginfo_class_ReflectionFunctionAbstract_getReturnType, 0)
        PHP_FE_END
 };
 
 static const zend_function_entry reflection_function_functions[] = {
-       ZEND_ME(reflection_function, __construct, arginfo_reflection_function___construct, 0)
-       ZEND_ME(reflection_function, __toString, arginfo_reflection__void, 0)
-       ZEND_DEP_ME(reflection_function, export, arginfo_reflection_function_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
-       ZEND_ME(reflection_function, isDisabled, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_function, invoke, arginfo_reflection_function_invoke, 0)
-       ZEND_ME(reflection_function, invokeArgs, arginfo_reflection_function_invokeArgs, 0)
-       ZEND_ME(reflection_function, getClosure, arginfo_reflection__void, 0)
+       ZEND_ME(reflection_function, __construct, arginfo_class_ReflectionFunction___construct, 0)
+       ZEND_ME(reflection_function, __toString, arginfo_class_ReflectionFunction___toString, 0)
+       ZEND_DEP_ME(reflection_function, export, arginfo_class_ReflectionFunction_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_function, isDisabled, arginfo_class_ReflectionFunction_isDisabled, 0)
+       ZEND_ME(reflection_function, invoke, arginfo_class_ReflectionFunction_invoke, 0)
+       ZEND_ME(reflection_function, invokeArgs, arginfo_class_ReflectionFunction_invokeArgs, 0)
+       ZEND_ME(reflection_function, getClosure, arginfo_class_ReflectionFunction_getClosure, 0)
        PHP_FE_END
 };
 
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_generator___construct, 0)
-       ZEND_ARG_INFO(0, generator)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_generator_trace, 0, 0, 0)
-       ZEND_ARG_INFO(0, options)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_generator_functions[] = {
-       ZEND_ME(reflection_generator, __construct, arginfo_reflection_generator___construct, 0)
-       ZEND_ME(reflection_generator, getExecutingLine, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_generator, getExecutingFile, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_generator, getTrace, arginfo_reflection_generator_trace, 0)
-       ZEND_ME(reflection_generator, getFunction, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_generator, getThis, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_generator, getExecutingGenerator, arginfo_reflection__void, 0)
+       ZEND_ME(reflection_generator, __construct, arginfo_class_ReflectionGenerator___construct, 0)
+       ZEND_ME(reflection_generator, getExecutingLine, arginfo_class_ReflectionGenerator_getExecutingLine, 0)
+       ZEND_ME(reflection_generator, getExecutingFile, arginfo_class_ReflectionGenerator_getExecutingFile, 0)
+       ZEND_ME(reflection_generator, getTrace, arginfo_class_ReflectionGenerator_getTrace, 0)
+       ZEND_ME(reflection_generator, getFunction, arginfo_class_ReflectionGenerator_getFunction, 0)
+       ZEND_ME(reflection_generator, getThis, arginfo_class_ReflectionGenerator_getThis, 0)
+       ZEND_ME(reflection_generator, getExecutingGenerator, arginfo_class_ReflectionGenerator_getExecutingGenerator, 0)
        PHP_FE_END
 };
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_method_export, 0, 0, 2)
-       ZEND_ARG_INFO(0, class)
-       ZEND_ARG_INFO(0, name)
-       ZEND_ARG_INFO(0, return)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_method___construct, 0, 0, 1)
-       ZEND_ARG_INFO(0, class_or_method)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_method_invoke, 0, 0, 1)
-       ZEND_ARG_INFO(0, object)
-       ZEND_ARG_VARIADIC_INFO(0, args)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_method_invokeArgs, 0)
-       ZEND_ARG_INFO(0, object)
-       ZEND_ARG_ARRAY_INFO(0, args, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_method_setAccessible, 0)
-       ZEND_ARG_INFO(0, value)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_method_getClosure, 0, 0, 0)
-       ZEND_ARG_INFO(0, object)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_method_functions[] = {
-       ZEND_DEP_ME(reflection_method, export, arginfo_reflection_method_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
-       ZEND_ME(reflection_method, __construct, arginfo_reflection_method___construct, 0)
-       ZEND_ME(reflection_method, __toString, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, isPublic, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, isPrivate, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, isProtected, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, isAbstract, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, isFinal, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, isStatic, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, isConstructor, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, isDestructor, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, getClosure, arginfo_reflection_method_getClosure, 0)
-       ZEND_ME(reflection_method, getModifiers, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, invoke, arginfo_reflection_method_invoke, 0)
-       ZEND_ME(reflection_method, invokeArgs, arginfo_reflection_method_invokeArgs, 0)
-       ZEND_ME(reflection_method, getDeclaringClass, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, getPrototype, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_method, setAccessible, arginfo_reflection_method_setAccessible, 0)
+       ZEND_DEP_ME(reflection_method, export, arginfo_class_ReflectionMethod_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_method, __construct, arginfo_class_ReflectionMethod___construct, 0)
+       ZEND_ME(reflection_method, __toString, arginfo_class_ReflectionMethod___toString, 0)
+       ZEND_ME(reflection_method, isPublic, arginfo_class_ReflectionMethod_isPublic, 0)
+       ZEND_ME(reflection_method, isPrivate, arginfo_class_ReflectionMethod_isPrivate, 0)
+       ZEND_ME(reflection_method, isProtected, arginfo_class_ReflectionMethod_isProtected, 0)
+       ZEND_ME(reflection_method, isAbstract, arginfo_class_ReflectionMethod_isAbstract, 0)
+       ZEND_ME(reflection_method, isFinal, arginfo_class_ReflectionMethod_isFinal, 0)
+       ZEND_ME(reflection_method, isStatic, arginfo_class_ReflectionMethod_isStatic, 0)
+       ZEND_ME(reflection_method, isConstructor, arginfo_class_ReflectionMethod_isConstructor, 0)
+       ZEND_ME(reflection_method, isDestructor, arginfo_class_ReflectionMethod_isDestructor, 0)
+       ZEND_ME(reflection_method, getClosure, arginfo_class_ReflectionMethod_getClosure, 0)
+       ZEND_ME(reflection_method, getModifiers, arginfo_class_ReflectionMethod_getModifiers, 0)
+       ZEND_ME(reflection_method, invoke, arginfo_class_ReflectionMethod_invoke, 0)
+       ZEND_ME(reflection_method, invokeArgs, arginfo_class_ReflectionMethod_invokeArgs, 0)
+       ZEND_ME(reflection_method, getDeclaringClass, arginfo_class_ReflectionMethod_getDeclaringClass, 0)
+       ZEND_ME(reflection_method, getPrototype, arginfo_class_ReflectionMethod_getPrototype, 0)
+       ZEND_ME(reflection_method, setAccessible, arginfo_class_ReflectionMethod_setAccessible, 0)
        PHP_FE_END
 };
 
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_class_export, 0, 0, 1)
-       ZEND_ARG_INFO(0, argument)
-       ZEND_ARG_INFO(0, return)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class___construct, 0)
-       ZEND_ARG_INFO(0, argument)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_class_getStaticPropertyValue, 0, 0, 1)
-       ZEND_ARG_INFO(0, name)
-       ZEND_ARG_INFO(0, default)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_setStaticPropertyValue, 0)
-       ZEND_ARG_INFO(0, name)
-       ZEND_ARG_INFO(0, value)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_hasMethod, 0)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_getMethod, 0)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_class_getMethods, 0, 0, 0)
-       ZEND_ARG_INFO(0, filter)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_hasProperty, 0)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_getProperty, 0)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_class_getProperties, 0, 0, 0)
-       ZEND_ARG_INFO(0, filter)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_hasConstant, 0)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_getConstant, 0)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_isInstance, 0)
-       ZEND_ARG_INFO(0, object)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_class_newInstance, 0, 0, 0)
-       ZEND_ARG_VARIADIC_INFO(0, args)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_newInstanceWithoutConstructor, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_class_newInstanceArgs, 0, 0, 0)
-       ZEND_ARG_ARRAY_INFO(0, args, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_isSubclassOf, 0)
-       ZEND_ARG_INFO(0, class)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_class_implementsInterface, 0)
-       ZEND_ARG_INFO(0, interface)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_class_functions[] = {
-       ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
-       ZEND_DEP_ME(reflection_class, export, arginfo_reflection_class_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
-       ZEND_ME(reflection_class, __construct, arginfo_reflection_class___construct, 0)
-       ZEND_ME(reflection_class, __toString, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isInternal, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isUserDefined, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isAnonymous, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isInstantiable, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isCloneable, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getFileName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getStartLine, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getEndLine, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getDocComment, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getConstructor, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, hasMethod, arginfo_reflection_class_hasMethod, 0)
-       ZEND_ME(reflection_class, getMethod, arginfo_reflection_class_getMethod, 0)
-       ZEND_ME(reflection_class, getMethods, arginfo_reflection_class_getMethods, 0)
-       ZEND_ME(reflection_class, hasProperty, arginfo_reflection_class_hasProperty, 0)
-       ZEND_ME(reflection_class, getProperty, arginfo_reflection_class_getProperty, 0)
-       ZEND_ME(reflection_class, getProperties, arginfo_reflection_class_getProperties, 0)
-       ZEND_ME(reflection_class, hasConstant, arginfo_reflection_class_hasConstant, 0)
-       ZEND_ME(reflection_class, getConstants, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getReflectionConstants, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getConstant, arginfo_reflection_class_getConstant, 0)
-       ZEND_ME(reflection_class, getReflectionConstant, arginfo_reflection_class_getConstant, 0)
-       ZEND_ME(reflection_class, getInterfaces, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getInterfaceNames, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isInterface, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getTraits, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getTraitNames, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getTraitAliases, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isTrait, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isAbstract, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isFinal, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getModifiers, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isInstance, arginfo_reflection_class_isInstance, 0)
-       ZEND_ME(reflection_class, newInstance, arginfo_reflection_class_newInstance, 0)
-       ZEND_ME(reflection_class, newInstanceWithoutConstructor, arginfo_reflection_class_newInstanceWithoutConstructor, 0)
-       ZEND_ME(reflection_class, newInstanceArgs, arginfo_reflection_class_newInstanceArgs, 0)
-       ZEND_ME(reflection_class, getParentClass, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isSubclassOf, arginfo_reflection_class_isSubclassOf, 0)
-       ZEND_ME(reflection_class, getStaticProperties, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getStaticPropertyValue, arginfo_reflection_class_getStaticPropertyValue, 0)
-       ZEND_ME(reflection_class, setStaticPropertyValue, arginfo_reflection_class_setStaticPropertyValue, 0)
-       ZEND_ME(reflection_class, getDefaultProperties, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, isIterable, arginfo_reflection__void, 0)
-       ZEND_MALIAS(reflection_class, isIterateable, isIterable, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, implementsInterface, arginfo_reflection_class_implementsInterface, 0)
-       ZEND_ME(reflection_class, getExtension, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getExtensionName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, inNamespace, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getNamespaceName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class, getShortName, arginfo_reflection__void, 0)
+       ZEND_ME(reflection, __clone, arginfo_class_ReflectionClass___clone, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
+       ZEND_DEP_ME(reflection_class, export, arginfo_class_ReflectionClass_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_class, __construct, arginfo_class_ReflectionClass___construct, 0)
+       ZEND_ME(reflection_class, __toString, arginfo_class_ReflectionClass___toString, 0)
+       ZEND_ME(reflection_class, getName, arginfo_class_ReflectionClass_getName, 0)
+       ZEND_ME(reflection_class, isInternal, arginfo_class_ReflectionClass_isInternal, 0)
+       ZEND_ME(reflection_class, isUserDefined, arginfo_class_ReflectionClass_isUserDefined, 0)
+       ZEND_ME(reflection_class, isAnonymous, arginfo_class_ReflectionClass_isAnonymous, 0)
+       ZEND_ME(reflection_class, isInstantiable, arginfo_class_ReflectionClass_isInstantiable, 0)
+       ZEND_ME(reflection_class, isCloneable, arginfo_class_ReflectionClass_isCloneable, 0)
+       ZEND_ME(reflection_class, getFileName, arginfo_class_ReflectionClass_getFileName, 0)
+       ZEND_ME(reflection_class, getStartLine, arginfo_class_ReflectionClass_getStartLine, 0)
+       ZEND_ME(reflection_class, getEndLine, arginfo_class_ReflectionClass_getEndLine, 0)
+       ZEND_ME(reflection_class, getDocComment, arginfo_class_ReflectionClass_getDocComment, 0)
+       ZEND_ME(reflection_class, getConstructor, arginfo_class_ReflectionClass_getConstructor, 0)
+       ZEND_ME(reflection_class, hasMethod, arginfo_class_ReflectionClass_hasMethod, 0)
+       ZEND_ME(reflection_class, getMethod, arginfo_class_ReflectionClass_getMethod, 0)
+       ZEND_ME(reflection_class, getMethods, arginfo_class_ReflectionClass_getMethods, 0)
+       ZEND_ME(reflection_class, hasProperty, arginfo_class_ReflectionClass_hasProperty, 0)
+       ZEND_ME(reflection_class, getProperty, arginfo_class_ReflectionClass_getProperty, 0)
+       ZEND_ME(reflection_class, getProperties, arginfo_class_ReflectionClass_getProperties, 0)
+       ZEND_ME(reflection_class, hasConstant, arginfo_class_ReflectionClass_hasConstant, 0)
+       ZEND_ME(reflection_class, getConstants, arginfo_class_ReflectionClass_getConstants, 0)
+       ZEND_ME(reflection_class, getReflectionConstants, arginfo_class_ReflectionClass_getReflectionConstants, 0)
+       ZEND_ME(reflection_class, getConstant, arginfo_class_ReflectionClass_getConstant, 0)
+       ZEND_ME(reflection_class, getReflectionConstant, arginfo_class_ReflectionClass_getReflectionConstant, 0)
+       ZEND_ME(reflection_class, getInterfaces, arginfo_class_ReflectionClass_getInterfaces, 0)
+       ZEND_ME(reflection_class, getInterfaceNames, arginfo_class_ReflectionClass_getInterfaceNames, 0)
+       ZEND_ME(reflection_class, isInterface, arginfo_class_ReflectionClass_isInterface, 0)
+       ZEND_ME(reflection_class, getTraits, arginfo_class_ReflectionClass_getTraits, 0)
+       ZEND_ME(reflection_class, getTraitNames, arginfo_class_ReflectionClass_getTraitNames, 0)
+       ZEND_ME(reflection_class, getTraitAliases, arginfo_class_ReflectionClass_getTraitAliases, 0)
+       ZEND_ME(reflection_class, isTrait, arginfo_class_ReflectionClass_isTrait, 0)
+       ZEND_ME(reflection_class, isAbstract, arginfo_class_ReflectionClass_isAbstract, 0)
+       ZEND_ME(reflection_class, isFinal, arginfo_class_ReflectionClass_isFinal, 0)
+       ZEND_ME(reflection_class, getModifiers, arginfo_class_ReflectionClass_getModifiers, 0)
+       ZEND_ME(reflection_class, isInstance, arginfo_class_ReflectionClass_isIntance, 0)
+       ZEND_ME(reflection_class, newInstance, arginfo_class_ReflectionClass_newInstance, 0)
+       ZEND_ME(reflection_class, newInstanceWithoutConstructor, arginfo_class_ReflectionClass_newInstanceWithoutConstructor, 0)
+       ZEND_ME(reflection_class, newInstanceArgs, arginfo_class_ReflectionClass_newInstanceArgs, 0)
+       ZEND_ME(reflection_class, getParentClass, arginfo_class_ReflectionClass_getParentClass, 0)
+       ZEND_ME(reflection_class, isSubclassOf, arginfo_class_ReflectionClass_isSubclassOf, 0)
+       ZEND_ME(reflection_class, getStaticProperties, arginfo_class_ReflectionClass_getStaticProperties, 0)
+       ZEND_ME(reflection_class, getStaticPropertyValue, arginfo_class_ReflectionClass_getStaticPropertyValue, 0)
+       ZEND_ME(reflection_class, setStaticPropertyValue, arginfo_class_ReflectionClass_setStaticPropertyValue, 0)
+       ZEND_ME(reflection_class, getDefaultProperties, arginfo_class_ReflectionClass_getDefaultProperties, 0)
+       ZEND_ME(reflection_class, isIterable, arginfo_class_ReflectionClass_isIterable, 0)
+       ZEND_MALIAS(reflection_class, isIterateable, isIterable, arginfo_class_ReflectionClass_isIterateable, 0)
+       ZEND_ME(reflection_class, implementsInterface, arginfo_class_ReflectionClass_implementsInterface, 0)
+       ZEND_ME(reflection_class, getExtension, arginfo_class_ReflectionClass_getExtension, 0)
+       ZEND_ME(reflection_class, getExtensionName, arginfo_class_ReflectionClass_getExtensionName, 0)
+       ZEND_ME(reflection_class, inNamespace, arginfo_class_ReflectionClass_inNamespace, 0)
+       ZEND_ME(reflection_class, getNamespaceName, arginfo_class_ReflectionClass_getNamespaceName, 0)
+       ZEND_ME(reflection_class, getShortName, arginfo_class_ReflectionClass_getShortName, 0)
        PHP_FE_END
 };
 
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_object_export, 0, 0, 1)
-       ZEND_ARG_INFO(0, argument)
-       ZEND_ARG_INFO(0, return)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_object___construct, 0)
-       ZEND_ARG_INFO(0, argument)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_object_functions[] = {
-       ZEND_DEP_ME(reflection_object, export, arginfo_reflection_object_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
-       ZEND_ME(reflection_object, __construct, arginfo_reflection_object___construct, 0)
+       ZEND_DEP_ME(reflection_object, export, arginfo_class_ReflectionObject_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_object, __construct, arginfo_class_ReflectionObject___construct, 0)
        PHP_FE_END
 };
 
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_property_export, 0, 0, 2)
-       ZEND_ARG_INFO(0, class)
-       ZEND_ARG_INFO(0, name)
-       ZEND_ARG_INFO(0, return)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_property___construct, 0, 0, 2)
-       ZEND_ARG_INFO(0, class)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_property_getValue, 0, 0, 0)
-       ZEND_ARG_INFO(0, object)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_property_setValue, 0, 0, 1)
-       ZEND_ARG_INFO(0, object)
-       ZEND_ARG_INFO(0, value)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_property_isInitialized, 0, 0, 0)
-       ZEND_ARG_INFO(0, object)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_property_setAccessible, 0)
-       ZEND_ARG_INFO(0, visible)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_property_functions[] = {
-       ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
-       ZEND_DEP_ME(reflection_property, export, arginfo_reflection_property_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
-       ZEND_ME(reflection_property, __construct, arginfo_reflection_property___construct, 0)
-       ZEND_ME(reflection_property, __toString, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, getName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, getValue, arginfo_reflection_property_getValue, 0)
-       ZEND_ME(reflection_property, setValue, arginfo_reflection_property_setValue, 0)
-       ZEND_ME(reflection_property, isInitialized, arginfo_reflection_property_isInitialized, 0)
-       ZEND_ME(reflection_property, isPublic, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, isPrivate, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, isProtected, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, isStatic, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, isDefault, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, getModifiers, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, getDeclaringClass, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, getDocComment, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, setAccessible, arginfo_reflection_property_setAccessible, 0)
-       ZEND_ME(reflection_property, getType, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_property, hasType, arginfo_reflection__void, 0)
+       ZEND_ME(reflection, __clone, arginfo_class_ReflectionProperty___clone, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
+       ZEND_DEP_ME(reflection_property, export, arginfo_class_ReflectionProperty_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_property, __construct, arginfo_class_ReflectionProperty___construct, 0)
+       ZEND_ME(reflection_property, __toString, arginfo_class_ReflectionProperty___toString, 0)
+       ZEND_ME(reflection_property, getName, arginfo_class_ReflectionProperty_getName, 0)
+       ZEND_ME(reflection_property, getValue, arginfo_class_ReflectionProperty_getValue, 0)
+       ZEND_ME(reflection_property, setValue, arginfo_class_ReflectionProperty_setValue, 0)
+       ZEND_ME(reflection_property, isInitialized, arginfo_class_ReflectionProperty_isInitialized, 0)
+       ZEND_ME(reflection_property, isPublic, arginfo_class_ReflectionProperty_isPublic, 0)
+       ZEND_ME(reflection_property, isPrivate, arginfo_class_ReflectionProperty_isPrivate, 0)
+       ZEND_ME(reflection_property, isProtected, arginfo_class_ReflectionProperty_isProtected, 0)
+       ZEND_ME(reflection_property, isStatic, arginfo_class_ReflectionProperty_isStatic, 0)
+       ZEND_ME(reflection_property, isDefault, arginfo_class_ReflectionProperty_isDefault, 0)
+       ZEND_ME(reflection_property, getModifiers, arginfo_class_ReflectionProperty_getModifiers, 0)
+       ZEND_ME(reflection_property, getDeclaringClass, arginfo_class_ReflectionProperty_getDeclaringClass, 0)
+       ZEND_ME(reflection_property, getDocComment, arginfo_class_ReflectionProperty_getDocComment, 0)
+       ZEND_ME(reflection_property, setAccessible, arginfo_class_ReflectionProperty_setAccessible, 0)
+       ZEND_ME(reflection_property, getType, arginfo_class_ReflectionProperty_getType, 0)
+       ZEND_ME(reflection_property, hasType, arginfo_class_ReflectionProperty_hasType, 0)
        PHP_FE_END
 };
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_class_constant_export, 0, 0, 2)
-       ZEND_ARG_INFO(0, class)
-       ZEND_ARG_INFO(0, name)
-       ZEND_ARG_INFO(0, return)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_class_constant___construct, 0, 0, 2)
-       ZEND_ARG_INFO(0, class)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_class_constant_functions[] = {
-       ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
-       ZEND_DEP_ME(reflection_class_constant, export, arginfo_reflection_class_constant_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
-       ZEND_ME(reflection_class_constant, __construct, arginfo_reflection_class_constant___construct, 0)
-       ZEND_ME(reflection_class_constant, __toString, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class_constant, getName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class_constant, getValue, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class_constant, isPublic, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class_constant, isPrivate, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class_constant, isProtected, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class_constant, getModifiers, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class_constant, getDeclaringClass, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_class_constant, getDocComment, arginfo_reflection__void, 0)
+       ZEND_ME(reflection, __clone, arginfo_class_ReflectionClassConstant___clone, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
+       ZEND_DEP_ME(reflection_class_constant, export, arginfo_class_ReflectionClassConstant_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_class_constant, __construct, arginfo_class_ReflectionClassConstant___construct, 0)
+       ZEND_ME(reflection_class_constant, __toString, arginfo_class_ReflectionClassConstant___toString, 0)
+       ZEND_ME(reflection_class_constant, getName, arginfo_class_ReflectionClassConstant_getName, 0)
+       ZEND_ME(reflection_class_constant, getValue, arginfo_class_ReflectionClassConstant_getValue, 0)
+       ZEND_ME(reflection_class_constant, isPublic, arginfo_class_ReflectionClassConstant_isPublic, 0)
+       ZEND_ME(reflection_class_constant, isPrivate, arginfo_class_ReflectionClassConstant_isPrivate, 0)
+       ZEND_ME(reflection_class_constant, isProtected, arginfo_class_ReflectionClassConstant_isProtected, 0)
+       ZEND_ME(reflection_class_constant, getModifiers, arginfo_class_ReflectionClassConstant_getModifiers, 0)
+       ZEND_ME(reflection_class_constant, getDeclaringClass, arginfo_class_ReflectionClassConstant_getDeclaringClass, 0)
+       ZEND_ME(reflection_class_constant, getDocComment, arginfo_class_ReflectionClassConstant_getDocComment, 0)
        PHP_FE_END
 };
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_parameter_export, 0, 0, 2)
-       ZEND_ARG_INFO(0, function)
-       ZEND_ARG_INFO(0, parameter)
-       ZEND_ARG_INFO(0, return)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_parameter___construct, 0)
-       ZEND_ARG_INFO(0, function)
-       ZEND_ARG_INFO(0, parameter)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_parameter_functions[] = {
-       ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
-       ZEND_DEP_ME(reflection_parameter, export, arginfo_reflection_parameter_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
-       ZEND_ME(reflection_parameter, __construct, arginfo_reflection_parameter___construct, 0)
-       ZEND_ME(reflection_parameter, __toString, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, getName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, isPassedByReference, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, canBePassedByValue, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, getDeclaringFunction, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, getDeclaringClass, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, getClass, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, hasType, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, getType, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, isArray, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, isCallable, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, allowsNull, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, getPosition, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, isOptional, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, isDefaultValueAvailable, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, getDefaultValue, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, isDefaultValueConstant, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, getDefaultValueConstantName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_parameter, isVariadic, arginfo_reflection__void, 0)
+       ZEND_ME(reflection, __clone, arginfo_class_ReflectionParameter___clone, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
+       ZEND_DEP_ME(reflection_parameter, export, arginfo_class_ReflectionParameter_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_parameter, __construct, arginfo_class_ReflectionParameter___construct, 0)
+       ZEND_ME(reflection_parameter, __toString, arginfo_class_ReflectionParameter___toString, 0)
+       ZEND_ME(reflection_parameter, getName, arginfo_class_ReflectionParameter_getName, 0)
+       ZEND_ME(reflection_parameter, isPassedByReference, arginfo_class_ReflectionParameter_isPassedByReference, 0)
+       ZEND_ME(reflection_parameter, canBePassedByValue, arginfo_class_ReflectionParameter_canBePassedByValue, 0)
+       ZEND_ME(reflection_parameter, getDeclaringFunction, arginfo_class_ReflectionParameter_getDeclaringFunction, 0)
+       ZEND_ME(reflection_parameter, getDeclaringClass, arginfo_class_ReflectionParameter_getDeclaringClass, 0)
+       ZEND_ME(reflection_parameter, getClass, arginfo_class_ReflectionParameter_getClass, 0)
+       ZEND_ME(reflection_parameter, hasType, arginfo_class_ReflectionParameter_hasType, 0)
+       ZEND_ME(reflection_parameter, getType, arginfo_class_ReflectionParameter_getType, 0)
+       ZEND_ME(reflection_parameter, isArray, arginfo_class_ReflectionParameter_isArray, 0)
+       ZEND_ME(reflection_parameter, isCallable, arginfo_class_ReflectionParameter_isCallable, 0)
+       ZEND_ME(reflection_parameter, allowsNull, arginfo_class_ReflectionParameter_allowsNull, 0)
+       ZEND_ME(reflection_parameter, getPosition, arginfo_class_ReflectionParameter_getPosition, 0)
+       ZEND_ME(reflection_parameter, isOptional, arginfo_class_ReflectionParameter_isOptional, 0)
+       ZEND_ME(reflection_parameter, isDefaultValueAvailable, arginfo_class_ReflectionParameter_isDefaultValueAvailable, 0)
+       ZEND_ME(reflection_parameter, getDefaultValue, arginfo_class_ReflectionParameter_getDefaultValue, 0)
+       ZEND_ME(reflection_parameter, isDefaultValueConstant, arginfo_class_ReflectionParameter_isDefaultValueConstant, 0)
+       ZEND_ME(reflection_parameter, getDefaultValueConstantName, arginfo_class_ReflectionParameter_getDefaultValueConstantName, 0)
+       ZEND_ME(reflection_parameter, isVariadic, arginfo_class_ReflectionParameter_isVariadic, 0)
        PHP_FE_END
 };
 
 static const zend_function_entry reflection_type_functions[] = {
-       ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
-       ZEND_ME(reflection_type, allowsNull, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_type, __toString, arginfo_reflection__void, 0)
+       ZEND_ME(reflection, __clone, arginfo_class_ReflectionType___clone, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
+       ZEND_ME(reflection_type, allowsNull, arginfo_class_ReflectionType_allowsNull, 0)
+       ZEND_ME(reflection_type, __toString, arginfo_class_ReflectionType___toString, 0)
        PHP_FE_END
 };
 
 static const zend_function_entry reflection_named_type_functions[] = {
-       ZEND_ME(reflection_named_type, getName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_named_type, isBuiltin, arginfo_reflection__void, 0)
+       ZEND_ME(reflection_named_type, getName, arginfo_class_ReflectionNamedType_getName, 0)
+       ZEND_ME(reflection_named_type, isBuiltin, arginfo_class_ReflectionNamedType_isBuiltin, 0)
        PHP_FE_END
 };
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_extension_export, 0, 0, 1)
-       ZEND_ARG_INFO(0, name)
-       ZEND_ARG_INFO(0, return)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_extension___construct, 0)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_extension_functions[] = {
-       ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
-       ZEND_DEP_ME(reflection_extension, export, arginfo_reflection_extension_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
-       ZEND_ME(reflection_extension, __construct, arginfo_reflection_extension___construct, 0)
-       ZEND_ME(reflection_extension, __toString, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, getName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, getVersion, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, getFunctions, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, getConstants, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, getINIEntries, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, getClasses, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, getClassNames, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, getDependencies, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, info, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, isPersistent, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_extension, isTemporary, arginfo_reflection__void, 0)
+       ZEND_ME(reflection, __clone, arginfo_class_ReflectionExtension___clone, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
+       ZEND_DEP_ME(reflection_extension, export, arginfo_class_ReflectionExtension_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_extension, __construct, arginfo_class_ReflectionExtension___construct, 0)
+       ZEND_ME(reflection_extension, __toString, arginfo_class_ReflectionExtension___toString, 0)
+       ZEND_ME(reflection_extension, getName, arginfo_class_ReflectionExtension_getName, 0)
+       ZEND_ME(reflection_extension, getVersion, arginfo_class_ReflectionExtension_getVersion, 0)
+       ZEND_ME(reflection_extension, getFunctions, arginfo_class_ReflectionExtension_getFunctions, 0)
+       ZEND_ME(reflection_extension, getConstants, arginfo_class_ReflectionExtension_getConstants, 0)
+       ZEND_ME(reflection_extension, getINIEntries, arginfo_class_ReflectionExtension_getINIEntries, 0)
+       ZEND_ME(reflection_extension, getClasses, arginfo_class_ReflectionExtension_getClasses, 0)
+       ZEND_ME(reflection_extension, getClassNames, arginfo_class_ReflectionExtension_getClassNames, 0)
+       ZEND_ME(reflection_extension, getDependencies, arginfo_class_ReflectionExtension_getDependencies, 0)
+       ZEND_ME(reflection_extension, info, arginfo_class_ReflectionExtension_info, 0)
+       ZEND_ME(reflection_extension, isPersistent, arginfo_class_ReflectionExtension_isPersistent, 0)
+       ZEND_ME(reflection_extension, isTemporary, arginfo_class_ReflectionExtension_isTemporary, 0)
        PHP_FE_END
 };
 
-ZEND_BEGIN_ARG_INFO(arginfo_reflection_zend_extension___construct, 0)
-       ZEND_ARG_INFO(0, name)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_zend_extension_functions[] = {
-       ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
-       ZEND_DEP_ME(reflection_zend_extension, export, arginfo_reflection_extension_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
-       ZEND_ME(reflection_zend_extension, __construct, arginfo_reflection_zend_extension___construct, 0)
-       ZEND_ME(reflection_zend_extension, __toString, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_zend_extension, getName, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_zend_extension, getVersion, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_zend_extension, getAuthor, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_zend_extension, getURL, arginfo_reflection__void, 0)
-       ZEND_ME(reflection_zend_extension, getCopyright, arginfo_reflection__void, 0)
+       ZEND_ME(reflection, __clone, arginfo_class_ReflectionZendExtension___clone, ZEND_ACC_PRIVATE|ZEND_ACC_FINAL)
+       ZEND_DEP_ME(reflection_zend_extension, export, arginfo_class_ReflectionZendExtension_export, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_zend_extension, __construct, arginfo_class_ReflectionZendExtension___construct, 0)
+       ZEND_ME(reflection_zend_extension, __toString, arginfo_class_ReflectionZendExtension___toString, 0)
+       ZEND_ME(reflection_zend_extension, getName, arginfo_class_ReflectionZendExtension_getName, 0)
+       ZEND_ME(reflection_zend_extension, getVersion, arginfo_class_ReflectionZendExtension_getVersion, 0)
+       ZEND_ME(reflection_zend_extension, getAuthor, arginfo_class_ReflectionZendExtension_getAuthor, 0)
+       ZEND_ME(reflection_zend_extension, getURL, arginfo_class_ReflectionZendExtension_getURL, 0)
+       ZEND_ME(reflection_zend_extension, getCopyright, arginfo_class_ReflectionZendExtension_getCopyright, 0)
        PHP_FE_END
 };
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_reflection_reference_fromArrayElement, 0, 0, 2)
-       ZEND_ARG_INFO(0, array)
-       ZEND_ARG_INFO(0, key)
-ZEND_END_ARG_INFO()
-
 static const zend_function_entry reflection_reference_functions[] = {
-       ZEND_ME(reflection_reference, fromArrayElement, arginfo_reflection_reference_fromArrayElement, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
-       ZEND_ME(reflection_reference, getId, arginfo_reflection__void, ZEND_ACC_PUBLIC)
+       ZEND_ME(reflection_reference, fromArrayElement, arginfo_class_ReflectionReference_fromArrayElement, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
+       ZEND_ME(reflection_reference, getId, arginfo_class_ReflectionReference_getId, ZEND_ACC_PUBLIC)
 
        /* Always throwing dummy methods */
-       ZEND_ME(reflection, __clone, arginfo_reflection__void, ZEND_ACC_PRIVATE)
-       ZEND_ME(reflection_reference, __construct, arginfo_reflection__void, ZEND_ACC_PRIVATE)
+       ZEND_ME(reflection, __clone, arginfo_class_ReflectionReference___clone, ZEND_ACC_PRIVATE)
+       ZEND_ME(reflection_reference, __construct, arginfo_class_ReflectionReference___construct, ZEND_ACC_PRIVATE)
        PHP_FE_END
 };
 /* }}} */
diff --git a/ext/reflection/reflection.stub.php b/ext/reflection/reflection.stub.php
new file mode 100644 (file)
index 0000000..f733e53
--- /dev/null
@@ -0,0 +1,625 @@
+<?php
+
+class ReflectionException extends Exception
+{
+}
+
+class Reflection
+{
+    /** @return string[] */
+    public static function getModifierNames(int $modifiers) {}
+
+    public static function export($reflector, bool $return = false) {}
+}
+
+interface Reflector
+{
+    /** @return string */
+    public function __toString();
+}
+
+abstract class ReflectionFunctionAbstract implements Reflector
+{
+    final private function __clone() {}
+
+    /** @return bool */
+    public function inNamespace() {}
+
+    /** @return bool */
+    public function isClosure() {}
+
+    /** @return bool */
+    public function isDeprecated() {}
+
+    /** @return bool */
+    public function isInternal() {}
+
+    /** @return bool */
+    public function isUserDefined() {}
+
+    /** @return bool */
+    public function isGenerator() {}
+
+    /** @return bool */
+    public function isVariadic() {}
+
+    /** @return object|null */
+    public function getClosureThis() {}
+
+    /** @return ReflectionClass|null */
+    public function getClosureScopeClass() {}
+
+    /** @return string|false */
+    public function getDocComment() {}
+
+    /** @return int|false */
+    public function getEndLine() {}
+
+    /** @return ReflectionExtension|null */
+    public function getExtension() {}
+
+    /** @return string|false */
+    public function getExtensionName() {}
+
+    /** @return string|false */
+    public function getFileName() {}
+
+    /** @return string|false */
+    public function getName() {}
+
+    /** @return string */
+    public function getNamespaceName() {}
+
+    /** @return int */
+    public function getNumberOfParameters() {}
+
+    /** @return int */
+    public function getNumberOfRequiredParameters() {}
+
+    /** @return RefleactionParameter[] */
+    public function getParameters() {}
+
+    /** @return string */
+    public function getShortName() {}
+
+    /** @return int|false */
+    public function getStartLine() {}
+
+    /** @return array */
+    public function getStaticVariables() {}
+
+    /** @return array */
+    public function returnsReference() {}
+
+    /** @return bool */
+    public function hasReturnType() {}
+
+    /** @return ReflectionType|null */
+    public function getReturnType() {}
+}
+
+class ReflectionFunction extends ReflectionFunctionAbstract
+{
+    /** @param string|Closure $name */
+    public function __construct($name) {}
+
+    /** @return string */
+    public function __toString() {}
+
+    public static function export($name, bool $return = false) {}
+
+    /** @return bool */
+    public function isDisabled() {}
+
+    public function invoke(...$args) {}
+    
+    public function invokeArgs(array $args) {}
+
+    public function getClosure() {}
+}
+
+class ReflectionGenerator
+{
+    public function __construct(Generator $generator) {}
+
+    /** @return int */
+    public function getExecutingLine() {}
+
+    /** @return string */
+    public function getExecutingFile() {}
+
+    /** @return array */
+    public function getTrace(int $options = DEBUG_BACKTRACE_PROVIDE_OBJECT) {}
+
+    /** @return ReflectionFunctionAbstract */
+    public function getFunction() {}
+
+    /** @return object|null */
+    public function getThis() {}
+
+    /** @return Generator */
+    public function getExecutingGenerator() {}
+}
+
+class ReflectionMethod extends ReflectionFunctionAbstract
+{
+    public function __construct($class_method, string $name = UNKNOWN) {}
+
+    /** @return string */
+    public function __toString() {}
+
+    public static function export($class, $name, bool $return = false) {}
+
+    /** @return bool */
+    public function isPublic() {}
+
+    /** @return bool */
+    public function isPrivate() {}
+
+    /** @return bool */
+    public function isProtected() {}
+
+    /** @return bool */
+    public function isAbstract() {}
+
+    /** @return bool */
+    public function isFinal() {}
+
+    /** @return bool */
+    public function isStatic() {}
+
+    /** @return bool */
+    public function isConstructor() {}
+
+    /** @return bool */
+    public function isDestructor() {}
+
+    /** @return Closure */
+    public function getClosure($object = UNKNOWN) {}
+
+    /** @return int */
+    public function getModifiers() {}
+
+    public function invoke($object, ...$args) {}
+
+    public function invokeArgs($object, array $args) {}
+
+    /** @return ReflectionClass */
+    public function getDeclaringClass() {}
+
+    /** @return ReflectionMethod */
+    public function getPrototype() {}
+
+    public function setAccessible(bool $visible) {}
+}
+
+class ReflectionClass implements Reflector
+{
+    final private function __clone() {}
+    
+    public static function export($argument, bool $return = false) {}
+
+    public function __construct($argument) {}
+
+    /** @return string */
+    public function __toString() {}
+
+    /** @return string|false */
+    public function getName() {}
+
+    /** @return bool */
+    public function isInternal() {}
+
+    /** @return bool */
+    public function isUserDefined() {}
+
+    /** @return bool */
+    public function isAnonymous() {}
+
+    /** @return bool */
+    public function isInstantiable() {}
+
+    /** @return bool */
+    public function isCloneable() {}
+
+    /** @return string|false */
+    public function getFileName() {}
+
+    /** @return int|false */
+    public function getStartLine() {}
+
+    /** @return int|false */
+    public function getEndLine() {}
+
+    /** @return string|false */
+    public function getDocComment() {}
+
+    /** @return ReflectionMethod|null */
+    public function getConstructor() {}
+
+    /** @return bool */
+    public function hasMethod(string $name) {}
+
+    /** @return ReflectionMethod */
+    public function getMethod(string $name) {}
+
+    /** @return ReflectionMethod[] */
+    public function getMethods(?int $filter = null) {}
+
+    /** @return bool */
+    public function hasProperty(string $name) {}
+
+    /** @return ReflectionProperty */
+    public function getProperty(string $name) {}
+
+    /** @return ReflectionProperty[] */
+    public function getProperties(?int $filter = null) {}
+        
+    /** @return bool */
+    public function hasConstant(string $name) {}
+
+    /** @return array */
+    public function getConstants() {}
+
+    /** @return array */
+    public function getReflectionConstants() {}
+
+    /** @return array */
+    public function getConstant(string $name) {}
+
+    /** @return ReflectionClassConstant[] */
+    public function getReflectionConstant(string $name) {}
+
+    /** @return ReflectionClass[] */
+    public function getInterfaces() {}
+
+    /** @return string[] */
+    public function getInterfaceNames() {}
+
+    /** @return bool */
+    public function isInterface() {}
+
+    /** @return ReflectionClass[] */
+    public function getTraits() {}
+
+    /** @return string[] */
+    public function getTraitNames() {}
+
+    /** @return array */
+    public function getTraitAliases() {}
+
+    /** @return bool */
+    public function isTrait() {}
+
+    /** @return bool */
+    public function isAbstract() {}
+
+    /** @return bool */
+    public function isFinal() {}
+
+    /** @return int */
+    public function getModifiers() {}
+
+    /** @return bool */
+    public function isIntance(object $object) {}
+
+    /** @return object */
+    public function newInstance(...$args) {}
+
+    /** @return object */
+    public function newInstanceWithoutConstructor() {}
+
+    /** @return object */
+    public function newInstanceArgs(array $args = []) {}
+
+    /** @return ReflectionClass|null */
+    public function getParentClass() {}
+
+    /**
+     * @param string|ReflectionClass $class
+     * 
+     * @return bool
+     */
+    public function isSubclassOf($class) {}
+
+    /** @return array */
+    public function getStaticProperties() {}
+
+    public function getStaticPropertyValue(string $name, $default = UNKNOWN) {}
+
+    public function setStaticPropertyValue(string $name, $value) {}
+
+    /** @return array */
+    public function getDefaultProperties() {}
+
+    /** @return bool */
+    public function isIterable() {}
+
+    /** @return bool */
+    public function isIterateable() {}
+
+    /**
+     * @param string|ReflectionClass $interface
+     * 
+     * @return bool
+     */
+    public function implementsInterface($interface) {}
+
+    /** @return ReflectionClass|null */
+    public function getExtension() {}
+
+    /** @return string|false */
+    public function getExtensionName() {}
+
+    /** @return bool */
+    public function inNamespace() {}
+
+    /** @return string|null */
+    public function getNamespaceName() {}
+
+    /** @return string */
+    public function getShortName() {}
+}
+
+class ReflectionObject extends ReflectionClass
+{
+    public function __construct($argument) {}
+
+    public static function export($argument, bool $return = false) {}
+}
+
+class ReflectionProperty implements Reflector
+{
+    final private function __clone() {}
+
+    public static function export($class, $name, bool $return = false) {}
+
+    public function __construct($class, string $name) {}
+
+    /** @return string */
+    public function __toString() {}
+
+    /** @return string|false */
+    public function getName() {}
+
+    public function getValue($object = UNKNOWN) {}
+
+    public function setValue($object_or_value, $value = UNKNOWN) {}
+
+    /** @return bool */
+    public function isInitialized(object $object = UNKNOWN) {}
+
+    /** @return bool */
+    public function isPublic() {}
+
+    /** @return bool */
+    public function isPrivate() {}
+
+    /** @return bool */
+    public function isProtected() {}
+
+    /** @return bool */
+    public function isStatic() {}
+
+    /** @return bool */
+    public function isDefault() {}
+
+    /** @return int */
+    public function getModifiers() {}
+
+    /** @return ReflectionClass */
+    public function getDeclaringClass() {}
+
+    /** @return string|false */
+    public function getDocComment() {}
+
+    public function setAccessible(bool $visible) {}
+
+    /** @return ReflectionType */
+    public function getType() {}
+
+    /** @return bool */
+    public function hasType() {}
+}
+
+class ReflectionClassConstant implements Reflector
+{
+    final private function __clone() {}
+
+    public static function export($class, $name, bool $return = false) {}
+
+    public function __construct($class, string $name) {}
+
+    /** @return string */
+    public function __toString() {}
+
+    /** @return string */
+    public function getName() {}
+
+    public function getValue() {}
+
+    /** @return bool */
+    public function isPublic() {}
+
+    /** @return bool */
+    public function isPrivate() {}
+
+    /** @return bool */
+    public function isProtected() {}
+
+    /** @return int */
+    public function getModifiers() {}
+
+    /** @return ReflectionClass */
+    public function getDeclaringClass() {}
+
+    /** @return string|false */
+    public function getDocComment() {}
+}
+
+class ReflectionParameter implements Reflector
+{
+    final private function __clone() {}
+
+    public static function export($function, $parameter, bool $return = false) {}
+
+    public function __construct($function,  $parameter) {}
+
+    /** @return string */
+    public function __toString() {}
+
+    /** @return string|false */
+    public function getName() {}
+
+    /** @return bool */
+    public function isPassedByReference() {}
+
+    /** @return bool */
+    public function canBePassedByValue() {}
+
+    /** @return ReflectionFunctionAbstract */
+    public function getDeclaringFunction() {}
+
+    /** @return ReflectionClass|null */
+    public function getDeclaringClass() {}
+
+    /** @return ReflectionClass|null */
+    public function getClass() {}
+
+    /** @return bool */
+    public function hasType() {}
+
+    /** @return ReflectionType */
+    public function getType() {}
+
+    /** @return bool */
+    public function isArray() {}
+
+    /** @return bool */
+    public function isCallable() {}
+
+    /** @return bool */
+    public function allowsNull() {}
+
+    /** @return int */
+    public function getPosition() {}
+
+    /** @return true */
+    public function isOptional() {}
+
+    /** @return bool */
+    public function isDefaultValueAvailable() {}
+
+    public function getDefaultValue() {}
+
+    /** @return bool */
+    public function isDefaultValueConstant() {}
+
+    /** @return string|null */
+    public function getDefaultValueConstantName() {}
+
+    /** @return bool */
+    public function isVariadic() {}
+}
+
+abstract class ReflectionType
+{
+    final private function __clone() {}
+
+    /** @return bool */
+    public function allowsNull() {}
+
+    /** @return string */
+    public function __toString() {}
+}
+
+class ReflectionNamedType extends ReflectionType
+{
+    /** @return string */
+    public function getName() {}
+
+    /** @return bool */
+    public function isBuiltin() {}
+}
+
+class ReflectionExtension implements Reflector
+{
+    final private function __clone() {}
+
+    public static function export($name, bool $return = false) {}
+
+    public function __construct(string $name) {}
+
+    /** @return string */
+    public function __toString() {}
+
+    /** @return string|false */
+    public function getName() {}
+
+    /** @return string|null */
+    public function getVersion() {}
+
+    /** @return ReflectionFunction[] */
+    public function getFunctions() {}
+
+    /** @return array */
+    public function getConstants() {}
+
+    /** @return array */
+    public function getINIEntries() {}
+
+    /** @return ReflectionClass[] */
+    public function getClasses() {}
+
+    /** @return array */
+    public function getClassNames() {}
+
+    /** @return array */
+    public function getDependencies() {}
+
+    public function info() {}
+
+    /** @return bool */
+    public function isPersistent() {}
+
+    /** @return bool */
+    public function isTemporary() {}
+}
+
+class ReflectionZendExtension implements Reflector
+{
+    final private function __clone() {}
+
+    public static function export($name, bool $return = false) {}
+    
+    public function __construct(string $name) {}
+
+    /** @return string */
+    public function __toString() {}
+
+    /** @return string */
+    public function getName() {}
+
+    /** @return string */
+    public function getVersion() {}
+
+    /** @return string */
+    public function getAuthor() {}
+
+    /** @return string */
+    public function getURL() {}
+
+    /** @return string */
+    public function getCopyright() {}
+}
+
+final class ReflectionReference
+{
+    public function fromArrayElement(array $array, $key): ?ReflectionReference {}
+
+    public function getId(): string {}
+
+    private function __clone() {}
+
+    private function __construct() {}
+}
diff --git a/ext/reflection/reflection_arginfo.h b/ext/reflection/reflection_arginfo.h
new file mode 100644 (file)
index 0000000..ef48aa9
--- /dev/null
@@ -0,0 +1,485 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Reflection_getModifierNames, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, modifiers, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Reflection_export, 0, 0, 1)
+       ZEND_ARG_INFO(0, reflector)
+       ZEND_ARG_TYPE_INFO(0, return, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Reflector___toString, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionFunctionAbstract___clone arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_inNamespace arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_isClosure arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_isDeprecated arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_isInternal arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_isUserDefined arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_isGenerator arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_isVariadic arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getClosureThis arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getClosureScopeClass arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getDocComment arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getEndLine arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getExtension arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getExtensionName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getFileName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getNamespaceName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getNumberOfParameters arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getNumberOfRequiredParameters arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getParameters arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getShortName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getStartLine arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getStaticVariables arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_returnsReference arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_hasReturnType arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionFunctionAbstract_getReturnType arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionFunction___construct, 0, 0, 1)
+       ZEND_ARG_INFO(0, name)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionFunction___toString arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionFunction_export, 0, 0, 1)
+       ZEND_ARG_INFO(0, name)
+       ZEND_ARG_TYPE_INFO(0, return, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionFunction_isDisabled arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionFunction_invoke, 0, 0, 0)
+       ZEND_ARG_VARIADIC_INFO(0, args)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionFunction_invokeArgs, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, args, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionFunction_getClosure arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionGenerator___construct, 0, 0, 1)
+       ZEND_ARG_OBJ_INFO(0, generator, Generator, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionGenerator_getExecutingLine arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionGenerator_getExecutingFile arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionGenerator_getTrace, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionGenerator_getFunction arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionGenerator_getThis arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionGenerator_getExecutingGenerator arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionMethod___construct, 0, 0, 1)
+       ZEND_ARG_INFO(0, class_method)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionMethod___toString arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionMethod_export, 0, 0, 2)
+       ZEND_ARG_INFO(0, class)
+       ZEND_ARG_INFO(0, name)
+       ZEND_ARG_TYPE_INFO(0, return, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionMethod_isPublic arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionMethod_isPrivate arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionMethod_isProtected arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionMethod_isAbstract arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionMethod_isFinal arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionMethod_isStatic arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionMethod_isConstructor arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionMethod_isDestructor arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionMethod_getClosure, 0, 0, 0)
+       ZEND_ARG_INFO(0, object)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionMethod_getModifiers arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionMethod_invoke, 0, 0, 1)
+       ZEND_ARG_INFO(0, object)
+       ZEND_ARG_VARIADIC_INFO(0, args)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionMethod_invokeArgs, 0, 0, 2)
+       ZEND_ARG_INFO(0, object)
+       ZEND_ARG_TYPE_INFO(0, args, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionMethod_getDeclaringClass arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionMethod_getPrototype arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionMethod_setAccessible, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, visible, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionClass___clone arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass_export, 0, 0, 1)
+       ZEND_ARG_INFO(0, argument)
+       ZEND_ARG_TYPE_INFO(0, return, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass___construct, 0, 0, 1)
+       ZEND_ARG_INFO(0, argument)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionClass___toString arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isInternal arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isUserDefined arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isAnonymous arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isInstantiable arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isCloneable arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getFileName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getStartLine arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getEndLine arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getDocComment arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getConstructor arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass_hasMethod, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionClass_getMethod arginfo_class_ReflectionClass_hasMethod
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass_getMethods, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, filter, IS_LONG, 1)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionClass_hasProperty arginfo_class_ReflectionClass_hasMethod
+
+#define arginfo_class_ReflectionClass_getProperty arginfo_class_ReflectionClass_hasMethod
+
+#define arginfo_class_ReflectionClass_getProperties arginfo_class_ReflectionClass_getMethods
+
+#define arginfo_class_ReflectionClass_hasConstant arginfo_class_ReflectionClass_hasMethod
+
+#define arginfo_class_ReflectionClass_getConstants arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getReflectionConstants arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getConstant arginfo_class_ReflectionClass_hasMethod
+
+#define arginfo_class_ReflectionClass_getReflectionConstant arginfo_class_ReflectionClass_hasMethod
+
+#define arginfo_class_ReflectionClass_getInterfaces arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getInterfaceNames arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isInterface arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getTraits arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getTraitNames arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getTraitAliases arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isTrait arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isAbstract arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isFinal arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getModifiers arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass_isIntance, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionClass_newInstance arginfo_class_ReflectionFunction_invoke
+
+#define arginfo_class_ReflectionClass_newInstanceWithoutConstructor arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass_newInstanceArgs, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, args, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionClass_getParentClass arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass_isSubclassOf, 0, 0, 1)
+       ZEND_ARG_INFO(0, class)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionClass_getStaticProperties arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass_getStaticPropertyValue, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+       ZEND_ARG_INFO(0, default)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass_setStaticPropertyValue, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+       ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionClass_getDefaultProperties arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isIterable arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_isIterateable arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionClass_implementsInterface, 0, 0, 1)
+       ZEND_ARG_INFO(0, interface)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionClass_getExtension arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getExtensionName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_inNamespace arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getNamespaceName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClass_getShortName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionObject___construct arginfo_class_ReflectionClass___construct
+
+#define arginfo_class_ReflectionObject_export arginfo_class_ReflectionClass_export
+
+#define arginfo_class_ReflectionProperty___clone arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_export arginfo_class_ReflectionMethod_export
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionProperty___construct, 0, 0, 2)
+       ZEND_ARG_INFO(0, class)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionProperty___toString arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_getName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_getValue arginfo_class_ReflectionMethod_getClosure
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionProperty_setValue, 0, 0, 1)
+       ZEND_ARG_INFO(0, object_or_value)
+       ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionProperty_isInitialized, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, object, IS_OBJECT, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionProperty_isPublic arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_isPrivate arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_isProtected arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_isStatic arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_isDefault arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_getModifiers arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_getDeclaringClass arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_getDocComment arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_setAccessible arginfo_class_ReflectionMethod_setAccessible
+
+#define arginfo_class_ReflectionProperty_getType arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionProperty_hasType arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant___clone arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant_export arginfo_class_ReflectionMethod_export
+
+#define arginfo_class_ReflectionClassConstant___construct arginfo_class_ReflectionProperty___construct
+
+#define arginfo_class_ReflectionClassConstant___toString arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant_getName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant_getValue arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant_isPublic arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant_isPrivate arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant_isProtected arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant_getModifiers arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant_getDeclaringClass arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionClassConstant_getDocComment arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter___clone arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionParameter_export, 0, 0, 2)
+       ZEND_ARG_INFO(0, function)
+       ZEND_ARG_INFO(0, parameter)
+       ZEND_ARG_TYPE_INFO(0, return, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_ReflectionParameter___construct, 0, 0, 2)
+       ZEND_ARG_INFO(0, function)
+       ZEND_ARG_INFO(0, parameter)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionParameter___toString arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_getName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_isPassedByReference arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_canBePassedByValue arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_getDeclaringFunction arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_getDeclaringClass arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_getClass arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_hasType arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_getType arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_isArray arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_isCallable arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_allowsNull arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_getPosition arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_isOptional arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_isDefaultValueAvailable arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_getDefaultValue arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_isDefaultValueConstant arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_getDefaultValueConstantName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionParameter_isVariadic arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionType___clone arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionType_allowsNull arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionType___toString arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionNamedType_getName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionNamedType_isBuiltin arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension___clone arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_export arginfo_class_ReflectionFunction_export
+
+#define arginfo_class_ReflectionExtension___construct arginfo_class_ReflectionClass_hasMethod
+
+#define arginfo_class_ReflectionExtension___toString arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_getName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_getVersion arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_getFunctions arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_getConstants arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_getINIEntries arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_getClasses arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_getClassNames arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_getDependencies arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_info arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_isPersistent arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionExtension_isTemporary arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionZendExtension___clone arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionZendExtension_export arginfo_class_ReflectionFunction_export
+
+#define arginfo_class_ReflectionZendExtension___construct arginfo_class_ReflectionClass_hasMethod
+
+#define arginfo_class_ReflectionZendExtension___toString arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionZendExtension_getName arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionZendExtension_getVersion arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionZendExtension_getAuthor arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionZendExtension_getURL arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionZendExtension_getCopyright arginfo_class_Reflector___toString
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_class_ReflectionReference_fromArrayElement, 0, 2, ReflectionReference, 1)
+       ZEND_ARG_TYPE_INFO(0, array, IS_ARRAY, 0)
+       ZEND_ARG_INFO(0, key)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_ReflectionReference_getId, 0, 0, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_ReflectionReference___clone arginfo_class_Reflector___toString
+
+#define arginfo_class_ReflectionReference___construct arginfo_class_Reflector___toString
index 9406c2e5d1f672353617a7b95cc35ae2bf80d6e1..a70e09fa68e1264d8921453775fa48ecc10aae5d 100644 (file)
@@ -25,7 +25,7 @@ Class [ <internal:Reflection> class ReflectionClass implements Reflector ] {
 
       - Parameters [2] {
         Parameter #0 [ <required> $argument ]
-        Parameter #1 [ <optional> $return ]
+        Parameter #1 [ <optional> bool $return ]
       }
     }
   }
@@ -123,49 +123,49 @@ Class [ <internal:Reflection> class ReflectionClass implements Reflector ] {
     Method [ <internal:Reflection> public method hasMethod ] {
 
       - Parameters [1] {
-        Parameter #0 [ <required> $name ]
+        Parameter #0 [ <required> string $name ]
       }
     }
 
     Method [ <internal:Reflection> public method getMethod ] {
 
       - Parameters [1] {
-        Parameter #0 [ <required> $name ]
+        Parameter #0 [ <required> string $name ]
       }
     }
 
     Method [ <internal:Reflection> public method getMethods ] {
 
       - Parameters [1] {
-        Parameter #0 [ <optional> $filter ]
+        Parameter #0 [ <optional> ?int $filter ]
       }
     }
 
     Method [ <internal:Reflection> public method hasProperty ] {
 
       - Parameters [1] {
-        Parameter #0 [ <required> $name ]
+        Parameter #0 [ <required> string $name ]
       }
     }
 
     Method [ <internal:Reflection> public method getProperty ] {
 
       - Parameters [1] {
-        Parameter #0 [ <required> $name ]
+        Parameter #0 [ <required> string $name ]
       }
     }
 
     Method [ <internal:Reflection> public method getProperties ] {
 
       - Parameters [1] {
-        Parameter #0 [ <optional> $filter ]
+        Parameter #0 [ <optional> ?int $filter ]
       }
     }
 
     Method [ <internal:Reflection> public method hasConstant ] {
 
       - Parameters [1] {
-        Parameter #0 [ <required> $name ]
+        Parameter #0 [ <required> string $name ]
       }
     }
 
@@ -184,14 +184,14 @@ Class [ <internal:Reflection> class ReflectionClass implements Reflector ] {
     Method [ <internal:Reflection> public method getConstant ] {
 
       - Parameters [1] {
-        Parameter #0 [ <required> $name ]
+        Parameter #0 [ <required> string $name ]
       }
     }
 
     Method [ <internal:Reflection> public method getReflectionConstant ] {
 
       - Parameters [1] {
-        Parameter #0 [ <required> $name ]
+        Parameter #0 [ <required> string $name ]
       }
     }
 
@@ -258,7 +258,7 @@ Class [ <internal:Reflection> class ReflectionClass implements Reflector ] {
     Method [ <internal:Reflection> public method isInstance ] {
 
       - Parameters [1] {
-        Parameter #0 [ <required> $object ]
+        Parameter #0 [ <required> object $object ]
       }
     }
 
@@ -304,7 +304,7 @@ Class [ <internal:Reflection> class ReflectionClass implements Reflector ] {
     Method [ <internal:Reflection> public method getStaticPropertyValue ] {
 
       - Parameters [2] {
-        Parameter #0 [ <required> $name ]
+        Parameter #0 [ <required> string $name ]
         Parameter #1 [ <optional> $default ]
       }
     }
@@ -312,7 +312,7 @@ Class [ <internal:Reflection> class ReflectionClass implements Reflector ] {
     Method [ <internal:Reflection> public method setStaticPropertyValue ] {
 
       - Parameters [2] {
-        Parameter #0 [ <required> $name ]
+        Parameter #0 [ <required> string $name ]
         Parameter #1 [ <required> $value ]
       }
     }
index 71ef9e95d96d2600f0919432fa6b9485134f06db..46abc6b8168779eebcf011b9183ae6d6b26a7ecd 100644 (file)
@@ -166,7 +166,7 @@ string(%d) "Method [ <internal:Reflection, ctor> public method __construct ] {
 
   - Parameters [2] {
     Parameter #0 [ <required> $class ]
-    Parameter #1 [ <required> $name ]
+    Parameter #1 [ <required> string $name ]
   }
 }
 "
@@ -178,7 +178,7 @@ string(%d) "Method [ <internal:Reflection, ctor> public method __construct ] {
 
   - Parameters [2] {
     Parameter #0 [ <required> $class ]
-    Parameter #1 [ <required> $name ]
+    Parameter #1 [ <required> string $name ]
   }
 }
 "