summaryrefslogtreecommitdiff
path: root/Zend/zend_objects_API.h
Commit message (Collapse)AuthorAgeFilesLines
* Replace zend_bool uses with boolNikita Popov2021-01-151-1/+1
| | | | | | | We're starting to see a mix between uses of zend_bool and bool. Replace all usages with the standard bool type everywhere. Of course, zend_bool is retained as an alias.
* Use ZEND_TYPE_IS_SET() when checking for property typesNikita Popov2019-09-231-1/+1
| | | | | Instead of a simple if or 0 comparison. This would no longer work if zend_type is a struct.
* Remove local variablesPeter Kokot2019-02-031-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes the so called local variables defined per file basis for certain editors to properly show tab width, and similar settings. These are mainly used by Vim and Emacs editors yet with recent changes the once working definitions don't work anymore in Vim without custom plugins or additional configuration. Neither are these settings synced across the PHP code base. A simpler and better approach is EditorConfig and fixing code using some code style fixing tools in the future instead. This patch also removes the so called modelines for Vim. Modelines allow Vim editor specifically to set some editor configuration such as syntax highlighting, indentation style and tab width to be set in the first line or the last 5 lines per file basis. Since the php test files have syntax highlighting already set in most editors properly and EditorConfig takes care of the indentation settings, this patch removes these as well for the Vim 6.0 and newer versions. With the removal of local variables for certain editors such as Emacs and Vim, the footer is also probably not needed anymore when creating extensions using ext_skel.php script. Additionally, Vim modelines for setting php syntax and some editor settings has been removed from some *.phpt files. All these are mostly not relevant for phpt files neither work properly in the middle of the file.
* Adios, yearly copyright rangesZeev Suraski2019-01-301-1/+1
|
* Implement typed propertiesNikita Popov2019-01-111-0/+18
| | | | | | | | | | RFC: https://wiki.php.net/rfc/typed_properties_v2 This is a squash of PR #3734, which is a squash of PR #3313. Co-authored-by: Bob Weinand <bobwei9@hotmail.com> Co-authored-by: Joe Watkins <krakjoe@php.net> Co-authored-by: Dmitry Stogov <dmitry@zend.com>
* Update email addresses. We're still @Zend, but future proofing it...Zeev Suraski2018-11-011-2/+2
|
* Remove ZEND_OBJECTS_STORE_HANDLERS macroNikita Popov2018-09-171-2/+0
| | | | Object store handlers are no longer a thing since PHP 7.
* Remove unused Git attributes identPeter Kokot2018-07-251-2/+0
| | | | | | | | | | | | | | | The $Id$ keywords were used in Subversion where they can be substituted with filename, last revision number change, last changed date, and last user who changed it. In Git this functionality is different and can be done with Git attribute ident. These need to be defined manually for each file in the .gitattributes file and are afterwards replaced with 40-character hexadecimal blob object name which is based only on the particular file contents. This patch simplifies handling of $Id$ keywords by removing them since they are not used anymore.
* Fixed bug #76427 (Segfault in zend_objects_store_put)Xinchen Hui2018-06-111-0/+4
|
* Export standard object handlers, to avoid indirect accessDmitry Stogov2018-05-311-1/+0
|
* Keep initialized object_handlers structures in read-only memory.Dmitry Stogov2018-03-141-1/+1
|
* Use macros to update specific parts of GC_TYPE_INFO() (direct assignments to ↵Dmitry Stogov2018-02-281-1/+1
| | | | GC_TYPE(), GC_FLAGS() and GC_INFO() are prohibited)
* Use OBJ_FLAGS() macro to access object flags (even if they are currently ↵Dmitry Stogov2018-01-221-1/+1
| | | | stored together with GC_FLAGS)
* year++Xinchen Hui2018-01-021-1/+1
|
* Use fastcall calling convention for objects and resources APIDmitry Stogov2017-12-141-8/+8
|
* Subtract one zval from memsetNikita Popov2017-11-251-1/+3
|
* Add zend_object_alloc() APINikita Popov2017-11-251-0/+9
| | | | | | | | | | | 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.
* Encapsulate reference-counting primitives.Dmitry Stogov2017-10-271-1/+1
| | | | | | 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.
* further sync for vim mode linesAnatol Belski2017-07-041-0/+2
|
* Cleanup. Removed unused functions and unimplemented prototype. Avoid useless ↵Dmitry Stogov2017-06-271-8/+1
| | | | "dtor_obj" calls.
* shutdown_executor() refactoring (reuse opcache fast request shutdown code)Dmitry Stogov2017-06-221-1/+1
|
* Update copyright headers to 2017Sammy Kaye Powers2017-01-021-1/+1
|
* Turn function into inlineDmitry Stogov2016-11-211-1/+6
|
* Turn IS_TYPE_COLLECTABLE zval flag into GC_COLLECTABLE zend_refcounted flag.Dmitry Stogov2016-10-211-1/+1
| | | | This simplifies checks and allows reset this flag for "acyclic" arrays and objects.
* bump year which is missed in rev 49493a2Xinchen Hui2016-01-021-1/+1
|
* Get rid of implicit type casting in GC_*() macros in Zend/zend_types.h.Dmitry Stogov2015-08-131-1/+1
| | | | | | This prevented compilation warnings and disclosed few incorrect usages in Zend/zend_vm_def.h and ext/dom/xpath.c. Now explicit type casting may be required on call site. This may break some C extension code, but it shoulfn't be a problem to add explicit casting.
* Move zend_object->guards into additional slot of ↵Dmitry Stogov2015-02-041-0/+8
| | | | zend_object->properties_table[]. As result size of objects without __get/__set/__unset/__isset magic methods is reduced.
* bump yearXinchen Hui2015-01-151-1/+1
|
* first shot remove TSRMLS_* thingsAnatol Belski2014-12-131-13/+13
|
* Fix ZTS buildNikita Popov2014-10-021-1/+1
|
* Use inline finction for OBJ_RELEASE() macroDmitry Stogov2014-10-011-8/+10
|
* master renames phase 2Anatol Belski2014-08-251-3/+3
|
* Fixed destruction of objects and iterators on unclean request shutdown and ↵Dmitry Stogov2014-04-091-38/+11
| | | | | | GC (few cases are still unfixed). Now we destroy objects it two steps. At first - object properties of all objects and only then the objects their selves.
* Changed data layout to allow more efficient operationsDmitry Stogov2014-04-021-1/+1
|
* Refactored data structures to keep zend_object* instead of a whole zval in ↵Dmitry Stogov2014-03-281-1/+1
| | | | some places
* fixed compilation warningDmitry Stogov2014-03-201-1/+1
|
* Fixed GCDmitry Stogov2014-03-201-1/+3
|
* Refactored GC (incomplete)Dmitry Stogov2014-03-191-0/+1
|
* Use better data structures (incomplete)Dmitry Stogov2014-02-211-1/+1
|
* Use better data structures (incomplete)Dmitry Stogov2014-02-141-0/+8
|
* Use better data structures (incomplete)Dmitry Stogov2014-02-121-12/+14
|
* Use better data structures (incomplete)Dmitry Stogov2014-02-101-38/+41
|
* Bump yearXinchen Hui2014-01-031-1/+1
|
* Fixed bug #63882 (zend_std_compare_objects crash on recursion)Dmitry Stogov2013-01-091-0/+1
|
* Happy New YearXinchen Hui2013-01-011-1/+1
|
* - Year++Felipe Pena2012-01-011-1/+1
|
* - Year++Felipe Pena2011-01-011-1/+1
|
* Added a number of small performance tweaks and optimizationsDmitry Stogov2010-04-201-1/+1
| | | | | | | . ZEND_RECV now always has IS_CV as its result . ZEND_CATCH now has to be used only with constant class names . ZEND_FETCH_DIM_? may fetch array and dimension operans in a different order
* sed -i "s#1998-2009#1998-2010#g" **/*.c **/*.h **/*.phpSebastian Bergmann2010-01-051-1/+1
|
* MFH: Bump copyright year, 3 of 3.Sebastian Bergmann2008-12-311-1/+1
|