Commit Graph

454 Commits

Author SHA1 Message Date
Yiduo (David) Wang
95da0dc570 Added macros for managing zval refcounts and is_ref statuses 2007-10-07 05:15:07 +00:00
Dmitry Stogov
8146078f7b Improved memory usage by movig constants to read only memory. (Dmitry, Pierre) 2007-09-27 18:28:44 +00:00
Antony Dovgal
4919bc45c5 fix coverity issue #411 2007-09-27 09:14:56 +00:00
Dmitry Stogov
d085fa1fe1 Simplify (the prototype of zend_u_get_constant_ex() is going to be changed) 2007-09-11 11:16:46 +00:00
Sebastian Bergmann
89c30a380b - MFB: Fugbix typo. 2007-08-20 17:01:59 +00:00
Johannes Schlüter
b83198cd2c - Mark the parameter for ReflectionProperty::GetValue as optional
# [DOC] The documentation on this is wrong, too. The parameter is only
# needed for getting the value of an object's property, not for static
# ones. (I'm not sure if it has always been that way...)
2007-08-17 14:21:00 +00:00
Johannes Schlüter
610f70fcf5 - MFB: New ReflectionExtension::info() function to print the phpinfo() block
for an extension.
2007-07-24 23:16:47 +00:00
Hannes Magnusson
8bff918046 MFB: Avoid endless loop 2007-07-23 01:21:04 +00:00
Zoe Slattery
2a8e9f9b50 reflectionObject tests 2007-07-12 21:08:02 +00:00
Antony Dovgal
0a0b078746 implement (or fix?) #41884 (ReflectionClass::getDefaultProperties() does not handle static attributes) 2007-07-11 22:03:59 +00:00
Zoe Slattery
fb148e4953 More reflectionClass tests 2007-07-11 20:16:43 +00:00
Antony Dovgal
e58c638bc8 fix typo and bug #41962 2007-07-11 13:26:47 +00:00
Zoe Slattery
a8b455aa5b Tests for reflectionClass 2007-07-10 16:21:26 +00:00
Zoe Slattery
6873ee8867 ReflectionClass constructor tests 2007-07-09 13:13:34 +00:00
Antony Dovgal
46f28f617b fix folding 2007-07-06 12:11:20 +00:00
Hannes Magnusson
e85d9c665d Fix logic 2007-05-28 10:34:37 +00:00
Antony Dovgal
419c5b3db1 fix tests
add test for yet not merged fix
2007-04-26 23:42:36 +00:00
Johannes Schlüter
85910d510b - Add test 2007-04-12 18:31:57 +00:00
Antony Dovgal
1efa2ab3fc add new test and SKIPIF sections 2007-04-12 12:43:54 +00:00
Antony Dovgal
df2c656630 new test 2007-03-19 08:09:55 +00:00
Johannes Schlüter
a9d356663b - Fix string compare in unicode mode 2007-03-17 23:38:41 +00:00
Antony Dovgal
53cf140b9a fix #40794 (ReflectionObject::getValues() may crash when used with dynamic properties) 2007-03-17 22:59:22 +00:00
Sebastian Bergmann
17abc7b283 MFB: Fugbix typo. 2007-03-16 06:42:01 +00:00
Antony Dovgal
ec79b63d69 fix #40431 (dynamic properties may cause crash in ReflectionProperty methods) 2007-02-10 20:51:42 +00:00
Sebastian Bergmann
3717df72ae Bump year. 2007-01-01 09:29:37 +00:00
Ilia Alshanetsky
2b23e4e205 MFB: Fixed bug #39884 (ReflectionParameter::getClass() throws exception for
type hint self).
2006-12-22 15:38:42 +00:00
Andrei Zmievski
e722dce575 - Marcus was too quick. Let's put type before zstr in the macros.
- Also mark get_include_path() and restore_include_path() with U.
2006-12-19 21:38:59 +00:00
Marcus Boerger
98dce57dd5 - Fix ZVAL_ZSTRL 2006-12-19 21:13:21 +00:00
Andrei Zmievski
75c272440e Turn doc comments into zstr strings with corresponding adjustments. 2006-10-27 21:22:05 +00:00
Andrei Zmievski
723eb5274e Mark reflection methods as Unicode-compliant (except for FIXME parts). 2006-10-24 17:37:17 +00:00
Andrei Zmievski
78f8685b45 Fix remaining Unicode issues. 2006-10-23 20:00:40 +00:00
Johannes Schlüter
0e58baae93 - Fix #38465 (ReflectionParameter fails if default value is an access to self:: 2006-10-18 16:34:25 +00:00
Dmitry Stogov
5e60e48f8a Unicode support. (Two more places must be fixed. Look for FIXME comments.) 2006-10-17 11:11:45 +00:00
Antony Dovgal
a92a070353 fix #39125 (Memleak when reflecting non-existing class/method) 2006-10-11 15:51:17 +00:00
Antony Dovgal
5d4259ff85 more improvements 2006-10-06 18:02:50 +00:00
Antony Dovgal
c65d3234cd fix #39067 (getDeclaringClass() and private properties) 2006-10-06 17:34:56 +00:00
Dmitry Stogov
2027ceaa14 Fixed bug #38942 (Double old-style-ctor inheritance) 2006-10-03 09:59:24 +00:00
Antony Dovgal
8e3f5c3a04 fix #39001 (ReflectionProperty returns incorrect declaring class for protected properties) 2006-10-02 12:15:47 +00:00
Hannes Magnusson
a357dfdbe7 Fix test
# failes atm though
2006-10-02 08:35:43 +00:00
Dmitry Stogov
59d0c16391 Fixed bug #38942 (Double old-style-ctor inheritance) 2006-09-26 07:55:54 +00:00
Antony Dovgal
19ac74fd23 fix tests 2006-09-19 12:06:49 +00:00
Johannes Schlüter
f1ed29ffd8 - Unicode fix 2006-09-17 09:39:04 +00:00
Antony Dovgal
5e17a28218 fix test 2006-09-12 10:44:18 +00:00
Johannes Schlüter
c1f302279f - Print the type of the original value 2006-09-11 21:21:27 +00:00
Johannes Schlüter
90db332cff - Fix #37923 (Display constant value in reflection::export) 2006-09-11 17:06:59 +00:00
Hannes Magnusson
fac517522b MFB: abstracting ReflectionFunctionAbstract & fix couple of typos 2006-09-10 13:35:32 +00:00
Johannes Schlüter
3a0ab6a644 - Add HAVE_REFLECTION define for win32 (by Steph) 2006-09-02 19:12:57 +00:00
Antony Dovgal
a10691e3b9 last portion of z/Z fixes 2006-08-31 16:14:43 +00:00
Antony Dovgal
dcbbae86eb fix #38653 (memory leak in ReflectionClass::getConstant()) 2006-08-30 10:41:43 +00:00
Antony Dovgal
7d019e4053 build ext/spl and ext/reflection as static (fixes #38556) 2006-08-23 09:47:07 +00:00
Dmitry Stogov
c62b08650b Fix usage of uninitialized value and unicode support 2006-07-27 09:19:26 +00:00
Ilia Alshanetsky
23de434f3a MFB: Improved fix for bug #38132 2006-07-27 00:22:07 +00:00
Ilia Alshanetsky
0e5b2b1e10 Added test for bug #38132 2006-07-26 23:32:07 +00:00
Antony Dovgal
8221909b21 fix bug #38217 (ReflectionClass::newInstanceArgs() tries to allocate too much memory) 2006-07-26 08:06:59 +00:00
Ilia Alshanetsky
abd9dc0bf2 MFB: Fixed bug #38194 (ReflectionClass::isSubclassOf() returns TRUE for the
class itself).
2006-07-25 12:36:29 +00:00
Marcus Boerger
eb0fd63012 - zend_(u_)_unmangle_property_name() has changed 2006-07-24 17:55:41 +00:00
Andrei Zmievski
0667864631 Callable checks and class fetching and lookup should support identifer
normalization now. (Marcus, Andrei)
2006-07-18 17:52:45 +00:00
Antony Dovgal
b8059674ee Unicode support in ReflectionParameter::__construct() 2006-07-13 12:34:30 +00:00
Marcus Boerger
18d45918bc - Fix bug #37816 ReflectionProperty does not throw exception when accessing protected attribute 2006-07-10 00:13:50 +00:00
Marcus Boerger
465a418908 - Fix logic 2006-07-09 23:28:59 +00:00
Hannes Magnusson
7e3e99251f Added new method to see if function is disabled or not 2006-07-07 11:53:54 +00:00
Hannes Magnusson
2a18040cb5 Obs. ZEND_BEGIN_ARG_INFO => ZEND_BEGIN_ARG_INFO_EX 2006-07-04 15:37:13 +00:00
Hannes Magnusson
2fbf0478da Fix protos&arginfo 2006-07-04 15:33:32 +00:00
Marcus Boerger
233a322f1e - Fix ReflectionObject::getProperties() + dyn properties 2006-06-24 18:53:51 +00:00
Hannes Magnusson
d6486b8116 Only display visibility for methods 2006-06-11 23:46:53 +00:00
Hannes Magnusson
6d1b43df02 Fixed bug #37764
- Created new abstract class, ReflectionFunctionAbstract implementing Reflector
- Moved all methods from ReflectionFunction (except export, invoke & invokeArgs)
- ReflectionFunction now inherits everything from ReflectionFunctionAbstract
    and implements its own export, invoke & invokeArgs methods
- ReflectionMethod now extends ReflectionFunctionAbstract and implements
    its own export, invoke & invokeArgs methods.
- Removed stdClass typehint from ReflectionClass::isInstance
- Removed stdClass typehint from ReflectionClass::set/getValue
2006-06-10 00:28:28 +00:00
Marcus Boerger
c100b2837f - Add arginfo (hannes) 2006-06-07 22:39:00 +00:00
Marcus Boerger
7b2b67770e - Add ReflectionClass::getInterfaceNames() 2006-06-07 09:11:58 +00:00
Marcus Boerger
9b70699617 - Use engine call to register interfaces (steph) 2006-06-04 10:11:48 +00:00
Antony Dovgal
8c04c51f9b ignore my previous fix, it was wrong =) 2006-06-01 14:31:02 +00:00
Antony Dovgal
890b19a709 no need to fetch trsm_ls when it's already available 2006-06-01 12:25:32 +00:00
Antony Dovgal
d254845aea no "native strings" in Unicode mode anymore 2006-04-22 23:50:29 +00:00
Antony Dovgal
6a53a49c8b MF51: fix bug #36898 (__set() leaks in classes extending internal ones)
Added:
ZEND_API void zend_object_std_init(zend_object *object, zend_class_entry *ce TSRMLS_DC)
ZEND_API void zend_object_std_dtor(zend_object *object TSRMLS_DC)
2006-03-29 15:08:52 +00:00
Marcus Boerger
9eebea0a45 - Fix tests 2006-03-13 22:59:36 +00:00
Marcus Boerger
946c955ce7 - Fix ReflectionParameter
. Reintroduce getClass()
  . Change getDeclaringClass() to return what it suggests
  . Add getDeclaringFunction()
  . Add getPosition()
# This also fixes Bug #36687 ReflectionParameter::getDeclaringClass returns
# wrong result
2006-03-12 15:34:46 +00:00
Marcus Boerger
352d4a6d8c - Prefix test names
- Add missing skipif
2006-03-12 12:11:22 +00:00
Rasmus Lerdorf
b83d7e3151 stray text 2006-03-06 23:27:26 +00:00
Marcus Boerger
1050956ad1 - Proto fixes 2006-03-06 09:47:03 +00:00
Marcus Boerger
4fb5bc4b6e - Make Derick happy for the moment 2006-02-28 18:26:24 +00:00
Marcus Boerger
257a95f69f - deprecated belongs in the flag area, not in the keyword area 2006-02-25 18:05:16 +00:00
Johannes Schlüter
0f88ee56d0 - Fix description 2006-02-24 23:25:39 +00:00
Johannes Schlüter
e0053b2536 - We need %v here 2006-02-24 23:10:53 +00:00
Johannes Schlüter
cea8dd887b - Fix #29986 (Class constants won't work with predefined constants when
using ReflectionClass)
2006-02-24 23:08:36 +00:00
Johannes Schlüter
4ad7d57a97 - deprecated not static 2006-02-24 13:44:46 +00:00
Marcus Boerger
90c428a6a0 - Fix warning 2006-02-24 13:37:20 +00:00
Marcus Boerger
7dfafcbb84 - Functions can be deprecated too
- Add missing constant
2006-02-24 13:13:55 +00:00
Ilia Alshanetsky
71a4f39d7b MFB51: Added test for bug #36434 2006-02-22 15:45:45 +00:00
Johannes Schlüter
f0331d8c12 - Print deprecation info on reflection export 2006-02-21 21:42:54 +00:00
Sebastian Bergmann
50ccc82261 Fix whitespace. 2006-02-21 21:38:28 +00:00
Sebastian Bergmann
865eaa67b5 Add ReflectionMethod::isDeprecated(). Patch reviewed by Marcus Börger <helly@php.net>. 2006-02-21 20:23:10 +00:00
Dmitry Stogov
0f1209ab3d Portable unicode string API:
- use the same type (int) for zval.value.usr.len and zval.value.str.len
  - use union "zstr" as char*/UChar* mixture instead of void*
  - Z_UNISTR() and Z_UNILEN() no longer check for Z_TYPE()
  - nuke int32_t from ZE (not finisned)
2006-02-21 20:12:43 +00:00
Marcus Boerger
416f3ef160 - Ansi compliance issue found by rob 2006-02-21 09:12:32 +00:00
Marcus Boerger
86f70099d0 - Fix text expectations 2006-02-21 00:49:51 +00:00
Marcus Boerger
37f033e0f7 - Fix mem issue in unicode mode (seems to be a problem in different api behavior) 2006-02-21 00:43:33 +00:00
Marcus Boerger
3ac5297d8b - Add ReflectionProperty::getDefaultValue() 2006-02-21 00:37:39 +00:00
Johannes Schlüter
6e9026d6c8 - Rename reflection constants to fix parser conflicts 2006-02-20 23:31:29 +00:00
Marcus Boerger
fc21f78226 - Show dependencies in dump's too 2006-02-20 23:26:39 +00:00
Marcus Boerger
0184485812 - Add ReflectionExtension::getDependencies() to retrieve all dependencies
of an extension as associative array "ModuleNeme" > "Relation"
2006-02-20 23:01:27 +00:00
Ilia Alshanetsky
3fa4bf210f MFB51: Fixed bug #36434 (Improper resolution of declaring class name of an
inherited property).
2006-02-20 15:28:15 +00:00
Dmitry Stogov
9528c37906 Fixed SIGSEGV in unicode mode 2006-02-20 11:15:02 +00:00
Dmitry Stogov
5e0b8cdb94 Fixed test files 2006-02-20 09:45:00 +00:00
Marcus Boerger
e936de9d1b - Fix naming inconsistency reported by sebastian 2006-02-18 18:05:46 +00:00
Antony Dovgal
2c24249ccc add test for bug #36337 2006-02-14 09:46:45 +00:00
Ilia Alshanetsky
eaacf0bb2f MFB51: Fixed bug #36337 (ReflectionProperty fails to return correct visibility). 2006-02-13 14:49:54 +00:00
Dmitry Stogov
09ca61c125 Made server wide switch for unicode on/off (according to PDM). 2006-02-13 10:23:59 +00:00
Ilia Alshanetsky
8af39b1461 MFB51: Added test for bug #36308 2006-02-09 18:18:42 +00:00
Ilia Alshanetsky
0e61422e6c MFB51: Fixed bug #36308 (ReflectionProperty::getDocComment() does not reflect
extended class commentary).
2006-02-08 00:37:31 +00:00
Michael Wallner
43550c7f4e - fix ReflectionClass::getInterfaces() 2006-02-06 20:11:56 +00:00
Marcus Boerger
0e42375ded - Implemented #36141 Add ReflectionClass::newInstanceArgs($args) 2006-01-24 20:19:49 +00:00
Dmitry Stogov
227295a4f1 Unicode stuff is changed according to decision maden on PDM.
Now IS_BINRAY data type is removed and IS_STRING starts behave as IS_BINARY in unicode mode. IS_STRING is incompatible with IS_UNICODE, so ALL functions should be improved to support unicode mode.
2006-01-17 12:18:53 +00:00
foobar
251c5173fd bump year and license version 2006-01-01 13:10:10 +00:00
Antony Dovgal
9e23794cb8 MFB: fix typo 2005-12-18 21:17:42 +00:00
foobar
a208d9a966 - Nuke php3 legacy 2005-12-06 02:28:26 +00:00
foobar
8fa72be4ee - Nuke php3_compat.h 2005-12-06 00:44:22 +00:00
foobar
2fcfc02141 fix configure --help output 2005-12-03 01:12:35 +00:00
Dmitry Stogov
feaa2501d0 Fixed bug #34729 (Crash in ZTS mode under Apache) 2005-12-01 11:49:51 +00:00
Marcus Boerger
fac6e1b4c0 - License for core extensions is PHP License
- Add Johannes to credits for his work here
2005-11-24 00:30:41 +00:00
Johannes Schlüter
41cc009a9e Changed reflection constants to class constants 2005-11-23 20:47:42 +00:00
Dmitry Stogov
a86414864b Fixed "getParameters" method 2005-11-21 10:57:28 +00:00
Marcus Boerger
471af93da9 - Fix bug #35295 typo in config.m4 for reflection extension 2005-11-19 17:47:22 +00:00
Marcus Boerger
71b8ed31c3 - Disabled globals code in a way that does not affect purist or old compilers 2005-11-18 22:59:07 +00:00
Marcus Boerger
5a0cf29863 - Need to define HAVE_REFLECTION 2005-11-17 23:21:15 +00:00
Marcus Boerger
a40a48fbd4 - Move Reflection into its own extension 2005-11-17 22:59:39 +00:00
Marcus Boerger
0be9760a60 - reflection not reflectino 2005-11-17 22:49:03 +00:00
Marcus Boerger
3d6e4e85b3 - Make this an extension 2005-11-17 22:42:00 +00:00
Dmitry Stogov
8bb39e7dba Allow recursive calls to __get/__set for different properties 2005-11-15 15:21:47 +00:00
Dmitry Stogov
6ef4239827 Fixed bug #29268 (__autoload() not called with Reflection->getClass()) 2005-10-21 08:03:39 +00:00
Antony Dovgal
fc834fef2f copy/paste typo 2005-10-20 16:46:44 +00:00
Marcus Boerger
c49a1999cb - Add ability to access private properties of base classes
- Add ability to specify fully qualified name for properties
- ReflectionClass::getInterfaces89 now returns associative array
2005-10-16 16:13:55 +00:00
Marcus Boerger
d4190c0513 - Add 'overwrites' info to method dump
# Right now we have to compute that information because it is not available
2005-10-09 17:14:15 +00:00
Marcus Boerger
c188afdd03 - Add ReflectionMethod::getPrototype()
- Add some usefull information to the method dump
  . From where it was inherited
  . The prototype
2005-10-08 23:37:31 +00:00
Marcus Boerger
59557385ac - Make reflection class pointers available for others 2005-10-03 10:04:33 +00:00
Marcus Boerger
6265c1623f - Remove unused variable 2005-09-23 23:02:29 +00:00
Marcus Boerger
2c6cf58a96 - Add eytension consts to extension output (Johannes)
- Fix WS in output
2005-09-19 20:29:33 +00:00
Dmitry Stogov
4d8290d000 Unicode support 2005-09-19 07:23:47 +00:00
Antony Dovgal
1b1c0e3c78 check class_entry of this_ptr in Reflection API, so we won't get an alien this_ptr
when called statically in a function that is called statically too (without being
declared as static)
2005-09-16 20:20:46 +00:00
Andrei Zmievski
387e353009 Fix for Unicode access. 2005-09-13 21:04:07 +00:00
Dmitry Stogov
7b7551085b Support for class constants and static members for internal classes 2005-09-01 10:05:01 +00:00
Marcus Boerger
0165ab6251 - Adds module registering a function to struct zend_internal_function.
(Johannes)
# This information is by reflection API and error messages.
2005-08-30 18:27:17 +00:00
Marcus Boerger
650c3d2094 - Fix const speling (correct in branshes where did it vanish here) 2005-08-30 07:27:06 +00:00
Dmitry Stogov
93c08f1c8b Fixed possible memory leak 2005-08-30 07:19:59 +00:00
Marcus Boerger
51e3db28ea - Fix #34299: ReflectionClass::isInstantiable() returns true for abstract classes 2005-08-29 22:11:53 +00:00
Dmitry Stogov
8f6f97a77d Unicode support 2005-08-23 12:53:31 +00:00
Dmitry Stogov
90393d675f Unicode support 2005-08-19 13:20:16 +00:00
Dmitry Stogov
b0e24970bb Unicode support cleanup 2005-08-19 10:54:26 +00:00
Dmitry Stogov
48def9a6ad Unicode support 2005-08-17 13:10:04 +00:00
Dmitry Stogov
f4ea6b0656 Fixed bug #32981 (ReflectionMethod::getStaticVariables() causes apache2.0.54 seg fault) 2005-08-17 11:57:10 +00:00
Dmitry Stogov
3509630024 trim() should accept objects with __toString() method 2005-08-17 11:36:32 +00:00
Dmitry Stogov
08fe0d1da3 Test engine is improved to support unicode mode 2005-08-15 14:37:55 +00:00
Sebastian Bergmann
52b001cc05 ZTS fixes. 2005-08-12 14:08:28 +00:00