History log of /PHP_TRUNK/Zend/zend_hash.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ad2ef3d 09-Apr-2014 Nikita Popov <nikic@php.net> Add only_integer_keys option to zend_hash_reindex

This allows to either do a full reindex, or only reindex the integer
keys.
/php-src/Zend/zend_hash.h
22d3eb3 08-Apr-2014 Nikita Popov <nikic@php.net> Add zend_hash_splice

This implements the original functionality of php_splice, but
as an in-place operation, thus avoiding copying the HT.

This is much faster (~10x) if the splice removes a small portion
of the array and doesn't insert many elements.
/php-src/Zend/zend_hash.h
1aa8719 08-Apr-2014 Nikita Popov <nikic@php.net> Add zend_hash_reindex

The implementation differs from the original in array.c in that it
rehashes the hashtable in the same loop. This is approximately two
times faster (not counting the rare case of a purely associative
array).
/php-src/Zend/zend_hash.h
c081ce6 03-Jan-2014 Xinchen Hui <laruence@php.net> Bump year
/php-src/Zend/zend_hash.h
5d25762 28-Nov-2013 Dmitry Stogov <dmitry@zend.com> Removed unused "pHashFunction" argument in _zend_hash_init() and family (must be 99% source compatible)
/php-src/Zend/zend_hash.h
aa427a1 28-Nov-2013 Dmitry Stogov <dmitry@zend.com> Removed duplicated hash function implementation (100% source compatible)
/php-src/Zend/zend_hash.h
063e10b 22-Jul-2013 Johannes Schl├╝ter <johannes@php.net> Fix comment
/php-src/Zend/zend_hash.h
97637b2 15-Jul-2013 Lajos Veres <vlajos@gmail.com> backward compatibility
/php-src/Zend/zend_hash.h
4749457 08-Jul-2013 Veres Lajos <vlajos@gmail.com> HASH_KEY_NON_EXISTANT fix
/php-src/Zend/zend_hash.h
fcc6611 16-Feb-2013 Nikita Popov <nikic@php.net> Add support for non-scalar Iterator keys in foreach

RFC: https://wiki.php.net/rfc/foreach-non-scalar-keys
/php-src/Zend/zend_hash.h
a666285 01-Jan-2013 Xinchen Hui <laruence@php.net> Happy New Year
/php-src/Zend/zend_hash.h
e6d9cd9 08-Jul-2012 Nuno Lopes <nlopess@php.net> appease MSVC (doesnt like unary minus of unsigned ints)
/php-src/Zend/zend_hash.h
f2bf98a 02-Jul-2012 Nuno Lopes <nlopess@php.net> fix (signed) integer overflow (part of bug #52550
/php-src/Zend/zend_hash.h
8775a37 01-Jan-2012 Felipe Pena <felipe@php.net> - Year++
/php-src/Zend/zend_hash.h
e43ff13 13-Sep-2011 Dmitry Stogov <dmitry@php.net> Fixed ZE specific compile warnings (Bug #55629)
/php-src/Zend/zend_hash.h
0203cc3 01-Jan-2011 Felipe Pena <felipe@php.net> - Year++
/php-src/Zend/zend_hash.h
fa3f0bb 05-Oct-2010 Dmitry Stogov <dmitry@php.net> Fixed bug #51008 (Zend/tests/bug45877.phpt fails)
/php-src/Zend/zend_hash.h
dd5c478 20-Apr-2010 Dmitry Stogov <dmitry@php.net> Added concept of interned strings. All strings constants known at compile time are allocated in a single copy and never changed.
/php-src/Zend/zend_hash.h
94dd837 20-Apr-2010 Dmitry Stogov <dmitry@php.net> Changed the structure of op_array.opcodes. The constant values are moved from opcode operands into a separate literal table
/php-src/Zend/zend_hash.h
d2281d1 05-Jan-2010 Sebastian Bergmann <sebastian@php.net> sed -i "s#1998-2009#1998-2010#g" **/*.c **/*.h **/*.php
/php-src/Zend/zend_hash.h
00a554b 25-May-2009 Sara Golemon <pollita@php.net> MFH(r-1.103) Expand zend_symtable_update_current_key to allow specifying HashPosition
/php-src/Zend/zend_hash.h
4658d94 24-Mar-2009 Dmitry Stogov <dmitry@php.net> Fixed "-0" parsing and optimized overflow check (Matt)
/php-src/Zend/zend_hash.h
9f32cb2 19-Mar-2009 Dmitry Stogov <dmitry@php.net> Fixed check for long integer overflow
/php-src/Zend/zend_hash.h
d3b4270 18-Mar-2009 Dmitry Stogov <dmitry@php.net> Better fix for bug #45877 (smaller and faster)
/php-src/Zend/zend_hash.h
6bb0ac9 18-Mar-2009 Matt Wilmas <mattwil@php.net> MFH: Fixed bug #45877 (Array key '2147483647' left as string)
/php-src/Zend/zend_hash.h
08659c2 31-Dec-2008 Sebastian Bergmann <sebastian@php.net> MFH: Bump copyright year, 3 of 3.
/php-src/Zend/zend_hash.h
cf7384a 12-Aug-2008 Felipe Pena <felipe@php.net> - MFH: Constness (Added const qualifier to several function parameters)
/php-src/Zend/zend_hash.h
37a7693 01-Aug-2008 Dmitry Stogov <dmitry@php.net> Fixed bug #44100 (Inconsistent handling of static array declarations with duplicate keys).
/php-src/Zend/zend_hash.h
0fbe6a0 24-Jul-2008 Felipe Pena <felipe@php.net> - MFH: Added TSRMLS_DC to apply_func_args_t and zend_hash_apply_with_arguments.
/php-src/Zend/zend_hash.h
2ecf4bb 29-Apr-2008 Dmitry Stogov <dmitry@php.net> Lazy EG(active_symbol_table) initialization
/php-src/Zend/zend_hash.h
b101ee1 15-Jan-2008 Antony Dovgal <tony2001@php.net> MFH: rename macros
patch by colder
/php-src/Zend/zend_hash.h
d1dded8 31-Dec-2007 Sebastian Bergmann <sebastian@php.net> MFH: Bump copyright year, 2 of 2.
/php-src/Zend/zend_hash.h
6c810b0 27-Sep-2007 Dmitry Stogov <dmitry@php.net> Improved memory usage by movig constants to read only memory. (Dmitry, Pierre)
/php-src/Zend/zend_hash.h
e470e22 10-Jan-2007 Dmitry Stogov <dmitry@php.net> - Fixed bug #35106 (nested foreach fails when array variable has a reference).
- Fixed bug #36214 (__get method works properly only when conditional operator is used).
- Fixed bug #39449 (Overloaded array properties do not work correctly).
- Fixed bug #39990 (Cannot "foreach" over overloaded properties).
/php-src/Zend/zend_hash.h
4223aa4 01-Jan-2007 Sebastian Bergmann <sebastian@php.net> MFH: Bump year.
/php-src/Zend/zend_hash.h
61e93cc 04-Jan-2006 Andi Gutmans <andi@php.net> - Update copyright notices to 2006
/php-src/Zend/zend_hash.h
9ee0707 05-Dec-2005 Dmitry Stogov <dmitry@php.net> Fixed bug #35509 (string constant as array key has different behavior inside object)
/php-src/Zend/zend_hash.h
916815b 03-Aug-2005 foobar <sniper@php.net> Bump up the year
/php-src/Zend/zend_hash.h
d9c1a38 07-Jul-2005 Dmitry Stogov <dmitry@php.net> Fixed bug #28072 (static array with some constant keys will be incorrectly ordered).
/php-src/Zend/zend_hash.h
ccfc46b 08-Jan-2004 foobar <sniper@php.net> - Happy new year and PHP 5 for rest of the files too..
# Should the LICENSE and Zend/LICENSE dates be updated too?
/php-src/Zend/zend_hash.h
664078c 25-Sep-2003 Georg Richter <georg@php.net> changed ulong to long to avoid compiler warnings (comparison between signed and unsigned)
/php-src/Zend/zend_hash.h
0dba58c 18-Aug-2003 Zeev Suraski <zeev@php.net> Improve tracking
/php-src/Zend/zend_hash.h
f77f977 11-Aug-2003 Marcus Boerger <helly@php.net> Bugfix 21918
/php-src/Zend/zend_hash.h
e89977f 23-Jul-2003 Zeev Suraski <zeev@php.net> Go back to ZE1-like code
/php-src/Zend/zend_hash.h
6079d4d 22-Jul-2003 Marcus Boerger <helly@php.net> Fix for the moment
/php-src/Zend/zend_hash.h
cf90932 22-Jul-2003 Zeev Suraski <zeev@php.net> Improve infrastructure of numeric handling of elements in symbol tables.

When you want to work with a symbol table, and you don't know whether you
have a numeric ("string that looks like a number") or a string element in
your hands, use zend_symtable_*() functions, in place of zend_hash_*()
functions.
/php-src/Zend/zend_hash.h
184118d 20-Jul-2003 Marcus Boerger <helly@php.net> Make it a macro
/php-src/Zend/zend_hash.h
892c1fb 19-Jul-2003 Marcus Boerger <helly@php.net> Add missing function to ease implementations
/php-src/Zend/zend_hash.h
f68c7ff 10-Jun-2003 James Cox <imajes@php.net> updating license information in the headers.
/php-src/Zend/zend_hash.h
45c1235 06-Feb-2003 Zeev Suraski <zeev@php.net> Fix prototype (may have caused stack corruption)
/php-src/Zend/zend_hash.h
376d631 05-Feb-2003 Zeev Suraski <zeev@php.net> Add quick_exists()
/php-src/Zend/zend_hash.h
471947b 04-Feb-2003 Zeev Suraski <zeev@php.net> Reimplement PPP properties
/php-src/Zend/zend_hash.h
333406b 01-Feb-2003 foobar <sniper@php.net> - Added some missing CVS $Id$ tags, headers and footers.
/php-src/Zend/zend_hash.h
2c5d4b8 31-Dec-2002 Sebastian Bergmann <sebastian@php.net> Bump year.
/php-src/Zend/zend_hash.h
e062dff 06-Dec-2002 Zeev Suraski <zeev@php.net> - Implement public/protected/private methods.
- Prevent instantiation of classes with abstract methods.
Based in part on Marcus's patch.
/php-src/Zend/zend_hash.h
91b0d03 17-Sep-2002 Zeev Suraski <zeev@php.net> Add tracking for hashtable allocation
/php-src/Zend/zend_hash.h
90f43c7 08-Jun-2002 Andi Gutmans <andi@php.net> - This should improve performance on Windows
/php-src/Zend/zend_hash.h
1186d51 08-Jun-2002 Andi Gutmans <andi@php.net> - Add a loop unrolled version of the hash function and a bit of an
- explanation about our hash function (Ralf S. Engelschall)
/php-src/Zend/zend_hash.h
51e797f 23-Apr-2002 Harald Radi <phanto@php.net> some type cleanup work
/php-src/Zend/zend_hash.h
bf5bb84 19-Apr-2002 Sebastian Bergmann <sebastian@php.net> MFZE1: make sure the resource-list is always consistent during shutdown (Thies).
/php-src/Zend/zend_hash.h
62dc854 06-Jan-2002 Sebastian Bergmann <sebastian@php.net> Happy New Year.
/php-src/Zend/zend_hash.h
d863d52 11-Dec-2001 Sebastian Bergmann <sebastian@php.net> Update headers.
/php-src/Zend/zend_hash.h
3bdddb4 19-Sep-2001 Sebastian Bergmann <sebastian@php.net> MFZE1
/php-src/Zend/zend_hash.h
9b3df86 20-Aug-2001 Zeev Suraski <zeev@php.net> MFZE1
/php-src/Zend/zend_hash.h
4f6c95d 11-Aug-2001 Zeev Suraski <zeev@php.net> Whitespace
/php-src/Zend/zend_hash.h
c14baee 02-Aug-2001 Zeev Suraski <zeev@php.net> Avoid going over huge lists of functions, classes and constants.
Special thanks to the guys from the MS lab for the profiling tools :)
/php-src/Zend/zend_hash.h
7deb44e 02-Aug-2001 Zeev Suraski <zeev@php.net> Some cleanup
/php-src/Zend/zend_hash.h
3aa5674 02-Aug-2001 Zeev Suraski <zeev@php.net> TSRMLS fixes
/php-src/Zend/zend_hash.h
d76cf1d 31-Jul-2001 Zeev Suraski <zeev@php.net> More TSRMLS_FETCH work
/php-src/Zend/zend_hash.h
8ce8324 30-Jul-2001 Zeev Suraski <zeev@php.net> More TSRMLS_FETCH annihilation
/php-src/Zend/zend_hash.h
1c2893a 15-Jul-2001 Zeev Suraski <zeev@php.net> Minor cleaning
/php-src/Zend/zend_hash.h
7b7e72d 13-Jul-2001 Thies C. Arntzen <thies@php.net> the resource-lists are now destroyed backwards. this will make sure that
resources get destroyed in the opposite order they were created and thereby
db-cursors will always be released before their corresponding connection etc.
this sould not break anything!
/php-src/Zend/zend_hash.h
b98acd6 11-Jul-2001 Andi Gutmans <andi@php.net> - Move inline_zend_hash_func() to header file
/php-src/Zend/zend_hash.h
6cf5e7f 11-Jul-2001 Stanislav Malyshev <stas@php.net> No hashpjw anymore, but we have zend_hash_func
/php-src/Zend/zend_hash.h
2f8fa8c 10-Jul-2001 Andi Gutmans <andi@php.net> - Merge faster hash implementation.
- The hash function parameter in hash_init(...) is not used anymore.
- It should be removed but it is "to be decided" if we want to do that now
- or in a major version as it means changing MANY places and third party
- modules might stop working.
/php-src/Zend/zend_hash.h
755207a 16-May-2001 Zeev Suraski <zeev@php.net> Implement zend_hash_add_empty_element() using the existing infrastructure
/php-src/Zend/zend_hash.h
d2c9e80 26-Feb-2001 Andi Gutmans <andi@php.net> - Update copyright year
/php-src/Zend/zend_hash.h
36eaad2 22-Dec-2000 Zeev Suraski <zeev@php.net> Allow get_current_key() not to return the key itself, instead of a duplicate
/php-src/Zend/zend_hash.h
e988715 11-Oct-2000 Andi Gutmans <andi@php.net> Don't use 'new' symbol
/php-src/Zend/zend_hash.h
9aa38aa 11-Oct-2000 Zeev Suraski <zeev@php.net> Add zend_hash_merge_ex(), for selective merging
/php-src/Zend/zend_hash.h
1263932 11-Jul-2000 Zeev Suraski <zeev@php.net> Disable the hash_apply() protection on hashes that persist across requests - it's unsafe
because we may be aborted at any point
/php-src/Zend/zend_hash.h
a617217 03-Jul-2000 Sascha Schumann <sas@php.net> Replace macros which begin with an underscore through an appropiately
named macro.
/php-src/Zend/zend_hash.h
38cdb8e 17-Jun-2000 Zeev Suraski <zeev@php.net> Avoid crashing with recursive applies - limit apply nest level to 3 (I'm not aware of a place
in which applying recursively on the same hash makes sense with more than one nest level, but
3 should be enough)
/php-src/Zend/zend_hash.h
b51aa1f 09-Jun-2000 Andrei Zmievski <andrei@php.net> Made an alias for hash apply with arguments.
/php-src/Zend/zend_hash.h
bfac463 04-Jun-2000 Zeev Suraski <zeev@php.net> - Support unordered hash comparisons
- Make == perform an unordered comparison with arrays/objects, and === perform an ordered comparison
/php-src/Zend/zend_hash.h
dae76aa 03-Jun-2000 Zeev Suraski <zeev@php.net> Support comparisons of arrays (with arrays) and objects (with objects)
/php-src/Zend/zend_hash.h
9b916e6 24-May-2000 Thies C. Arntzen <thies@php.net> rename hastable -> _hashtable to avoid clashes
/php-src/Zend/zend_hash.h
8ca13c9 02-May-2000 Zeev Suraski <zeev@php.net> Change zend_hash_get_current_key_ex() to also return the string length
/php-src/Zend/zend_hash.h
0a14a32 25-Apr-2000 Zeev Suraski <zeev@php.net> Add useful macros
/php-src/Zend/zend_hash.h
6db1899 24-Mar-2000 Andi Gutmans <andi@php.net> - Nuke hash_*_ptr functions
/php-src/Zend/zend_hash.h
ee286fe 15-Mar-2000 Andrei Zmievski <andrei@php.net> Make zend_hash_move_forward()/zenv_hash_move_backwards() a little smarter.
/php-src/Zend/zend_hash.h
a32c54b 13-Mar-2000 Andrei Zmievski <andrei@php.net> Introduced a way to traverse hashes through external pointers.
/php-src/Zend/zend_hash.h
5e55e47 06-Mar-2000 Zeev Suraski <zeev@php.net> It's official now...
/php-src/Zend/zend_hash.h
0ac9536 19-Feb-2000 Zeev Suraski <zeev@php.net> (c) patch
/php-src/Zend/zend_hash.h
bb302a7 13-Feb-2000 Andi Gutmans <andi@php.net> - Make startup a bit faster by changing some hash_update()'s and hash_add()'s
to hash_update_ptr()/hash_add_ptr()
/php-src/Zend/zend_hash.h
94be61f 11-Feb-2000 Andrei Zmievski <andrei@php.net> Made a couple of typedefs for zend_hash_apply_*() calls.
/php-src/Zend/zend_hash.h
9f51f15 05-Feb-2000 Zeev Suraski <zeev@php.net> - Stop passing list/plist to internal functions
- Add a typedef for the pCopyConstructor function pointer
- Minor hacks
/php-src/Zend/zend_hash.h
d6afe4b 01-Feb-2000 Thies C. Arntzen <thies@php.net> took out zend_hash_pointer_update() & zend_hash_pointer_index_update_or_next_insert() - i really prefer link-errors instead of runtime-errors, don't you?
/php-src/Zend/zend_hash.h
aa73f6b 19-Jan-2000 Andi Gutmans <andi@php.net> - Hopefully fix the hash problem.
/php-src/Zend/zend_hash.h
19d978d 17-Jan-2000 Zeev Suraski <zeev@php.net> Get rid of the IsPointer functionality in the hash.
/php-src/Zend/zend_hash.h
62114c1 17-Jan-2000 Zeev Suraski <zeev@php.net> Destructors no longer return ints, the low level problem it was intended to solve is long gone now...
/php-src/Zend/zend_hash.h
ee08b81 16-Jan-2000 Zeev Suraski <zeev@php.net> - Make zend_hash_apply() (and friends) reentrant and much, much quicker
- Introduce zend_hash_graceful_destroy(), which allows the destructor functions to
use zend_hash_apply() and/or zend_hash_graceful_destroy()
- Switch to zend_hash_graceful_destroy() in the resource list shutdowns
/php-src/Zend/zend_hash.h
c93a189 15-Jan-2000 Thies C. Arntzen <thies@php.net> if ZEND_DEBUG mode is on we'll now see warnings when a HashTable is accessed
while it's inconsistent.

Zeev, Andi - you welcome to revert this patch if you don't like it - i find it
useful! accesssing inconsistent hashtables is one of the hardest things to track!
/php-src/Zend/zend_hash.h
f962a35 04-Dec-1999 Andrei Zmievski <andrei@php.net> Added zend_set_hash_symbol() function.
/php-src/Zend/zend_hash.h
9353650 01-Dec-1999 Stig S. Bakken <stig@php.net> Fix warnings surfacing in maintainer-mode.
/php-src/Zend/zend_hash.h
3964c92 04-Nov-1999 Andrei Zmievski <andrei@php.net> Made zend_hash_rehash() callable from outside.
/php-src/Zend/zend_hash.h
e956a26 15-Oct-1999 Andrei Zmievski <andrei@php.net> *** empty log message ***
/php-src/Zend/zend_hash.h
8864313 11-Oct-1999 Andrei Zmievski <andrei@php.net> Modified zend_hash() to accept a pointer to sort function.
/php-src/Zend/zend_hash.h
746ce67 25-Aug-1999 Andi Gutmans <andi@php.net> - Add hash_apply_with_arguments()
/php-src/Zend/zend_hash.h
8d1de13 19-Jul-1999 Zeev Suraski <zeev@php.net> 0.91 update
/php-src/Zend/zend_hash.h
b5b1117 16-Jul-1999 Zeev Suraski <zeev@php.net> License update
/php-src/Zend/zend_hash.h
81d901b 09-Jul-1999 Zeev Suraski <zeev@php.net> Step 1 in nuking the garbage collector:
- Change the hash destructor to return int
- Don't kill the bucket on hash_destroy if the destructor returns 0
/php-src/Zend/zend_hash.h
fd4650b 07-Jun-1999 Zeev Suraski <zeev@php.net> Add zend_hash_get_current_key_type()
/php-src/Zend/zend_hash.h
bcc1337 29-May-1999 Zeev Suraski <zeev@php.net> Support overwrite mode in zend_hash_merge()
/php-src/Zend/zend_hash.h
573b460 07-Apr-1999 Andi Gutmans <andi@php.net> Zend Library
/php-src/Zend/zend_hash.h