summaryrefslogtreecommitdiff
path: root/ext/reflection/php_reflection.c
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Keep initialized object_handlers structures in read-only memory.Dmitry Stogov2018-03-141-1/+1
| | |
* | | Remove unused assignmentAnatol Belski2018-03-071-1/+0
| | |
* | | Fix typoGabriel Caruso2018-02-131-1/+1
| | |
* | | Remove no longer necessary type-name special casesNikita Popov2018-02-041-11/+3
| | | | | | | | | | | | | | | zend_get_type_by_name() now produces the correct value by itself, so we no longer need these workarounds.
* | | Use ZEND_CLOSURE_OBJECT() macro to resolve closure op_array to closure ↵Dmitry Stogov2018-01-111-1/+1
| | | | | | | | | | | | object through address calculation, instead of op_array->prototype reuse. (reapply 781e1573afdc7c336b3577ceabc9c65cafea17e8, now it should be OK).
* | | Revert "Use ZEND_CLOSURE_OBJECT() macro to resolve closure op_array to ↵Dmitry Stogov2018-01-111-1/+1
| | | | | | | | | | | | | | | | | | closure object through address calculation, instead of op_array->prototype reuse." (this patch is incomplete or wrong) This reverts commit 781e1573afdc7c336b3577ceabc9c65cafea17e8.
* | | Use ZEND_CLOSURE_OBJECT() macro to resolve closure op_array to closure ↵Dmitry Stogov2018-01-111-1/+1
| | | | | | | | | | | | object through address calculation, instead of op_array->prototype reuse.
* | | Trailing whitespacesGabriel Caruso2018-01-031-5/+5
| | | | | | | | | | | | Signed-off-by: Gabriel Caruso <carusogabriel34@gmail.com>
* | | year++Xinchen Hui2018-01-021-1/+1
| | |
* | | zend_fcall_info_cache.initialized is removed (zend_fcall_info_cache is ↵Dmitry Stogov2017-12-271-6/+0
| | | | | | | | | | | | initialized if zend_fcall_info_cache.function_handler is set).
* | | Use cheaper APIXinchen Hui2017-12-181-1/+1
| | |
* | | Move constants into read-only data segmentDmitry Stogov2017-12-141-1/+1
| | |
* | | Use zend_string_tolower() where it's possible (to avoid reallocations).Dmitry Stogov2017-11-301-5/+2
| | | | | | | | | | | | Allow zend_string_tolower_ex() to create parsistent strings
* | | Add zend_object_alloc() APINikita Popov2017-11-251-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using ecalloc() to create objects is expensive, because the dynamic-size memset() is unreasonably slow. Make sure we only zero the main object structure with known size, as the properties are intialized separately anyway. Technically we do not need to zero the embedded zend_object structure either, but as long as the memset argument is constant, a couple more bytes don't really matter.
* | | Avoid unnecessary reference-counting on strings.Dmitry Stogov2017-11-161-6/+9
| | |
* | | Merge branch 'PHP-7.2'Sara Golemon2017-11-061-3/+3
|\ \ \ | |/ / | | | | | | | | | * PHP-7.2: Revert BC break caused by fixing bug #74035
| * | Revert BC break caused by fixing bug #74035Michael Moravec2017-11-061-3/+3
| | | | | | | | | | | | This reverts commit 9ffc6ca62f53431a4b32b30cdda8180142f47cdb.
* | | RC manipulation cleanupXinchen Hui2017-11-011-2/+2
| | |
* | | Avoid reference counting (the value may be a persistent string)Dmitry Stogov2017-11-011-0/+3
| | |
* | | Use known strings for reflection propertiesNikita Popov2017-10-311-50/+50
| | |
* | | Remove some unnecessary duplicationsNikita Popov2017-10-301-17/+3
| | |
* | | Prevent reference-counting on persistent zvals (internal constants, default ↵Dmitry Stogov2017-10-301-7/+7
| | | | | | | | | | | | | | | | | | | | | properties and constants of internal classes). New macro ZVAL_COPY_OR_DUP() is used perform duplication, if necessary. This should eliminate related race-coditions in ZTS build and prevent reference-counting bugs after unclean shutdown.
* | | Encapsulate reference-counting primitives.Dmitry Stogov2017-10-271-2/+2
| | | | | | | | | | | | | | | | | | Prohibit direct update of GC_REFCOUNT(), GC_SET_REFCOUNT(), GC_ADDREF() and GC_DELREF() shoukf be instead. Added mactros to validate reference-counting (disabled for now). These macros are going to be used to eliminate race-condintions during reference-counting on data shared between threads.
* | | Avoid HashTable allocations for empty arrays (using zend_empty_array).Dmitry Stogov2017-10-241-8/+33
| | |
* | | Always use IS_CONSTANT_AST (IS_CONSTANT is removed).Dmitry Stogov2017-10-101-7/+18
| | |
* | | Changed the way VM accesses constant operands in 64-bit builds.Dmitry Stogov2017-10-041-5/+5
| | |
* | | Fix type-o in ext/reflection comment :speech_balloon:Sammy Kaye Powers2017-09-131-1/+1
|/ /
* | Merge branch 'PHP-7.1' into PHP-7.2Xinchen Hui2017-07-271-1/+16
|\ \ | |/ | | | | | | | | * PHP-7.1: Update NEWS Fixed bug #74949 (null pointer dereference in _function_string)
| * Merge branch 'PHP-7.0' into PHP-7.1Xinchen Hui2017-07-271-1/+16
| |\ | | | | | | | | | | | | * PHP-7.0: Fixed bug #74949 (null pointer dereference in _function_string)
| | * Fixed bug #74949 (null pointer dereference in _function_string)Xinchen Hui2017-07-271-1/+16
| | |
* | | Remove superfluous semicolonsTom Van Looy2017-06-261-1/+1
| | |
* | | code de-duplication in ReflectionType::__toString and ↵Remi Collet2017-06-151-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ReflectionNamedType::getName This code duplication introduce an inconsistency in displayed type name - bool (reflection) vs boolean - int (reflection) vs integer And reflection already use zend_get_type_by_const in other methods... Inconsistenty is kept for BC reason. Could be fixed in 8.0
* | | Allow ReflectionClass::isIterable() to return true for TraversablesSara Golemon2017-05-311-1/+6
| | | | | | | | | | | | | | | Current behavior is essentially "Is an INTERNAL iterable class". This change allows isIterable() to return true for userspace classes as well.
* | | Rename ReflectionClass::isIterateable() to isIterable()Sara Golemon2017-05-311-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Iterateable is not a word. Add the correct spelling, but keep the original one around for BC purposes. Perhaps we can add ZEND_ACC_DEPRECATED at some later date and even remove it from PHP 8.
* | | Merge branch 'PHP-7.1'Xinchen Hui2017-05-311-1/+7
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | * PHP-7.1: Update NEWS Fixed bug #74673 (Segfault when cast Reflection object to string with undefined constant) Conflicts: ext/reflection/php_reflection.c
| * | Merge branch 'PHP-7.0' into PHP-7.1Xinchen Hui2017-05-311-1/+7
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | * PHP-7.0: Fixed bug #74673 (Segfault when cast Reflection object to string with undefined constant) Conflicts: ext/reflection/php_reflection.c
| | * Fixed bug #74673 (Segfault when cast Reflection object to string with ↵Xinchen Hui2017-05-311-2/+8
| | | | | | | | | | | | undefined constant)
| * | Merge branch 'PHP-7.0' into PHP-7.1Nikita Popov2017-02-121-3/+3
| |\ \ | | |/
| | * Revert "Fixed bug #74035"Nikita Popov2017-02-121-3/+3
| | | | | | | | | | | | This reverts commit 9ffc6ca62f53431a4b32b30cdda8180142f47cdb.
* | | Don't leak internal flags in reflectionNikita Popov2017-04-221-3/+8
| | | | | | | | | | | | | | | If someone complains, we may re-expose specific flags while also adding corresponding class constants for them.
* | | ReflectionGenerator now sends ReflectionException as expectedJulien Pauli2017-02-071-2/+2
| | |
* | | Merge branch 'PHP-7.1'Nikita Popov2017-02-031-3/+3
|\ \ \ | |/ /
| * | Merge branch 'PHP-7.0' into PHP-7.1Nikita Popov2017-02-031-3/+3
| |\ \ | | |/
| | * Fixed bug #74035andrewnester2017-02-031-3/+3
| | |
* | | Merge branch 'PHP-7.1'Joe Watkins2017-01-181-1/+1
|\ \ \ | |/ / | | | | | | | | | * PHP-7.1: Fix ce comparison
| * | Merge branch 'PHP-7.0' into PHP-7.1Joe Watkins2017-01-181-1/+1
| |\ \ | | |/ | | | | | | | | | * PHP-7.0: Fix ce comparison
| | * Fix ce comparisonThomas Punt2017-01-181-1/+1
| | |
| | * Update copyright headers to 2017Sammy Kaye Powers2017-01-041-1/+1
| | |
| * | Update copyright headers to 2017Sammy Kaye Powers2017-01-041-1/+1
| | |
* | | Introduced "zend_type" - an abstraction for type-hinting representation.Dmitry Stogov2017-01-131-58/+30
| | |