Marcus Boerger
51044eabd4
- Missed 'proto'
2006-03-06 22:22:07 +00:00
Marcus Boerger
1050956ad1
- Proto fixes
2006-03-06 09:47:03 +00:00
Marcus Boerger
c7adc4a54e
- Make the ctor static and not inline
2006-03-04 17:01:16 +00:00
Marcus Boerger
ce20de5e46
- Fix issue with LimitIterator and bounds checking
2006-03-03 23:34:49 +00:00
Marcus Boerger
7bb0ca9ce6
- Fix SEGV with AppendIterator when base class constructor was not called
...
- Generic check to prevent double call to constructors of SPL iterators
2006-03-03 21:35:16 +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
Dmitry Stogov
09ca61c125
Made server wide switch for unicode on/off (according to PDM).
2006-02-13 10:23:59 +00:00
Antony Dovgal
96543b01ad
initialize variables and reduce the number of warnings
2006-02-06 11:28:20 +00:00
Marcus Boerger
c67d8b2152
- Iterator API was changed
2006-02-05 23:31:47 +00:00
Marcus Boerger
2a2eae219c
- Fix error message
2006-01-23 02:26:15 +00:00
Antony Dovgal
4f07cff61c
fix typo (and possible segfault)
2006-01-18 23:39:00 +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
Antony Dovgal
8f86b6d145
avoid segfaults
2006-01-15 16:05:49 +00:00
Marcus Boerger
e16171a6b1
- MFB
2006-01-01 19:57:27 +00:00
foobar
251c5173fd
bump year and license version
2006-01-01 13:10:10 +00:00
foobar
6102ec3a06
- Remove wrong inline usage (and fix bug #35796 )
2005-12-25 16:03:38 +00:00
Marcus Boerger
2f2711acfd
- MFB Fix leak
2005-12-22 00:38:05 +00:00
Marcus Boerger
b6caa5e369
- MFB Fix memleak
2005-12-22 00:24:49 +00:00
Antony Dovgal
320b5ce461
MFB: more SPL leak fixes
2005-12-20 12:41:38 +00:00
Marcus Boerger
1a7b411f9a
- MFH IteratorIterator::__construct() fixes
2005-12-19 00:55:40 +00:00
Antony Dovgal
099ab8ac8d
MFB: fix leak in SPL iterators
2005-12-18 22:53:18 +00:00
foobar
5f44819b72
- function_entry -> zend_function_entry (php3 legacy!)
2005-12-06 02:00:07 +00:00
Stanislav Malyshev
1a60646023
MF5.1: fix reallocation bug
2005-12-05 20:08:19 +00:00
Antony Dovgal
e658842761
fix #35197 (Destructor is not called) and similar issues in other extensions
2005-11-14 21:52:27 +00:00
Marcus Boerger
d73184b6ba
- The iterator base interface is Traversable not IteratorAggregate
2005-11-01 21:17:51 +00:00
Marcus Boerger
dd702a23dc
- Fix stupid unicode warnings
2005-10-29 15:44:37 +00:00
Marcus Boerger
5c4d1edef3
- Add AppendIterator::getIteratorIndex
...
- Add AppendIterator::getArrayIterator
2005-10-29 15:37:57 +00:00
Dmitry Stogov
2b5cd0e756
Unicode support
2005-10-28 08:07:17 +00:00
Marcus Boerger
722613aeb8
- Use pcre_cache_entry* rather than pcre* directly for refcounting
...
# This prevents a theoretical crash when using too many regexes
2005-10-12 22:52:09 +00:00
Marcus Boerger
68f663eaf8
- Provide const RegExIterator::USE_KEY and actually use it in the test
2005-10-11 00:18:32 +00:00
Marcus Boerger
ac92e5988c
- Add (Recursive)RegExIterator
2005-10-10 23:58:42 +00:00
Marcus Boerger
8b14aded85
- MFB Missing constants
2005-10-05 21:57:45 +00:00
Marcus Boerger
6ccd7ef74d
- Update cast_object handlers
2005-10-05 19:12:44 +00:00
Marcus Boerger
086912dfff
- Allow to use currnet() and key() in __toString()
2005-10-03 10:08:56 +00:00
Marcus Boerger
7e1763a115
- Implement RecursiveIteratorIterator::setMaxDepth()/getMaxDepth()
2005-09-25 12:01:31 +00:00
Marcus Boerger
02038b4ac4
- Rename 'CachingRecursiveIterator' to 'RecursiveCachingIterator' so that
...
all of those follow the naming scheme 'Recursive<*>Iterator'
2005-09-18 16:51:24 +00:00
Marcus Boerger
445e382454
- Move RecursiveArrayIterator into .c
...
- Add ability to control iterator class of ArrayObject
- Implement option to make CachingIterator cache all read elements
- Implement ArrayAccess to CachingIterator to access cached elements
- Update docu
- Update tests
2005-09-18 11:34:36 +00:00
Marcus Boerger
8aa7f36a3b
- Rename Observer to SplObserver
...
- Rename Subject to SplSubject
- Move SPL constants to class constants
- Update docu
2005-09-15 03:31:37 +00:00
Dmitry Stogov
6b622046dc
zend_is_callable() and zend_make_callable() were changed to return readable function name as zval (instead of string).
2005-08-22 12:22:16 +00:00
Marcus Boerger
a24a21ecf0
- No c comment (+ old non unicode way not needed any longer)
2005-08-15 19:16:30 +00:00
Dmitry Stogov
909e0a1c4e
Unicode support
2005-08-15 17:29:07 +00:00
Antony Dovgal
d09b1b1e89
shut up warnings
2005-08-12 20:58:28 +00:00
Sebastian Bergmann
52b001cc05
ZTS fixes.
2005-08-12 14:08:28 +00:00
Dmitry Stogov
e1627558ed
Unicode support
2005-08-12 13:09:58 +00:00
Dmitry Stogov
21c1109e0c
Unicode support
2005-08-12 11:29:33 +00:00
Andrei Zmievski
264cec8be6
Unicode support.
2005-08-11 23:36:07 +00:00
Marcus Boerger
9e38d04a7c
- Add RecursiveFilterIterator
...
- Derive ParentIterator from RecursiveIterator
# Actually brought up by a user. It is of course better to filter first and
# do the recursion only for accepted values. Otherwise you would iterate
# children and possibly recurse into them just to ignore them later anyway.
2005-08-10 19:48:48 +00:00
foobar
23e671a51e
- Bumber up year
2005-08-03 14:08:58 +00:00
Marcus Boerger
0b34e041e3
- Before we later run into BC trouble we split flags into two params mode
...
and flags now before branching for 5.1.
2005-07-28 21:09:02 +00:00
Marcus Boerger
a935b06236
- Fix issues with iterators and excpetions
...
# update documentation
#
# In 5.2 we need to implement an event handler onException() to be invoked
# on exceptions during getChildren() calls. Its default implementation
# would simply rethrow the exception if the flag is not set and delete if
# if it was set. To do so the exceptions refcount needs to be increased
# before calling zend_clear_exception() to keep the exception alive but
# clear the control information.
#
# As a side note this is alos the easy solution to allow multi exception
# handling: Simply clear the engine's exception info and add a property
# called $previousException to the base exception and assign it from the
# already pending one.
2005-07-27 22:19:01 +00:00
Dmitry Stogov
aedbdb087d
Allowed return by refrence from internal functions
2005-06-16 14:56:13 +00:00
Marcus Boerger
626d781afd
- Execute both RecursiveIteratorIterator::beginChildren() and endChildren()
...
on the same level (while the actual child is available).
2005-05-14 16:40:58 +00:00
Marcus Boerger
530917b463
- Make iterator_to_array() accept Traversable
2005-03-31 21:49:47 +00:00
Marcus Boerger
f9de3fd02b
- Allow to hook into RecursiveIteratorIterator's child handling
...
- Better=faster function caching for RecursiveIteratorIterator
- Check for exceptions and fix check for illegal return values
- Add UnexpectedValueException
- Add docu
2005-03-12 23:03:33 +00:00
Marcus Boerger
16f0329a52
- Fix problem with exception in other methods, too
2005-03-06 23:07:43 +00:00
Marcus Boerger
0d1e43711a
- Fix problem with exceptions in hasChildren calls
2005-03-06 22:57:05 +00:00
Marcus Boerger
76c5d53993
- Need to store class entry
2005-03-01 10:05:12 +00:00
Marcus Boerger
5f1c3f4a7e
- Allow to convert traversable into Iterator
2005-02-23 01:03:16 +00:00
Marcus Boerger
3c36e73b95
- bugfix 31348
2005-01-24 20:21:11 +00:00
Antony Dovgal
6528b1b0b4
more typos
2004-12-29 16:11:42 +00:00
Antony Dovgal
0460f73db2
MFB: fix typos
2004-12-29 13:53:40 +00:00
Marcus Boerger
9c0f5e8887
- Use appropriate exception class where possible
2004-11-11 19:36:27 +00:00
Marcus Boerger
5dbb0aaa24
- Drop debug message
2004-11-11 19:31:27 +00:00
Marcus Boerger
31165806f8
- Simplify construction of RecursiveIteratorIterator
2004-11-08 13:44:34 +00:00
Frank M. Kromann
6a15a50d35
oops missed a couple!
...
Add termination block to function table. This will allow the engine to stop registreting functions at the end.
This fixes the - duplicate name - warning
2004-11-03 01:20:16 +00:00
Frank M. Kromann
93da44811e
Add termination block to function table. This will allow the engine to stop registreting functions at the end.
...
This fixes the - duplicate name - warning
2004-11-03 01:16:10 +00:00
Marcus Boerger
e1dfbfc695
- Don't call beginChildren/endChildren if they don't do anything
2004-11-01 23:16:43 +00:00
Marcus Boerger
533e39ecf7
- Cache function lookup
2004-11-01 23:02:10 +00:00
Marcus Boerger
3b7e24cab2
- Add RecursiveIteratorIterator::beginChildren(), endChildren()
2004-11-01 22:54:12 +00:00
Marcus Boerger
2ce7bcd742
- Allow direct access to spl class entries (SPL cannot be build shared)
2004-11-01 20:57:23 +00:00
Marcus Boerger
bd40510b62
- Two new exceptions
...
- Make use of new exception classes
2004-11-01 17:39:59 +00:00
Marcus Boerger
b9470609ad
- Minor fixes
...
- Implement AppendIterator in C
2004-11-01 00:26:59 +00:00
Marcus Boerger
9626e9859a
- Implement EmptyIterator in C
2004-10-31 20:59:39 +00:00
Marcus Boerger
de3a8ea3e1
- Implement InfiniteIterator in C
2004-10-31 19:49:18 +00:00
Marcus Boerger
a872cb0d8d
- Aggregate inner iterator for RecursiveIteratorIterator
2004-10-31 19:05:19 +00:00
Marcus Boerger
90012aa3cc
- Implement classes IteratorIterator and NoRewindIterator in C
2004-10-31 18:43:00 +00:00
Marcus Boerger
861bad634a
- Fix inner iterator aggregation
2004-10-30 19:12:14 +00:00
Marcus Boerger
8bf02ee681
- Fix protos
2004-10-30 10:18:10 +00:00
Marcus Boerger
7c4760d421
- Fix proto
2004-10-30 10:04:37 +00:00
Marcus Boerger
208a97a221
- Implement OuterIterator in C
2004-10-29 20:12:57 +00:00
Marcus Boerger
6349f46e38
- Added iterator_to_array() and iterator_count()
2004-10-07 23:08:19 +00:00
Marcus Boerger
b1326c1c24
- Fix problem when inner constructor isn't called from derived constructor
...
(foound by david)
2004-07-28 22:53:10 +00:00
Zeev Suraski
846c5a252e
Fix typo
2004-05-31 08:58:32 +00:00
Zeev Suraski
e11b518c95
Fix prototype
2004-05-30 17:32:32 +00:00
Marcus Boerger
6882000c53
- Make start and length parameter to Limititerator::__construct optional
2004-05-18 20:39:35 +00:00
Marcus Boerger
a9070ba130
Add protos
2004-05-06 09:01:31 +00:00
Marcus Boerger
11690da164
- Some pretection against out-of-memory situations
2004-04-27 17:12:11 +00:00
Marcus Boerger
7f37b3f651
Fix LimitIterator by using new handler
2004-04-27 15:41:26 +00:00
Marcus Boerger
5b755c40ea
Fix several issues
...
- bugfix #27063
- bugfix #27929
- bugfix #28099
- bugfix #28125
# The amount of code is needed to solve the return by reference problem.
# dual_it and derived also need their own iterator handlers to be able
# to return by reference.
2004-04-25 11:14:11 +00:00
Marcus Boerger
00da44519c
Bugfix #27997
2004-04-14 23:26:56 +00:00
Marcus Boerger
42370213f7
Fix toString() issue again
2004-04-08 22:46:43 +00:00
Marcus Boerger
dce131ebcd
Add agrument type info
2004-03-28 17:04:11 +00:00
Marcus Boerger
851c254ef8
Fix CachingIterator's ability to cache string conversion results.
...
Add a test for that.
2004-03-17 19:58:32 +00:00
Marcus Boerger
426649067c
Make use of zend_make_printable_zval() instead of 'manually' calling
...
__toString().
2004-03-16 10:17:59 +00:00
Marcus Boerger
1b060f3614
Access to inner iterator was missing
2004-03-09 17:35:18 +00:00
Marcus Boerger
50ee116f08
Clearify the different method/class flags (as discussed with Andi).
2004-03-09 16:38:37 +00:00
Marcus Boerger
6b0f57ee50
Rename hasMore() to valid() as discussed. (Part II)
2004-03-08 18:05:41 +00:00
Marcus Boerger
b6b7c9eb65
Rename hasMore() to valid() as discussed. (Part I)
2004-03-08 17:33:31 +00:00
Ard Biesheuvel
81f05c18f5
Wordsize fixes
2004-02-25 20:16:27 +00:00
Zeev Suraski
bec3adb801
Fix signature
...
Marcus - please make sure that this is ok. Generally you are no longer
allowed to override a method and with an incompatible signature
2004-02-25 14:58:47 +00:00