Commit Graph

82 Commits

Author SHA1 Message Date
Marcus Boerger
46be4c2626 Throw an exception in case a reflection object cannot be found and do not
override the exception from constructors in static method calls.
2004-01-31 12:20:20 +00:00
Marcus Boerger
0a210d7976 Fix some casing issues 2004-01-18 10:45:36 +00:00
foobar
b6b3443d0a - Fixed bug #26640 (__autoload() not invoked by Reflection classes)
# Also removed double call of reflection_register_implement() on
# reflection_extension_ptr.
# Fixed also case-insensitive lookup of property names,
# now Reflection_Property('Classname', 'FooBar'); works too.
2004-01-16 21:11:58 +00:00
foobar
ccfc46b0aa - Happy new year and PHP 5 for rest of the files too..
# Should the LICENSE and Zend/LICENSE dates be updated too?
2004-01-08 17:33:29 +00:00
Derick Rethans
6923a16c26 - Fixed var_export() to show public, protected and private modifiers properly.
- Exported (un)mangle_property_name.
2004-01-03 13:51:02 +00:00
Marcus Boerger
b58d371927 Fixed bug #26695 (Reflection API does not recognize mixed-case class hints)
# The exception part
2003-12-22 20:03:01 +00:00
Dmitry Stogov
2d9281352b Memory corruptions were fixed in zend_str_tolower_copy() 2003-12-15 07:17:27 +00:00
Andi Gutmans
d344648b07 - Fix __autoload() to preserve class case.
- Heads up, this patch might break stuff so please let me know if you
- bump into any problems.
2003-11-24 18:13:29 +00:00
Andi Gutmans
ceaddf238b - Allocation optimizations by Timm Friebe 2003-11-23 12:55:22 +00:00
Marcus Boerger
e72339284f Add method reflection_class::implementsInterface()
Allow string & reflection_class in isSubclassOf()
2003-11-08 21:41:42 +00:00
Marcus Boerger
ab6b1adf0b Fix reflection_class::isSubclassOf() 2003-11-08 21:02:21 +00:00
Marcus Boerger
da8ce17f7a This forces a better error message for non working clone calls. 2003-10-25 19:28:31 +00:00
Marcus Boerger
fe3db4c7e9 You shall not clone reflection_xx instances 2003-10-25 19:06:35 +00:00
Marcus Boerger
641a55a4dd Show if a class/object is iterateable 2003-10-17 17:51:01 +00:00
Marcus Boerger
43a948379a Fix showing final/abstract for classes 2003-10-17 08:15:48 +00:00
Marcus Boerger
0266efb8b5 Add public array Reflection_Class::getDefaultProperties() 2003-09-20 14:22:48 +00:00
Marcus Boerger
5b3bb16530 Go with studlyCaps 2003-09-18 12:09:55 +00:00
Marcus Boerger
f8a376fe8e Change tostring() into __toString() to match method name used in casting. 2003-09-18 11:55:57 +00:00
Marcus Boerger
d2088841a4 - Make it clear whether it is an interface or a class
- Fix static properties
2003-09-16 19:31:45 +00:00
Marcus Boerger
a986b3f6a4 Add missing newline if no static methods are available 2003-09-06 13:18:12 +00:00
Marcus Boerger
10ea007e39 - Internal functions shall be static
- Fix more nesting
2003-09-06 13:11:27 +00:00
Marcus Boerger
35529e1964 Fix logic 2003-09-06 13:02:16 +00:00
Marcus Boerger
c31fc7771a - Fix CS: {{{ / }}}
- Fix static reflection_*::export()
- Add class reflection_object which allows to show dynamic properties
2003-09-06 12:52:40 +00:00
Marcus Boerger
f5b1114449 Use %s where it makes more sense 2003-09-06 10:59:07 +00:00
Marcus Boerger
79a507e4eb Simplify reflection_property::__constructor() and fix property factory 2003-09-05 14:48:55 +00:00
Marcus Boerger
9a39cd5501 - Don't use resorved words as variable names.
- Improve several exception messages.
- Fix Reflection_Property::_construct() / getDeclaringClass()
# The above does not imply that properties are fixed when returned
# by other reflection api methods.
2003-09-05 14:35:31 +00:00
Marcus Boerger
34990374e1 Fix reflection_api::__construct() (noticed by Andrey) 2003-09-05 12:14:03 +00:00
Marcus Boerger
4e7a782f3a Add reflection_class::getstaticproerties() 2003-09-04 15:57:25 +00:00
Marcus Boerger
2f6e25da79 Clearly distinguish between Const, Static and Other members.
# Const and static props have more in common then static and dynamic/implicit.
2003-09-03 00:38:13 +00:00
Marcus Boerger
560d3ab36a Use appropriate function for property name unmangling.
# Make Andrey happy
2003-09-02 14:46:02 +00:00
Marcus Boerger
7148cb9e73 Make these static as noticed by Andrey 2003-09-02 14:11:53 +00:00
Marcus Boerger
bd86aff005 These are implicit properties as denoted by the flag. Dynamic properties only
exist in one single object and currently reflection api is not capable of
showing those.
2003-09-02 13:12:47 +00:00
Marcus Boerger
bca0019d43 Fix initial buffer size 2003-09-01 21:14:09 +00:00
Marcus Boerger
2b19c5435e Fix class handling of invoke 2003-09-01 21:11:38 +00:00
Marcus Boerger
bef3e13caf Add missing '}' 2003-09-01 19:47:34 +00:00
Marcus Boerger
cbd08869f2 Add static reflector::export() and its implementations.
#
# This makes the main reflection use a lot easier.
#
2003-09-01 16:13:24 +00:00
Marcus Boerger
a389286b99 Set the params in the struct 2003-09-01 15:09:57 +00:00
Marcus Boerger
4506d4ea24 Don't repeat first const count(consts) time 2003-08-31 15:47:48 +00:00
Marcus Boerger
660c14e74a Beautify output 2003-08-31 15:30:13 +00:00
Marcus Boerger
4af0621036 Add reflection_parameters, patch by Timm Friebe 2003-08-31 15:06:54 +00:00
Marcus Boerger
8376b7eff7 Check whether we may access tat union 2003-08-31 11:21:30 +00:00
Marcus Boerger
ade319ac54 Using zend_spprintf should be faster here 2003-08-31 10:06:13 +00:00
Marcus Boerger
f1c92fa4c5 - Calling abstract methods should be a error for consistency reason.
- So in reflection_api we use the reflection_exception again.
2003-08-30 23:51:42 +00:00
Marcus Boerger
6c69b28790 fci.function_table & fci.function_name are not needed since we use zend_fcall_info_cache 2003-08-30 13:47:27 +00:00
Marcus Boerger
e679504861 Be precise 2003-08-30 13:38:23 +00:00
Marcus Boerger
49a538d054 Actually using fcc would be a good idea 2003-08-30 12:58:35 +00:00
Marcus Boerger
50040c8ae9 - Use zend_fcall_info_cache in invoke() to improve speed.
# This also fixes the problem with calling static methods.
2003-08-29 21:46:12 +00:00
Marcus Boerger
43836e97c5 Nuke unused variable
# I should have taken Timm's patch
2003-08-27 20:48:41 +00:00
Marcus Boerger
7f5196953c Fix reflection_class::newInstance() 2003-08-27 20:45:34 +00:00
Marcus Boerger
cec053f707 Don't identify alias'ed functions 2003-08-24 16:35:58 +00:00