diff options
author | Marcus Boerger <helly@php.net> | 2003-08-24 11:11:55 +0000 |
---|---|---|
committer | Marcus Boerger <helly@php.net> | 2003-08-24 11:11:55 +0000 |
commit | bd07968bef847ac95f9c3703ffef113da6e3a3f7 (patch) | |
tree | 5b54a8adc96bca586136c59dd27dfb1393b0e82f /ext/reflection/php_reflection.c | |
parent | 1c2512ddea62a6bd8a38507c1e861bb7e57556b3 (diff) | |
download | php-git-bd07968bef847ac95f9c3703ffef113da6e3a3f7.tar.gz |
- Add Reflection_Function::isAlias
- Use ZEND_ME/ZEND_METHOD
- Fix static entries
Diffstat (limited to 'ext/reflection/php_reflection.c')
-rw-r--r-- | ext/reflection/php_reflection.c | 345 |
1 files changed, 185 insertions, 160 deletions
diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c index 278cd3fb76..cc72cf233f 100644 --- a/ext/reflection/php_reflection.c +++ b/ext/reflection/php_reflection.c @@ -356,6 +356,9 @@ static void _function_string(string *str, zend_function *fptr, char* indent TSRM string_printf(str, fptr->common.scope ? "%sMethod [ " : "%sFunction [ ", indent); string_printf(str, (fptr->type == ZEND_USER_FUNCTION) ? "<user> " : "<internal> "); + if (fptr->common.fn_flags & ZEND_ACC_ALIAS) { + string_printf(str, "<alias> "); + } if (fptr->common.fn_flags & ZEND_ACC_CTOR) { string_printf(str, "<ctor> "); } @@ -469,9 +472,19 @@ static void _extension_string(string *str, zend_module_entry *module, char *inde } } +static void _function_check_flag(INTERNAL_FUNCTION_PARAMETERS, int mask) +{ + reflection_object *intern; + zend_function *mptr; + + METHOD_NOTSTATIC_NUMPARAMS(0); + GET_REFLECTION_OBJECT_PTR(mptr); + RETURN_BOOL(mptr->common.fn_flags & mask); +} + /* {{{ proto public string Reflector::toString() Returns a string representation */ -ZEND_FUNCTION(reflector_tostring) +ZEND_METHOD(reflector, tostring) { /* FIXME(?): I guess this is needed due to the fact that internal methods * are not subject to any modifier checks... @@ -481,7 +494,7 @@ ZEND_FUNCTION(reflector_tostring) /* {{{ proto public static mixed Reflection::export(Reflector r [, bool return]) Exports a reflection object. Returns the output if TRUE is specified for return, printing it otherwise. */ -ZEND_FUNCTION(reflection_export) +ZEND_METHOD(reflection, export) { zval *object, *fname, *retval_ptr; int result; @@ -525,9 +538,9 @@ ZEND_FUNCTION(reflection_export) } } -/* {{{ proto public static array Reflection::getModifierNames() +/* {{{ proto public static array Reflection::getModifierNames(int modifiers) Returns an array of modifier names */ -ZEND_FUNCTION(reflection_getmodifiernames) +ZEND_METHOD(reflection, getmodifiernames) { long modifiers; @@ -565,7 +578,7 @@ ZEND_FUNCTION(reflection_getmodifiernames) /* {{{ proto public Reflection_Function::__construct(string name) Constructor. Throws an Exception in case the given function does not exist */ -ZEND_FUNCTION(reflection_function) +ZEND_METHOD(reflection_function, __construct) { zval *name; zval *object; @@ -598,7 +611,7 @@ ZEND_FUNCTION(reflection_function) /* {{{ proto public string Reflection_Function::toString() Returns a string representation */ -ZEND_FUNCTION(reflection_function_tostring) +ZEND_METHOD(reflection_function, tostring) { reflection_object *intern; zend_function *fptr; @@ -614,7 +627,7 @@ ZEND_FUNCTION(reflection_function_tostring) /* {{{ proto public string Reflection_Function::getName() Returns this function's name */ -ZEND_FUNCTION(reflection_function_getname) +ZEND_METHOD(reflection, function_getname) { METHOD_NOTSTATIC_NUMPARAMS(0); _default_get_entry(getThis(), "name", sizeof("name"), return_value TSRMLS_CC); @@ -623,7 +636,7 @@ ZEND_FUNCTION(reflection_function_getname) /* {{{ proto public bool Reflection_Function::isInternal() Returns whether this is an internal function */ -ZEND_FUNCTION(reflection_function_isinternal) +ZEND_METHOD(reflection, function_isinternal) { reflection_object *intern; zend_function *fptr; @@ -636,7 +649,7 @@ ZEND_FUNCTION(reflection_function_isinternal) /* {{{ proto public bool Reflection_Function::isUserDefined() Returns whether this is an user-defined function */ -ZEND_FUNCTION(reflection_function_isuserdefined) +ZEND_METHOD(reflection_function, isuserdefined) { reflection_object *intern; zend_function *fptr; @@ -647,9 +660,17 @@ ZEND_FUNCTION(reflection_function_isuserdefined) } /* }}} */ +/* {{{ proto public bool Reflection_Function::isAlias() + Returns whether this method is static */ +ZEND_METHOD(reflection_function, isalias) +{ + _function_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_ALIAS); +} +/* }}} */ + /* {{{ proto public string Reflection_Function::getFileName() Returns the filename of the file this function was declared in */ -ZEND_FUNCTION(reflection_function_getfilename) +ZEND_METHOD(reflection_function, getfilename) { reflection_object *intern; zend_function *fptr; @@ -665,7 +686,7 @@ ZEND_FUNCTION(reflection_function_getfilename) /* {{{ proto public int Reflection_Function::getStartLine() Returns the line this function's declaration starts at */ -ZEND_FUNCTION(reflection_function_getstartline) +ZEND_METHOD(reflection_function, getstartline) { reflection_object *intern; zend_function *fptr; @@ -681,7 +702,7 @@ ZEND_FUNCTION(reflection_function_getstartline) /* {{{ proto public int Reflection_Function::getEndLine() Returns the line this function's declaration ends at */ -ZEND_FUNCTION(reflection_function_getendline) +ZEND_METHOD(reflection_function, getendline) { reflection_object *intern; zend_function *fptr; @@ -697,7 +718,7 @@ ZEND_FUNCTION(reflection_function_getendline) /* {{{ proto public string Reflection_Function::getDocComment() Returns the doc comment for this function */ -ZEND_FUNCTION(reflection_function_getdoccomment) +ZEND_METHOD(reflection_function, getdoccomment) { reflection_object *intern; zend_function *fptr; @@ -713,7 +734,7 @@ ZEND_FUNCTION(reflection_function_getdoccomment) /* {{{ proto public array Reflection_Function::getStaticVariables() Returns an associative array containing this function's static variables and their values */ -ZEND_FUNCTION(reflection_function_getstaticvariables) +ZEND_METHOD(reflection_function, getstaticvariables) { zval *tmp_copy; reflection_object *intern; @@ -732,7 +753,7 @@ ZEND_FUNCTION(reflection_function_getstaticvariables) /* {{{ proto public mixed Reflection_Function::invoke(mixed* args) Invokes the function */ -ZEND_FUNCTION(reflection_function_invoke) +ZEND_METHOD(reflection_function, invoke) { zval *retval_ptr; zval ***params; @@ -785,7 +806,7 @@ ZEND_FUNCTION(reflection_function_invoke) /* {{{ proto public bool Reflection_Function::returnsReference() Gets whether this function returns a reference */ -ZEND_FUNCTION(reflection_function_returnsreference) +ZEND_METHOD(reflection_function, returnsreference) { reflection_object *intern; zend_function *fptr; @@ -876,7 +897,7 @@ void reflection_property_factory(zend_class_entry *ce, zend_property_info *prop, /* {{{ proto public Reflection_Method::__construct(mixed class, string name) Constructor. Throws an Exception in case the given method does not exist */ -ZEND_FUNCTION(reflection_method) +ZEND_METHOD(reflection_method, __construct) { zval *name, *class; zval *classname; @@ -942,7 +963,7 @@ ZEND_FUNCTION(reflection_method) /* {{{ proto public string Reflection_Method::toString() Returns a string representation */ -ZEND_FUNCTION(reflection_method_tostring) +ZEND_METHOD(reflection_method, tostring) { reflection_object *intern; zend_function *mptr; @@ -958,7 +979,7 @@ ZEND_FUNCTION(reflection_method_tostring) /* {{{ proto public mixed Reflection_Method::invoke(mixed object, mixed* args) Invokes the function. Pass a */ -ZEND_FUNCTION(reflection_method_invoke) +ZEND_METHOD(reflection_method, invoke) { zval *retval_ptr; zval ***params; @@ -1046,67 +1067,57 @@ ZEND_FUNCTION(reflection_method_invoke) } /* }}} */ -static void _method_check_flag(INTERNAL_FUNCTION_PARAMETERS, int mask) -{ - reflection_object *intern; - zend_function *mptr; - - METHOD_NOTSTATIC_NUMPARAMS(0); - GET_REFLECTION_OBJECT_PTR(mptr); - RETURN_BOOL(mptr->common.fn_flags & mask); -} - /* {{{ proto public bool Reflection_Method::isFinal() Returns whether this method is final */ -ZEND_FUNCTION(reflection_method_isfinal) +ZEND_METHOD(reflection_method, isfinal) { - _method_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_FINAL); + _function_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_FINAL); } /* }}} */ /* {{{ proto public bool Reflection_Method::isAbstract() Returns whether this method is abstract */ -ZEND_FUNCTION(reflection_method_isabstract) +ZEND_METHOD(reflection_method, isabstract) { - _method_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_ABSTRACT); + _function_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_ABSTRACT); } /* }}} */ /* {{{ proto public bool Reflection_Method::isPublic() Returns whether this method is public */ -ZEND_FUNCTION(reflection_method_ispublic) +ZEND_METHOD(reflection_method, ispublic) { - _method_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_PUBLIC); + _function_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_PUBLIC); } /* }}} */ /* {{{ proto public bool Reflection_Method::isPrivate() Returns whether this method is private */ -ZEND_FUNCTION(reflection_method_isprivate) +ZEND_METHOD(reflection_method, isprivate) { - _method_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_PRIVATE); + _function_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_PRIVATE); } /* }}} */ /* {{{ proto public bool Reflection_Method::isProtected() Returns whether this method is protected */ -ZEND_FUNCTION(reflection_method_isprotected) +ZEND_METHOD(reflection_method, isprotected) { - _method_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_PROTECTED); + _function_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_PROTECTED); } /* }}} */ /* {{{ proto public bool Reflection_Method::isStatic() Returns whether this method is static */ -ZEND_FUNCTION(reflection_method_isstatic) +ZEND_METHOD(reflection_method, isstatic) { - _method_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_STATIC); + _function_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_STATIC); } /* }}} */ /* {{{ proto public bool Reflection_Method::isConstructor() Returns whether this method is the constructor */ -ZEND_FUNCTION(reflection_method_isconstructor) +ZEND_METHOD(reflection_method, isconstructor) { reflection_object *intern; zend_function *mptr; @@ -1117,9 +1128,22 @@ ZEND_FUNCTION(reflection_method_isconstructor) } /* }}} */ +/* {{{ proto public bool Reflection_Method::isDestructor() + Returns whether this method is static */ +ZEND_METHOD(reflection_method, isdestructor) +{ + reflection_object *intern; + zend_function *mptr; + + METHOD_NOTSTATIC_NUMPARAMS(0); + GET_REFLECTION_OBJECT_PTR(mptr); + RETURN_BOOL(mptr->common.scope->destructor == mptr); +} +/* }}} */ + /* {{{ proto public int Reflection_Method::getModifiers() Returns a bitfield of the access modifiers for this method */ -ZEND_FUNCTION(reflection_method_getmodifiers) +ZEND_METHOD(reflection_method, getmodifiers) { reflection_object *intern; zend_function *mptr; @@ -1133,7 +1157,7 @@ ZEND_FUNCTION(reflection_method_getmodifiers) /* {{{ proto public Reflection_Class Reflection_Method::getDeclaringClass() Get the declaring class */ -ZEND_FUNCTION(reflection_method_getdeclaringclass) +ZEND_METHOD(reflection_method, getdeclaringclass) { reflection_object *intern; zend_function *mptr; @@ -1146,7 +1170,7 @@ ZEND_FUNCTION(reflection_method_getdeclaringclass) /* {{{ proto public Reflection_Class::__construct(mixed argument) throws Exception Constructor. Takes a string or an instance as an argument */ -ZEND_FUNCTION(reflection_class) +ZEND_METHOD(reflection_class, __construct) { zval *argument; zval *object; @@ -1189,7 +1213,7 @@ ZEND_FUNCTION(reflection_class) /* {{{ proto public string Reflection_Class::toString() Returns a string representation */ -ZEND_FUNCTION(reflection_class_tostring) +ZEND_METHOD(reflection_class, tostring) { reflection_object *intern; zend_class_entry *ce; @@ -1205,7 +1229,7 @@ ZEND_FUNCTION(reflection_class_tostring) /* {{{ proto public string Reflection_Class::getName() Returns the class' name */ -ZEND_FUNCTION(reflection_class_getname) +ZEND_METHOD(reflection_class, getname) { METHOD_NOTSTATIC_NUMPARAMS(0); _default_get_entry(getThis(), "name", sizeof("name"), return_value TSRMLS_CC); @@ -1214,7 +1238,7 @@ ZEND_FUNCTION(reflection_class_getname) /* {{{ proto public bool Reflection_Class::isInternal() Returns whether this class is an internal class */ -ZEND_FUNCTION(reflection_class_isinternal) +ZEND_METHOD(reflection_class, isinternal) { reflection_object *intern; zend_class_entry *ce; @@ -1227,7 +1251,7 @@ ZEND_FUNCTION(reflection_class_isinternal) /* {{{ proto public bool Reflection_Class::isUserDefined() Returns whether this class is user-defined */ -ZEND_FUNCTION(reflection_class_isuserdefined) +ZEND_METHOD(reflection_class, isuserdefined) { reflection_object *intern; zend_class_entry *ce; @@ -1240,7 +1264,7 @@ ZEND_FUNCTION(reflection_class_isuserdefined) /* {{{ proto public string Reflection_Class::getFileName() Returns the filename of the file this class was declared in */ -ZEND_FUNCTION(reflection_class_getfilename) +ZEND_METHOD(reflection_class, getfilename) { reflection_object *intern; zend_class_entry *ce; @@ -1256,7 +1280,7 @@ ZEND_FUNCTION(reflection_class_getfilename) /* {{{ proto public int Reflection_Class::getStartLine() Returns the line this class' declaration starts at */ -ZEND_FUNCTION(reflection_class_getstartline) +ZEND_METHOD(reflection_class, getstartline) { reflection_object *intern; zend_class_entry *ce; @@ -1272,7 +1296,7 @@ ZEND_FUNCTION(reflection_class_getstartline) /* {{{ proto public int Reflection_Class::getEndLine() Returns the line this class' declaration ends at */ -ZEND_FUNCTION(reflection_class_getendline) +ZEND_METHOD(reflection_class, getendline) { reflection_object *intern; zend_class_entry *ce; @@ -1288,7 +1312,7 @@ ZEND_FUNCTION(reflection_class_getendline) /* {{{ proto public string Reflection_Class::getDocComment() Returns the doc comment for this class */ -ZEND_FUNCTION(reflection_class_getdoccomment) +ZEND_METHOD(reflection_class, getdoccomment) { reflection_object *intern; zend_class_entry *ce; @@ -1304,7 +1328,7 @@ ZEND_FUNCTION(reflection_class_getdoccomment) /* {{{ proto public Reflection_Method Reflection_Class::getConstructor() Returns the class' constructor if there is one, NULL otherwise */ -ZEND_FUNCTION(reflection_class_getconstructor) +ZEND_METHOD(reflection_class, getconstructor) { reflection_object *intern; zend_class_entry *ce; @@ -1322,7 +1346,7 @@ ZEND_FUNCTION(reflection_class_getconstructor) /* {{{ proto public Reflection_Method Reflection_Class::getMethod(string name) Returns the class' method specified by it's name */ -ZEND_FUNCTION(reflection_class_getmethod) +ZEND_METHOD(reflection_class, getmethod) { reflection_object *intern; zend_class_entry *ce; @@ -1363,7 +1387,7 @@ static int _addmethod(zend_function *mptr, int num_args, va_list args, zend_hash /* {{{ proto public Reflection_Method[] Reflection_Class::getMethods() Returns an array of this class' methods */ -ZEND_FUNCTION(reflection_class_getmethods) +ZEND_METHOD(reflection_class, getmethods) { reflection_object *intern; zend_class_entry *ce; @@ -1389,7 +1413,7 @@ ZEND_FUNCTION(reflection_class_getmethods) /* {{{ proto public Reflection_Property Reflection_Class::getProperty(string name) Returns the class' property specified by it's name */ -ZEND_FUNCTION(reflection_class_getproperty) +ZEND_METHOD(reflection_class, getproperty) { reflection_object *intern; zend_class_entry *ce; @@ -1429,7 +1453,7 @@ static int _addproperty(zend_property_info *pptr, int num_args, va_list args, ze /* {{{ proto public Reflection_Property[] Reflection_Class::getProperties() Returns an array of this class' properties */ -ZEND_FUNCTION(reflection_class_getproperties) +ZEND_METHOD(reflection_class, getproperties) { reflection_object *intern; zend_class_entry *ce; @@ -1455,7 +1479,7 @@ ZEND_FUNCTION(reflection_class_getproperties) /* {{{ proto public array Reflection_Class::getConstants() Returns an associative array containing this class' constants and their values */ -ZEND_FUNCTION(reflection_class_getconstants) +ZEND_METHOD(reflection_class, getconstants) { zval *tmp_copy; reflection_object *intern; @@ -1470,7 +1494,7 @@ ZEND_FUNCTION(reflection_class_getconstants) /* {{{ proto public mixed Reflection_Class::getConstant(string name) Returns the class' constant specified by its name */ -ZEND_FUNCTION(reflection_class_getconstant) +ZEND_METHOD(reflection_class, getconstant) { reflection_object *intern; zend_class_entry *ce; @@ -1504,7 +1528,7 @@ static void _class_check_flag(INTERNAL_FUNCTION_PARAMETERS, int mask) /* {{{ proto public bool Reflection_Class::isInstantiable() Returns whether this class is instantiable */ -ZEND_FUNCTION(reflection_class_isinstantiable) +ZEND_METHOD(reflection_class, isinstantiable) { reflection_object *intern; zend_class_entry *ce; @@ -1528,7 +1552,7 @@ ZEND_FUNCTION(reflection_class_isinstantiable) /* {{{ proto public bool Reflection_Class::isInterface() Returns whether this is an interface or a class */ -ZEND_FUNCTION(reflection_class_isinterface) +ZEND_METHOD(reflection_class, isinterface) { _class_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_INTERFACE); } @@ -1536,7 +1560,7 @@ ZEND_FUNCTION(reflection_class_isinterface) /* {{{ proto public bool Reflection_Class::isFinal() Returns whether this class is final */ -ZEND_FUNCTION(reflection_class_isfinal) +ZEND_METHOD(reflection_class, isfinal) { _class_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_FINAL_CLASS); } @@ -1544,7 +1568,7 @@ ZEND_FUNCTION(reflection_class_isfinal) /* {{{ proto public bool Reflection_Class::isAbstract() Returns whether this class is abstract */ -ZEND_FUNCTION(reflection_class_isabstract) +ZEND_METHOD(reflection_class, isabstract) { _class_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_ABSTRACT_CLASS); } @@ -1552,7 +1576,7 @@ ZEND_FUNCTION(reflection_class_isabstract) /* {{{ proto public int Reflection_Class::getModifiers() Returns a bitfield of the access modifiers for this class */ -ZEND_FUNCTION(reflection_class_getmodifiers) +ZEND_METHOD(reflection_class, getmodifiers) { reflection_object *intern; zend_class_entry *ce; @@ -1566,7 +1590,7 @@ ZEND_FUNCTION(reflection_class_getmodifiers) /* {{{ proto public bool Reflection_Class::isInstance(stdclass object) Returns whether the given object is an instance of this class */ -ZEND_FUNCTION(reflection_class_isinstance) +ZEND_METHOD(reflection_class, isinstance) { reflection_object *intern; zend_class_entry *ce; @@ -1583,7 +1607,7 @@ ZEND_FUNCTION(reflection_class_isinstance) /* {{{ proto public stdclass Reflection_Class::newInstance(mixed* args) Returns an instance of this class */ -ZEND_FUNCTION(reflection_class_newinstance) +ZEND_METHOD(reflection_class, newinstance) { zval *retval_ptr; reflection_object *intern; @@ -1643,7 +1667,7 @@ ZEND_FUNCTION(reflection_class_newinstance) /* {{{ proto public Reflection_Class[] Reflection_Class::getInterfaces() Returns an array of interfaces this class implements */ -ZEND_FUNCTION(reflection_class_getinterfaces) +ZEND_METHOD(reflection_class, getinterfaces) { reflection_object *intern; zend_class_entry *ce; @@ -1669,7 +1693,7 @@ ZEND_FUNCTION(reflection_class_getinterfaces) /* {{{ proto public Reflection_Class Reflection_Class::getParentClass() Returns the class' parent class, or, if none exists, FALSE */ -ZEND_FUNCTION(reflection_class_getparentclass) +ZEND_METHOD(reflection_class, getparentclass) { reflection_object *intern; zend_class_entry *ce; @@ -1687,7 +1711,7 @@ ZEND_FUNCTION(reflection_class_getparentclass) /* {{{ proto public bool Reflection_Class::isSubclassOf(Reflection_Class class) Returns whether this class is a subclass of another class */ -ZEND_FUNCTION(reflection_class_issubclassof) +ZEND_METHOD(reflection_class, issubclassof) { reflection_object *intern, *argument; zend_class_entry *ce; @@ -1716,7 +1740,7 @@ ZEND_FUNCTION(reflection_class_issubclassof) /* {{{ proto public Reflection_Property::__construct(mixed class, string name) Constructor. Throws an Exception in case the given property does not exist */ -ZEND_FUNCTION(reflection_property) +ZEND_METHOD(reflection_property, __construct) { zval *name, *class; zval *classname; @@ -1787,7 +1811,7 @@ ZEND_FUNCTION(reflection_property) /* {{{ proto public string Reflection_Property::toString() Returns a string representation */ -ZEND_FUNCTION(reflection_property_tostring) +ZEND_METHOD(reflection_property, tostring) { reflection_object *intern; property_reference *ref; @@ -1803,7 +1827,7 @@ ZEND_FUNCTION(reflection_property_tostring) /* {{{ proto public string Reflection_Property::getName() Returns the class' name */ -ZEND_FUNCTION(reflection_property_getname) +ZEND_METHOD(reflection_property, getname) { METHOD_NOTSTATIC_NUMPARAMS(0); _default_get_entry(getThis(), "name", sizeof("name"), return_value TSRMLS_CC); @@ -1822,7 +1846,7 @@ static void _property_check_flag(INTERNAL_FUNCTION_PARAMETERS, int mask) /* {{{ proto public bool Reflection_Property::isPublic() Returns whether this property is public */ -ZEND_FUNCTION(reflection_property_ispublic) +ZEND_METHOD(reflection_property, ispublic) { _property_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_PUBLIC); } @@ -1830,7 +1854,7 @@ ZEND_FUNCTION(reflection_property_ispublic) /* {{{ proto public bool Reflection_Property::isPrivate() Returns whether this property is private */ -ZEND_FUNCTION(reflection_property_isprivate) +ZEND_METHOD(reflection_property, isprivate) { _property_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_PRIVATE); } @@ -1838,7 +1862,7 @@ ZEND_FUNCTION(reflection_property_isprivate) /* {{{ proto public bool Reflection_Property::isProtected() Returns whether this property is protected */ -ZEND_FUNCTION(reflection_property_isprotected) +ZEND_METHOD(reflection_property, isprotected) { _property_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_PROTECTED); } @@ -1846,7 +1870,7 @@ ZEND_FUNCTION(reflection_property_isprotected) /* {{{ proto public bool Reflection_Property::isStatic() Returns whether this property is static */ -ZEND_FUNCTION(reflection_property_isstatic) +ZEND_METHOD(reflection_property, isstatic) { _property_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ZEND_ACC_STATIC); } @@ -1854,7 +1878,7 @@ ZEND_FUNCTION(reflection_property_isstatic) /* {{{ proto public bool Reflection_Property::isDefault() Returns whether this property is default (declared at compilation time). */ -ZEND_FUNCTION(reflection_property_isdefault) +ZEND_METHOD(reflection_property, isdefault) { _property_check_flag(INTERNAL_FUNCTION_PARAM_PASSTHRU, ~ZEND_ACC_IMPLICIT_PUBLIC); } @@ -1862,7 +1886,7 @@ ZEND_FUNCTION(reflection_property_isdefault) /* {{{ proto public int Reflection_Property::getModifiers() Returns a bitfield of the access modifiers for this property */ -ZEND_FUNCTION(reflection_property_getmodifiers) +ZEND_METHOD(reflection_property, getmodifiers) { reflection_object *intern; property_reference *ref; @@ -1878,7 +1902,7 @@ ZEND_FUNCTION(reflection_property_getmodifiers) /* {{{ proto public mixed Reflection_Property::getValue(stdclass object) Returns this property's value */ -ZEND_FUNCTION(reflection_property_getvalue) +ZEND_METHOD(reflection_property, getvalue) { reflection_object *intern; property_reference *ref; @@ -1909,7 +1933,7 @@ ZEND_FUNCTION(reflection_property_getvalue) /* {{{ proto public void Reflection_Property::setValue(stdclass object, mixed value) Sets this property's value */ -ZEND_FUNCTION(reflection_property_setvalue) +ZEND_METHOD(reflection_property, setvalue) { reflection_object *intern; property_reference *ref; @@ -1963,7 +1987,7 @@ ZEND_FUNCTION(reflection_property_setvalue) /* {{{ proto public Reflection_Class Reflection_Property::getDeclaringClass() Get the declaring class */ -ZEND_FUNCTION(reflection_property_getdeclaringclass) +ZEND_METHOD(reflection_property, getdeclaringclass) { reflection_object *intern; property_reference *ref; @@ -1976,7 +2000,7 @@ ZEND_FUNCTION(reflection_property_getdeclaringclass) /* {{{ proto public Reflection_Extension::__construct(string name) Constructor. Throws an Exception in case the given extension does not exist */ -ZEND_FUNCTION(reflection_extension) +ZEND_METHOD(reflection_extension, __construct) { zval *name; zval *object; @@ -2010,7 +2034,7 @@ ZEND_FUNCTION(reflection_extension) /* {{{ proto public string Reflection_Extension::toString() Returns a string representation */ -ZEND_FUNCTION(reflection_extension_tostring) +ZEND_METHOD(reflection_extension, tostring) { reflection_object *intern; zend_module_entry *module; @@ -2026,7 +2050,7 @@ ZEND_FUNCTION(reflection_extension_tostring) /* {{{ proto public string Reflection_Extension::getName() Returns this extension's name */ -ZEND_FUNCTION(reflection_extension_getname) +ZEND_METHOD(reflection_extension, getname) { METHOD_NOTSTATIC_NUMPARAMS(0); _default_get_entry(getThis(), "name", sizeof("name"), return_value TSRMLS_CC); @@ -2035,7 +2059,7 @@ ZEND_FUNCTION(reflection_extension_getname) /* {{{ proto public string Reflection_Extension::getVersion() Returns this extension's version */ -ZEND_FUNCTION(reflection_extension_getversion) +ZEND_METHOD(reflection_extension, getversion) { reflection_object *intern; zend_module_entry *module; @@ -2054,7 +2078,7 @@ ZEND_FUNCTION(reflection_extension_getversion) /* {{{ proto public Reflection_Function[] Reflection_Extension::getFunctions() Returns an array of this extension's fuctions */ -ZEND_FUNCTION(reflection_extension_getfunctions) +ZEND_METHOD(reflection_extension, getfunctions) { reflection_object *intern; zend_module_entry *module; @@ -2102,7 +2126,7 @@ static int _addconstant(zend_constant *constant, int num_args, va_list args, zen /* {{{ proto public array Reflection_Extension::getConstants() Returns an associative array containing this extension's constants and their values */ -ZEND_FUNCTION(reflection_extension_getconstants) +ZEND_METHOD(reflection_extension, getconstants) { reflection_object *intern; zend_module_entry *module; @@ -2132,7 +2156,7 @@ static int _addinientry(zend_ini_entry *ini_entry, int num_args, va_list args, z /* {{{ proto public array Reflection_Extension::getINIEntries() Returns an associative array containing this extension's INI entries and their values */ -ZEND_FUNCTION(reflection_extension_getinientries) +ZEND_METHOD(reflection_extension, getinientries) { reflection_object *intern; zend_module_entry *module; @@ -2145,8 +2169,8 @@ ZEND_FUNCTION(reflection_extension_getinientries) } static zend_function_entry reflection_functions[] = { - ZEND_NAMED_FE(getmodifiernames, ZEND_FN(reflection_getmodifiernames), NULL) - ZEND_NAMED_FE(export, ZEND_FN(reflection_export), NULL) + ZEND_ME(reflection, getmodifiernames, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) + ZEND_ME(reflection, export, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) {NULL, NULL, NULL} }; @@ -2156,91 +2180,92 @@ static zend_function_entry reflector_functions[] = { }; static zend_function_entry reflection_function_functions[] = { - ZEND_FE(reflection_function, NULL) - ZEND_NAMED_FE(tostring, ZEND_FN(reflection_function_tostring), NULL) - ZEND_NAMED_FE(isinternal, ZEND_FN(reflection_function_isinternal), NULL) - ZEND_NAMED_FE(isuserdefined, ZEND_FN(reflection_function_isuserdefined), NULL) - ZEND_NAMED_FE(getname, ZEND_FN(reflection_function_getname), NULL) - ZEND_NAMED_FE(getfilename, ZEND_FN(reflection_function_getfilename), NULL) - ZEND_NAMED_FE(getstartline, ZEND_FN(reflection_function_getstartline), NULL) - ZEND_NAMED_FE(getendline, ZEND_FN(reflection_function_getendline), NULL) - ZEND_NAMED_FE(getdoccomment, ZEND_FN(reflection_function_getdoccomment), NULL) - ZEND_NAMED_FE(getstaticvariables, ZEND_FN(reflection_function_getstaticvariables), NULL) - ZEND_NAMED_FE(invoke, ZEND_FN(reflection_function_invoke), NULL) - ZEND_NAMED_FE(returnsreference, ZEND_FN(reflection_function_returnsreference), NULL) + ZEND_ME(reflection_function, __construct, NULL, 0) + ZEND_ME(reflection_function, tostring, NULL, 0) + ZEND_ME(reflection_function, isinternal, NULL, 0) + ZEND_ME(reflection_function, isuserdefined, NULL, 0) + ZEND_ME(reflection_function, getname, NULL, 0) + ZEND_ME(reflection_function, getfilename, NULL, 0) + ZEND_ME(reflection_function, getstartline, NULL, 0) + ZEND_ME(reflection_function, getendline, NULL, 0) + ZEND_ME(reflection_function, getdoccomment, NULL, 0) + ZEND_ME(reflection_function, getstaticvariables, NULL, 0) + ZEND_ME(reflection_function, invoke, NULL, 0) + ZEND_ME(reflection_function, returnsreference, NULL, 0) {NULL, NULL, NULL} }; static zend_function_entry reflection_method_functions[] = { - ZEND_FE(reflection_method, NULL) - ZEND_NAMED_FE(tostring, ZEND_FN(reflection_method_tostring), NULL) - ZEND_NAMED_FE(ispublic, ZEND_FN(reflection_method_ispublic), NULL) - ZEND_NAMED_FE(isprivate, ZEND_FN(reflection_method_isprivate), NULL) - ZEND_NAMED_FE(isprotected, ZEND_FN(reflection_method_isprotected), NULL) - ZEND_NAMED_FE(isabstract, ZEND_FN(reflection_method_isabstract), NULL) - ZEND_NAMED_FE(isfinal, ZEND_FN(reflection_method_isfinal), NULL) - ZEND_NAMED_FE(isstatic, ZEND_FN(reflection_method_isstatic), NULL) - ZEND_NAMED_FE(getmodifiers, ZEND_FN(reflection_method_getmodifiers), NULL) - ZEND_NAMED_FE(isconstructor, ZEND_FN(reflection_method_isconstructor), NULL) - ZEND_NAMED_FE(invoke, ZEND_FN(reflection_method_invoke), NULL) - ZEND_NAMED_FE(getdeclaringclass, ZEND_FN(reflection_method_getdeclaringclass), NULL) + ZEND_ME(reflection_method, __construct, NULL, 0) + ZEND_ME(reflection_method, tostring, NULL, 0) + ZEND_ME(reflection_method, ispublic, NULL, 0) + ZEND_ME(reflection_method, isprivate, NULL, 0) + ZEND_ME(reflection_method, isprotected, NULL, 0) + ZEND_ME(reflection_method, isabstract, NULL, 0) + ZEND_ME(reflection_method, isfinal, NULL, 0) + ZEND_ME(reflection_method, isstatic, NULL, 0) + ZEND_ME(reflection_method, isconstructor, NULL, 0) + ZEND_ME(reflection_method, isdestructor, NULL, 0) + ZEND_ME(reflection_method, getmodifiers, NULL, 0) + ZEND_ME(reflection_method, invoke, NULL, 0) + ZEND_ME(reflection_method, getdeclaringclass, NULL, 0) {NULL, NULL, NULL} }; static zend_function_entry reflection_class_functions[] = { - ZEND_FE(reflection_class, NULL) - ZEND_NAMED_FE(tostring, ZEND_FN(reflection_class_tostring), NULL) - ZEND_NAMED_FE(getname, ZEND_FN(reflection_class_getname), NULL) - ZEND_NAMED_FE(isinternal, ZEND_FN(reflection_class_isinternal), NULL) - ZEND_NAMED_FE(isuserdefined, ZEND_FN(reflection_class_isuserdefined), NULL) - ZEND_NAMED_FE(isinstantiable, ZEND_FN(reflection_class_isinstantiable), NULL) - ZEND_NAMED_FE(getfilename, ZEND_FN(reflection_class_getfilename), NULL) - ZEND_NAMED_FE(getstartline, ZEND_FN(reflection_class_getstartline), NULL) - ZEND_NAMED_FE(getendline, ZEND_FN(reflection_class_getendline), NULL) - ZEND_NAMED_FE(getdoccomment, ZEND_FN(reflection_class_getdoccomment), NULL) - ZEND_NAMED_FE(getconstructor, ZEND_FN(reflection_class_getconstructor), NULL) - ZEND_NAMED_FE(getmethod, ZEND_FN(reflection_class_getmethod), NULL) - ZEND_NAMED_FE(getmethods, ZEND_FN(reflection_class_getmethods), NULL) - ZEND_NAMED_FE(getproperty, ZEND_FN(reflection_class_getproperty), NULL) - ZEND_NAMED_FE(getproperties, ZEND_FN(reflection_class_getproperties), NULL) - ZEND_NAMED_FE(getconstants, ZEND_FN(reflection_class_getconstants), NULL) - ZEND_NAMED_FE(getconstant, ZEND_FN(reflection_class_getconstant), NULL) - ZEND_NAMED_FE(getinterfaces, ZEND_FN(reflection_class_getinterfaces), NULL) - ZEND_NAMED_FE(isinterface, ZEND_FN(reflection_class_isinterface), NULL) - ZEND_NAMED_FE(isabstract, ZEND_FN(reflection_class_isabstract), NULL) - ZEND_NAMED_FE(isfinal, ZEND_FN(reflection_class_isfinal), NULL) - ZEND_NAMED_FE(getmodifiers, ZEND_FN(reflection_class_getmodifiers), NULL) - ZEND_NAMED_FE(isinstance, ZEND_FN(reflection_class_isinstance), NULL) - ZEND_NAMED_FE(newinstance, ZEND_FN(reflection_class_newinstance), NULL) - ZEND_NAMED_FE(getparentclass, ZEND_FN(reflection_class_getparentclass), NULL) - ZEND_NAMED_FE(issubclassof, ZEND_FN(reflection_class_issubclassof), NULL) + ZEND_ME(reflection_class, __construct, NULL, 0) + ZEND_ME(reflection_class, tostring, NULL, 0) + ZEND_ME(reflection_class, getname, NULL, 0) + ZEND_ME(reflection_class, isinternal, NULL, 0) + ZEND_ME(reflection_class, isuserdefined, NULL, 0) + ZEND_ME(reflection_class, isinstantiable, NULL, 0) + ZEND_ME(reflection_class, getfilename, NULL, 0) + ZEND_ME(reflection_class, getstartline, NULL, 0) + ZEND_ME(reflection_class, getendline, NULL, 0) + ZEND_ME(reflection_class, getdoccomment, NULL, 0) + ZEND_ME(reflection_class, getconstructor, NULL, 0) + ZEND_ME(reflection_class, getmethod, NULL, 0) + ZEND_ME(reflection_class, getmethods, NULL, 0) + ZEND_ME(reflection_class, getproperty, NULL, 0) + ZEND_ME(reflection_class, getproperties, NULL, 0) + ZEND_ME(reflection_class, getconstants, NULL, 0) + ZEND_ME(reflection_class, getconstant, NULL, 0) + ZEND_ME(reflection_class, getinterfaces, NULL, 0) + ZEND_ME(reflection_class, isinterface, NULL, 0) + ZEND_ME(reflection_class, isabstract, NULL, 0) + ZEND_ME(reflection_class, isfinal, NULL, 0) + ZEND_ME(reflection_class, getmodifiers, NULL, 0) + ZEND_ME(reflection_class, isinstance, NULL, 0) + ZEND_ME(reflection_class, newinstance, NULL, 0) + ZEND_ME(reflection_class, getparentclass, NULL, 0) + ZEND_ME(reflection_class, issubclassof, NULL, 0) {NULL, NULL, NULL} }; static zend_function_entry reflection_property_functions[] = { - ZEND_FE(reflection_property, NULL) - ZEND_NAMED_FE(tostring, ZEND_FN(reflection_property_tostring), NULL) - ZEND_NAMED_FE(getname, ZEND_FN(reflection_property_getname), NULL) - ZEND_NAMED_FE(getvalue, ZEND_FN(reflection_property_getvalue), NULL) - ZEND_NAMED_FE(setvalue, ZEND_FN(reflection_property_setvalue), NULL) - ZEND_NAMED_FE(ispublic, ZEND_FN(reflection_property_ispublic), NULL) - ZEND_NAMED_FE(isprivate, ZEND_FN(reflection_property_isprivate), NULL) - ZEND_NAMED_FE(isprotected, ZEND_FN(reflection_property_isprotected), NULL) - ZEND_NAMED_FE(isstatic, ZEND_FN(reflection_property_isstatic), NULL) - ZEND_NAMED_FE(isdefault, ZEND_FN(reflection_property_isdefault), NULL) - ZEND_NAMED_FE(getmodifiers, ZEND_FN(reflection_property_getmodifiers), NULL) - ZEND_NAMED_FE(getdeclaringclass, ZEND_FN(reflection_property_getdeclaringclass), NULL) + ZEND_ME(reflection_property, __construct, NULL, 0) + ZEND_ME(reflection_property, tostring, NULL, 0) + ZEND_ME(reflection_property, getname, NULL, 0) + ZEND_ME(reflection_property, getvalue, NULL, 0) + ZEND_ME(reflection_property, setvalue, NULL, 0) + ZEND_ME(reflection_property, ispublic, NULL, 0) + ZEND_ME(reflection_property, isprivate, NULL, 0) + ZEND_ME(reflection_property, isprotected, NULL, 0) + ZEND_ME(reflection_property, isstatic, NULL, 0) + ZEND_ME(reflection_property, isdefault, NULL, 0) + ZEND_ME(reflection_property, getmodifiers, NULL, 0) + ZEND_ME(reflection_property, getdeclaringclass, NULL, 0) {NULL, NULL, NULL} }; static zend_function_entry reflection_extension_functions[] = { - ZEND_FE(reflection_extension, NULL) - ZEND_NAMED_FE(tostring, ZEND_FN(reflection_extension_tostring), NULL) - ZEND_NAMED_FE(getname, ZEND_FN(reflection_extension_getname), NULL) - ZEND_NAMED_FE(getversion, ZEND_FN(reflection_extension_getversion), NULL) - ZEND_NAMED_FE(getfunctions, ZEND_FN(reflection_extension_getfunctions), NULL) - ZEND_NAMED_FE(getconstants, ZEND_FN(reflection_extension_getconstants), NULL) - ZEND_NAMED_FE(getinientries, ZEND_FN(reflection_extension_getinientries), NULL) + ZEND_ME(reflection_extension, __construct, NULL, 0) + ZEND_ME(reflection_extension, tostring, NULL, 0) + ZEND_ME(reflection_extension, getname, NULL, 0) + ZEND_ME(reflection_extension, getversion, NULL, 0) + ZEND_ME(reflection_extension, getfunctions, NULL, 0) + ZEND_ME(reflection_extension, getconstants, NULL, 0) + ZEND_ME(reflection_extension, getinientries, NULL, 0) {NULL, NULL, NULL} }; |