summaryrefslogtreecommitdiff
path: root/Zend/zend_API.h
Commit message (Collapse)AuthorAgeFilesLines
...
* Fixed bug #29210 (Function: is_callable - no support for private and ↵Dmitry Stogov2005-04-271-1/+5
| | | | protected classes)
* - Add ReflectionProperty::getDocComment()Marcus Boerger2005-04-191-0/+1
|
* - These must be initailizedMarcus Boerger2005-02-271-0/+2
|
* added some missing zend_[declare|update]_property_...() convenienceHartmut Holzgraefe2005-02-041-0/+6
| | | | | functions for bool, double and binary safe string data
* - Fix #31651 (ReflectionClass::getDefaultProperties segfaults with arrays.)Marcus Boerger2005-01-221-0/+1
|
* - Rename delete_global_variable() to zend_delete_global_variable()Andi Gutmans2004-10-041-1/+1
|
* - Commit the variable fetch optimization.Andi Gutmans2004-10-041-0/+2
| | | | | | | - Extensions which delete global variables need to use new special function - delete_global_variable() (I'm about to rename it) to remove them. - Will post to internals@ or via commit messages if there's anything else.
* Simplify/Optmize magic method calls (__get/__set/__call/__clone/__destruct)Marcus Boerger2004-09-281-0/+3
|
* - Recommit:Andi Gutmans2004-09-091-0/+1
| | | | | | - Check signature of magic methods - Register __get/__set/__call for internal classes
* - Roll back VM commitAndi Gutmans2004-09-091-1/+0
|
* - Check signature of magic methodsMarcus Boerger2004-09-091-0/+1
| | | | | - Register __get/__set/__call for internal classes
* - Nuke empty_string. It is a reminanent from the time where RETURN_FALSE()Andi Gutmans2004-07-191-1/+1
| | | | | | | | | | | | | | | used to return "" and not bool(false). It's not worth keeping it because STR_FREE() and zval_dtor() always have to check for it and it slows down the general case. In addition, it seems that empty_string has been abused quite a lot, and was used not only for setting zval's but generally in PHP code instead of "", which wasn't the intention. Last but not least, nuking empty_string should improve stability as I doubt every place correctly checked if they are not mistakenly erealloc()'ing it or calling efree() on it. NOTE: Some code is probably broken. Each extension maintainer should check and see that my changes are OK. Also, I haven't had time to touch PECL yet. Will try and do it tomorrow.
* Add missing declarationMarcus Boerger2004-06-101-0/+1
|
* Fix order of macro parameter (synch with other macros)Marcus Boerger2004-04-121-1/+1
|
* - Fix Reflection class namesMarcus Boerger2004-03-301-0/+1
| | | | | | - Add ability to get the extension an internal class was defined in # This is the patch Andi and me used to search for underscrores...
* - Replaced the exec_finished hook by the zend_post_deactive hook forDerick Rethans2004-03-161-2/+2
| | | | | | extensions. The new hook will be run after the symbol table and destructors are run. (Derick)
* Fix zend_parse_method_parameters_ex() and make it consistant withMarcus Boerger2004-03-021-1/+1
| | | | | | zend_parse_method_parameters(). # Obviously its only place of use is in pdo just right now.
* - Improve ARG_INFO() macros to support supplying required_num_argsZeev Suraski2004-02-251-7/+7
| | | | | - Initial fix for foreach($o->mthd()->arr) crash (now leaks)
* more EXTERN_C wrapping of ZEND_API prototypesHartmut Holzgraefe2004-02-201-0/+4
|
* - Check return-by-reference bit when implementing interface prototypesZeev Suraski2004-02-121-6/+8
| | | | | | | | | | | | | | | | - Add infrastructure for built-in functions to hint whether they return by reference or not. It is NOT currently used for anything, except for interface prototypes (you can use it to request that the function that implements your prototype returns by reference or doesn't return by reference). For downwards compatibility - by default, interface prototypes are agnostic as to whether the function that implements them returns by reference or not. Use ZEND_BEGIN_ARG_INFO_EX() with ZEND_RETURN_VALUE/ZEND_RETURN_REFERENCE to change that. - Fix ArrayAccess::getOffset() to conduct additional checks. If your getOffset() should work with multidimensional arrays - it must return by reference.
* Add zend_get_module_started() to quickly check whether a module is presentMarcus Boerger2004-01-191-0/+1
| | | | | and its MINIT function has been called.
* Add missing macroMarcus Boerger2004-01-121-0/+1
| | | | | # by popular demand, more and more exts need this
* - Happy new year and PHP 5 for rest of the files too..foobar2004-01-081-1/+1
| | | | | # Should the LICENSE and Zend/LICENSE dates be updated too?
* Fix order of class_entry member initialization (needed for example for DOM)Marcus Boerger2003-12-281-0/+2
| | | | | # You need to completley rebuild PHP after this patch.
* export these symbols for use by SPL as a shared extensionWez Furlong2003-12-221-2/+2
|
* Free the zval container only if it should be freed and was not copied.Marcus Boerger2003-12-021-0/+3
|
* This takes the address of a zval ptrMarcus Boerger2003-11-291-1/+1
|
* Add macros to return values of other zvals.Marcus Boerger2003-11-291-0/+17
| | | | | This is needed because one cannot use REPLACE_ZVAL_VALUE with return_value.
* Add method alias macroMarcus Boerger2003-11-181-0/+2
|
* Add zend_make_callable() which allows to make zval's callable zval's.Marcus Boerger2003-10-251-0/+1
| | | | | | At the moment this function only converts strings of the form class::method to an array(class,method).
* Expand Interface C API.Marcus Boerger2003-10-221-0/+2
| | | | | | In short: zend_class_entry->interface_gets_implemented() allows to modify the class entry of a class when an interface gets implemented.
* Fix class/iterator relationship & handlingMarcus Boerger2003-10-181-1/+1
|
* Added c-api for iteratorsMarcus Boerger2003-10-171-1/+3
| | | | | # After 4 Month work and endless discussions...
* Add oo support function zend_class_implements()Marcus Boerger2003-10-151-0/+1
|
* this little piggy broke lots of things...eg. _function_check_flag in ↵Shane Caraveo2003-10-051-1/+1
| | | | reflection api.
* Ensure lval to have a *boolean* value.Moriyoshi Koizumi2003-10-031-1/+1
|
* Fix handling of static properties initialized to arraysMarcus Boerger2003-09-031-5/+5
|
* - Add zend_merge_properties() which is designed to serve *_fetch_object().Marcus Boerger2003-08-291-0/+2
| | | | | | | | | - Explain drawbacks of object_and_properties_init and zend_merge_properties. # # I guess we can live with the purity problem of potentially calling __set() # of an object which wasn't already ctored. #
* - Provide appropriate way to destroy internal zval's.Marcus Boerger2003-08-241-0/+1
| | | | | | - Allow internal zval's of type string and disallow complex types. - Define the default string for extensions at class level instead of ctor.
* Don't identify alias'ed functionsMarcus Boerger2003-08-241-1/+1
|
* One of PPP is needed, tooMarcus Boerger2003-08-241-1/+1
|
* - Add fn_flag ZEND_ACC_ALIASMarcus Boerger2003-08-241-5/+7
| | | | | - Unify way of function_entry generation by new macro ZEND_FENTRY
* Add property read code and use that in default exception classMarcus Boerger2003-08-241-0/+2
|
* Internal classes can now have default properties.Marcus Boerger2003-08-231-0/+6
|
* Fix warningsMarcus Boerger2003-08-171-2/+2
|
* explicitly cast size_t to zend_uint to avoid warnings on 64 bit platforms.Sascha Schumann2003-08-171-1/+1
|
* Simplify abstract method declarationMarcus Boerger2003-08-161-0/+1
|
* Try to put an end to the endless number of call_user_function variants.Zeev Suraski2003-08-051-1/+25
| | | | | | | | | | | | | | | | | | | | zend_call_function() now takes a structure that should contain all of the necessary information. If further information is necessary in the future, then we'll be able to add it without having to introduce a new function. As for caching - the 2nd, optional argument is a struct that can hold all of the information that's necessary to invoke the function, including its handler, scope and object it operates on (if any). Note that you may only use a cache if the arguments you provide to zend_call_function() are identical to the ones of the last call, except for the argument and return value information. The recently introduced fast_call_user_function() was removed I fixed most of the places that used fast_call_user_function() to use caching but there are still some that need to be fixed (XML and reflection)
* ntroduce infrastructure for supplying information about arguments,Zeev Suraski2003-08-031-12/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | including: - Whether or not to pass by ref (replaces the old arg_types, with arg_info) - Argument name (for future use, maybe introspection) - Class/Interface name (for type hints) - If a class/interface name is available, whether to allow a null instance Both user and builtin functions share the same data structures. To declare a builtin function that expects its first arg to be an instance of class 'Person', its second argument as a regular arg, and its third by reference, use: ZEND_BEGIN_ARG_INFO(my_func_arg_info, 0) ZEND_ARG_OBJ_INFO(0, someone, Person, 1) ZEND_ARG_PASS_INFO(0) ZEND_ARG_PASS_INFO(1) ZEND_END_ARG_INFO(); and use my_func_arg_info as the arg_info parameter to the ZEND_FE() family of macros. The first arg to each ZEND_ARG_*() macro is whether or not to pass by ref. The boolean arg to ZEND_BEGIN_ARG_INFO() tells the engine whether to treat the arguments for which there's no explicit information as pass by reference or not. The boolean argument to ZEND_ARG_OBJ_INFO() (4th arg) is whether or not to allownull values.
* Add exec_finished() callback for modules - this is the last place where theZeev Suraski2003-07-301-0/+2
| | | | | modules may touch the symbol table reliably