Commit Graph

380 Commits

Author SHA1 Message Date
Marcus Boerger
5f5a8172be Update 2004-03-09 17:47:28 +00:00
Marcus Boerger
bf2cf5041c Drop copydoc and add more classes/methods 2004-03-09 17:36:32 +00:00
Marcus Boerger
1b060f3614 Access to inner iterator was missing 2004-03-09 17:35:18 +00:00
Marcus Boerger
56834c958d Update 2004-03-09 17:01:21 +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
Marcus Boerger
8be7457b6c Temp fix for ctor signature until inheritance fix is complete 2004-02-25 20:38:56 +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
Ard Biesheuvel
29053cc6d5 64-bit fix 2004-02-23 01:53:39 +00:00
Marcus Boerger
1507a4a677 Fix (thx Andi) 2004-02-12 21:43:10 +00:00
Marcus Boerger
ab1e2e7c06 Fix ArrayObject 2004-02-12 20:52:48 +00:00
Zeev Suraski
30171a7590 zend_default_classes.h -> zend_exceptions.h 2004-02-12 10:43:27 +00:00
Marcus Boerger
7258bff325 Cleanup 2004-02-11 23:36:25 +00:00
foobar
1b6b63c3f9 ws 2004-02-09 18:18:00 +00:00
Ilia Alshanetsky
dfde3095e4 Possible fix for bug #27165. 2004-02-06 03:14:06 +00:00
Ilia Alshanetsky
1eb6a18289 Do not initialize & create vars unless they will be used. 2004-02-06 03:07:59 +00:00
Zeev Suraski
d89b7b23f9 API updates 2004-02-04 12:45:47 +00:00
Marcus Boerger
37cf05d1b8 Update 2004-01-29 00:10:33 +00:00
Marcus Boerger
760e43e373 removed experimental status 2004-01-28 23:00:31 +00:00
Marcus Boerger
390ae1a8b8 - Fix second issue with #27042
- Little improvement
- Update test
2004-01-28 22:59:03 +00:00
Marcus Boerger
a43693eaf0 Must use zval* here 2004-01-26 23:59:50 +00:00
Marcus Boerger
617b8df6c0 Remove test code 2004-01-26 23:20:00 +00:00
Marcus Boerger
5ac404eb64 Fixed bug #27042 (SPL: SeekableIterator seek() broken). 2004-01-26 22:30:25 +00:00
Marcus Boerger
ed650274eb We are in c not c++ 2004-01-26 07:52:52 +00:00
Marcus Boerger
0711fdcede Show supported classes & interfaces in -i and phpinfo() 2004-01-25 17:30:19 +00:00
Marcus Boerger
bec76cab71 Update examples 2004-01-25 13:03:24 +00:00
Marcus Boerger
eff2006e4e Fix this example 2004-01-23 22:33:45 +00:00
Marcus Boerger
4c0b1fddab Builtin recursion protection (by disallow to follow links by default). 2004-01-23 21:33:56 +00:00
Marcus Boerger
bd294582c3 Fix. Found by adam 2004-01-23 21:03:20 +00:00
Marcus Boerger
3b207ccb12 Add cvs tags 2004-01-20 20:59:45 +00:00
Marcus Boerger
fe03687b00 Fix a warning 2004-01-20 20:16:30 +00:00
Marcus Boerger
b0320c6032 Prevent shared builds under windows too 2004-01-20 19:49:21 +00:00
Wez Furlong
8691f86cb8 default to compiled in to match unix. 2004-01-20 17:18:41 +00:00
Frank M. Kromann
25cb3d01d5 Fix compilation of spl as shared object 2004-01-19 23:43:03 +00:00
Christian Stocker
04c2e1e8c4 fix typo 2004-01-19 11:07:19 +00:00
Marcus Boerger
6b8f137905 Must be buitin 2004-01-19 08:48:30 +00:00
Marcus Boerger
10d48448a4 Add spl_sxe to prackage 2004-01-19 08:32:58 +00:00
Derick Rethans
ff86abeab6 - Being picky :) 2004-01-19 08:32:26 +00:00
Sebastian Bergmann
32f7ba2bd6 Add spl_sxe.c. 2004-01-19 08:31:16 +00:00
Marcus Boerger
b0620b27be Rename header to prevent name clashes with external files 2004-01-18 23:35:13 +00:00
Marcus Boerger
43ee98f9fa Not needed 2004-01-18 19:17:50 +00:00
Marcus Boerger
94e64e3d8b Fix problems with manual iteration 2004-01-18 16:25:26 +00:00
Marcus Boerger
309f54384d Add class SimpleXMLIterator 2004-01-18 15:33:38 +00:00
Tal Peer
a3dc201d1e typos 2004-01-10 23:49:26 +00:00
Marcus Boerger
37d23de6d6 Fix dependancy 2004-01-08 18:23:03 +00:00
Marcus Boerger
0e5b87c5a2 Update copyright 2004-01-08 18:17:39 +00:00
Wez Furlong
8d011cba6d fix API exports 2003-12-23 01:57:26 +00:00
Wez Furlong
95c48c740c don't enable by default; causes simplexml build to fail 2003-12-19 13:02:57 +00:00
Marcus Boerger
9a98ff3ab5 Add standard file info functions to DirectoryIterator 2003-12-13 14:40:56 +00:00
Marcus Boerger
afc15ffde9 Show classname 2003-12-13 14:40:06 +00:00
Marcus Boerger
47012601af Make these inline 2003-12-10 10:21:24 +00:00
Marcus Boerger
c212ddd5ec Fix a (single) leak
# -> iterators cannot keep current data as zval**, only zval * is possible.
2003-12-10 10:19:43 +00:00
Marcus Boerger
d4a55f1ace Add missing dtor call. 2003-12-09 19:03:38 +00:00
Marcus Boerger
5b7d1623ae - Initialize for refcounting.
- Simplify.
2003-12-09 19:02:34 +00:00
Marcus Boerger
f3a3990ca8 Implement CahingIterator and CachingRecursiveIterator as C-code.
#Script examples/directorytree.php has a few memleaks though but besides
#that all works fine.
2003-12-08 08:39:18 +00:00
Marcus Boerger
1c13018702 Use better name for the constant 2003-12-08 08:31:08 +00:00
Marcus Boerger
3aa3f744f1 Update examples to new parameter handling 2003-12-08 08:28:18 +00:00
Marcus Boerger
1765271499 Use a single bit field for the flags here 2003-12-07 15:03:11 +00:00
Marcus Boerger
cca2a74462 Update examples 2003-12-07 13:21:47 +00:00
Marcus Boerger
7046afb542 Implement SeekableIterator and LimitIterator as C code. 2003-12-06 19:21:02 +00:00
Marcus Boerger
8e188f9d03 Update examples 2003-12-06 19:03:17 +00:00
Wez Furlong
62d3cccfc9 make it build under win32 2003-12-06 00:09:55 +00:00
Marcus Boerger
5ae70cc44a Update __toString() issues 2003-12-04 20:56:32 +00:00
Marcus Boerger
dc6f211967 __toString() must be called explicitly now 2003-12-04 20:24:06 +00:00
Marcus Boerger
d79ca1c853 Update 2003-12-04 20:01:46 +00:00
Marcus Boerger
aaa81ea211 Add package file 2003-12-04 19:53:33 +00:00
Marcus Boerger
707681218b No longer true 2003-12-04 19:47:10 +00:00
Marcus Boerger
f679b5c935 Update documentation 2003-12-04 19:39:46 +00:00
Marcus Boerger
2216eb4511 Update 2003-12-04 17:45:36 +00:00
Marcus Boerger
e9f7e14460 Remove debug code 2003-12-02 07:19:31 +00:00
Marcus Boerger
37d7555f98 Add classes from examples: FilterIterator, ParentIterator 2003-12-02 07:18:05 +00:00
Marcus Boerger
a7217431be Move object struct to header. 2003-12-02 07:13:53 +00:00
Marcus Boerger
34a3019acd Fix macros 2003-11-30 17:05:10 +00:00
Marcus Boerger
8ef69cf369 Update 2003-11-30 16:31:35 +00:00
Marcus Boerger
c5fba4c957 Require inner iterator to be RecursiveIterator 2003-11-30 16:20:03 +00:00
Marcus Boerger
01f5277002 Remove old files 2003-11-30 16:14:56 +00:00
Marcus Boerger
bfa36a8ea7 Caanot use REPLACE_ZVAL_VALUE here. 2003-11-29 18:31:24 +00:00
Marcus Boerger
0f2f745393 Cleanup 2003-11-26 23:28:35 +00:00
Marcus Boerger
06cdd3e4cc Remove interfaces implemented in engine now 2003-11-26 08:18:26 +00:00
Marcus Boerger
95c0c36525 Add missing files 2003-11-22 20:52:06 +00:00
Marcus Boerger
3d9ec63384 Update examples 2003-11-22 20:51:15 +00:00
Marcus Boerger
eca139ec52 - rename getLevel() to getDepth()
- make parameter to getSubIterator() optinal
- refcount fix
2003-11-22 20:49:15 +00:00
Marcus Boerger
9ed350cf67 - current() returns self
- add __toString() casting
2003-11-22 20:46:46 +00:00
Marcus Boerger
e3cbda9789 Disable interfaces ArrayRead and ArrayAccess 2003-11-22 20:44:44 +00:00
Marcus Boerger
a16ca5a1c2 Dont't stop if directory can't be openedbecause of user rights etc 2003-11-19 00:18:30 +00:00
Marcus Boerger
e9d0b04588 Must use hasNext() here 2003-11-18 22:34:51 +00:00
Marcus Boerger
43d4079590 update directory examples 2003-11-18 22:18:38 +00:00
Marcus Boerger
dc42ce8cf2 - Rename DirectoryTreeIterator to RecursiveDirectoryiterator (what it
effectively is).
- Add DirectoryIterator::__toString ->getFilename
- Add RecursiveDirecetoryIterator::__toString ->getPathname
- Add RecursiveIteratorIterator::getSubIterator.
2003-11-18 22:14:19 +00:00
Marcus Boerger
5757ae3d24 Rename ArrayClass to ArrayObject 2003-11-17 05:32:43 +00:00
Marcus Boerger
b904d296c9 Fix ArrayClass and provide missing has_dimension handler. 2003-11-17 05:25:47 +00:00
Marcus Boerger
54352a63ad Fix RecursiveIteratorIterator 2003-11-17 00:57:01 +00:00
Marcus Boerger
3bfa497254 WS 2003-11-17 00:56:15 +00:00
Marcus Boerger
883777623a Make it an interface with an code example as comment 2003-11-17 00:55:37 +00:00
Marcus Boerger
e480d10021 Fix this 2003-11-11 18:33:34 +00:00
Marcus Boerger
91ab36096e Add shortcut interface SeekableIterator to LimitIterator 2003-11-11 18:31:50 +00:00
Marcus Boerger
ab05faf5b1 Implement different recursion modes as statemachine and have an optional
parameter to choose the mode in the constructor.
2003-11-11 00:25:26 +00:00
Marcus Boerger
c300480441 Synch exposed functions with c-level iterator functions 2003-11-09 23:00:50 +00:00
Marcus Boerger
159c538bcf Major update:
- Remove all overloading hooks -> array_read/array_access must be rewritten
- Remove all basic iterators
- Remove all 'spl_' prefixing exposed to user level
- Add RecursiveIterator, RecursiveIteratorIterator
- Add DirectoryIterator, DirectoryTreeIterator
- Add some examples
2003-11-09 14:05:36 +00:00
Marcus Boerger
a3d6fb043d Update tests 2003-10-23 07:14:50 +00:00
Marcus Boerger
000e01e5d3 Update 2003-10-23 07:09:04 +00:00
Marcus Boerger
6433226749 Explicit cwqasting is now necessary 2003-09-20 12:51:20 +00:00
Marcus Boerger
cd021cfb3a Go with studlyCaps 2003-09-18 16:26:29 +00:00
Marcus Boerger
c0b9d55cfa ZTS fix 2003-09-07 02:37:10 +00:00
Marcus Boerger
0f91d8a4f6 Go with stdlyCaps 2003-09-04 14:44:55 +00:00
Marcus Boerger
b7d325991d Exceptions work now 2003-08-25 20:54:37 +00:00
Marcus Boerger
1cf91a7ac5 Extensions that do opcode hooking must provide the removed functions/macros
themselves now.
2003-08-21 00:10:49 +00:00
Marcus Boerger
c346aad91a spl_call_method returns the zval* if used 2003-08-16 20:27:29 +00:00
Marcus Boerger
0c7c8f4857 Simplify 2003-08-16 10:37:14 +00:00
Marcus Boerger
33cae26946 Upds 2003-08-14 21:44:38 +00:00
Marcus Boerger
175c25c2a8 Add 'graphical' tree mode 2003-08-14 21:14:04 +00:00
Marcus Boerger
74fdac04fe This is a void funtion 2003-08-10 15:05:14 +00:00
Marcus Boerger
142c79d653 Add foreach/continue test 2003-08-10 13:17:02 +00:00
Marcus Boerger
42cf1f8b97 Fix refcounting for $var = $obj[$idx] = $value; 2003-08-09 19:24:11 +00:00
Marcus Boerger
6da189d1e8 Once ago this was used 2003-08-07 22:50:46 +00:00
Marcus Boerger
0040355af8 - Reduce number of c-functions/macros involved in function invocation
- Unify names of remaining c-function/macro names
2003-08-07 22:43:01 +00:00
Marcus Boerger
47a80fee58 Switch to use zend_call_function() what shortens spl code 2003-08-07 22:19:50 +00:00
Marcus Boerger
1716669a27 You shall not Copy'n'Paste after midnight without checking 3 times 2003-08-04 23:21:27 +00:00
Marcus Boerger
2e945483d2 Ups 2003-08-04 23:16:45 +00:00
Marcus Boerger
d23bfc0512 Update documentation in source, reflection and docu itself, part II 2003-08-04 23:15:56 +00:00
Marcus Boerger
28dd8fcff2 Update documentation in source, reflection and docu itself 2003-08-04 23:00:57 +00:00
Marcus Boerger
b099670127 - Unset support for spl_array_access by method set($index)
- Parameter names for array interface methods
2003-08-04 21:56:05 +00:00
Marcus Boerger
c80e7329bd Fix comment 2003-08-04 20:25:41 +00:00
Marcus Boerger
91a882478f Unset support for spl_array 2003-08-04 20:17:53 +00:00
Marcus Boerger
3b4f9d7b58 Latest zend updates 2003-08-03 22:29:20 +00:00
Marcus Boerger
d7b37fa96b Update due to Zeev's latest engine changes 2003-07-24 20:28:15 +00:00
Marcus Boerger
8a2e76d72c Update docu 2003-07-20 12:30:05 +00:00
Marcus Boerger
a68cb5129c - Add class spl_array_it which is the iterator returned by spl_array.
This class can also be used alone without spl_array but doesn't allow
  recursive foreach usage.
- Fix protos to new proto system.
- Add test for spl_array_it.
2003-07-20 01:22:03 +00:00
Marcus Boerger
c038d88769 Add test for class spl_array 2003-07-19 21:04:16 +00:00
Marcus Boerger
173cb1436f Add class spl_array which is an array wrapper 2003-07-19 20:54:22 +00:00
Marcus Boerger
b1f96b77fb Revert stuid patch 2003-07-19 19:04:35 +00:00
Marcus Boerger
9efcbe1e75 Fix clone 2003-07-19 18:53:10 +00:00
Marcus Boerger
59d6d4ab18 Move filter functionality to dedicated function 2003-07-19 09:50:18 +00:00
Marcus Boerger
2432baee40 Add clone support 2003-07-19 09:49:28 +00:00
Marcus Boerger
d8943e513c Update examples 2003-07-16 21:52:03 +00:00
Marcus Boerger
49277b2ac6 More examples 2003-07-16 20:18:33 +00:00
Marcus Boerger
1131d43b0b Update examples 2003-07-16 20:17:34 +00:00
Marcus Boerger
5e1606b882 Add tree example 2003-07-16 18:47:26 +00:00
Marcus Boerger
3a49606d9d Add directory iterator class 2003-07-16 15:13:23 +00:00
Marcus Boerger
aa9bde9a34 Make array write stuff work again correct and fix tests 2003-07-16 10:41:43 +00:00
Marcus Boerger
15097151f4 Update and remove parts no longer possible 2003-07-16 09:48:36 +00:00
Jason Greene
ae3101c5f1 Convert C++ comments to C (violates C99, and breaks several compilers) 2003-07-09 02:48:25 +00:00
Marcus Boerger
f31df5693e Currently we're presented all properties with foreach() 2003-07-08 23:25:18 +00:00
Marcus Boerger
79ac007d20 Fix configure options 2003-07-08 23:11:36 +00:00
Marcus Boerger
d9de39ec16 Add some comments 2003-07-08 23:11:14 +00:00
Marcus Boerger
e4f67f3545 Make --disable-spl work 2003-06-30 23:24:12 +00:00
Marcus Boerger
20b8a7dfe4 Put some brief technically description here 2003-06-23 22:37:12 +00:00
Marcus Boerger
f2bce37d04 Add profiling results 2003-06-23 21:59:55 +00:00
Marcus Boerger
51dbd3b39e Adding an array example 2003-06-22 15:48:44 +00:00
Marcus Boerger
f9477577a4 Fix array writing 2003-06-22 14:55:44 +00:00
Marcus Boerger
f4d3111e8a Fix example 2003-06-22 12:57:53 +00:00
Marcus Boerger
76b3007386 More name fixes (more thanks to george) 2003-06-19 18:22:17 +00:00
Marcus Boerger
69b7bb275a Forget to remove these namespace crap (thanks to george to remind me) 2003-06-19 17:38:53 +00:00
Marcus Boerger
5b3fd9bf2f - Remove namespace leftovers
- Convert some static inline functions to macros
- Faster was of function call parameter stack building
2003-06-17 20:18:10 +00:00
Marcus Boerger
3a75403bac License update 2003-06-12 19:30:54 +00:00
Marcus Boerger
76f68f2a51 WS and removing unecessary things 2003-06-11 20:51:14 +00:00
Marcus Boerger
cdac4401d8 No more namespaces 2003-06-09 16:58:51 +00:00
Marcus Boerger
67befca5e6 Add some 'structure' and make it faster 2003-06-09 16:57:17 +00:00
Marcus Boerger
b70cf40742 Goodbye namespaces 2003-06-04 20:54:48 +00:00
Marcus Boerger
9211aed984 Simplify by using __METHOD__ 2003-06-01 16:41:53 +00:00
Marcus Boerger
80bdb812e1 Fix precondition 2003-05-31 15:22:42 +00:00
Marcus Boerger
7d78168c7b Classes are neither interfaces nor necessarily abstract 2003-05-31 15:20:11 +00:00
Marcus Boerger
5b32cdc5a0 Fix last commit 2003-05-29 23:55:07 +00:00
Marcus Boerger
90640a7774 Optimize 2003-05-29 23:44:22 +00:00
Marcus Boerger
57ceaebe8a Make use of ze2 code 2003-05-29 23:34:23 +00:00
Marcus Boerger
283f52f415 Optimize interface checks 2003-05-29 21:08:08 +00:00
Marcus Boerger
e525904c8e For now that works.
# However some of the register stuff must be moved to the engine.
# And inside the engine some fixes are needed, too.
2003-05-27 00:14:04 +00:00
Marcus Boerger
6d913a3bfc - Fix handling of abstract methods. They must be inherited when inheriting
a method.
- Fix entry more (should be amed has_more).
- Add a check against that bug.
2003-05-26 22:06:49 +00:00
Marcus Boerger
0b4cbe26a7 Add a testcase to foreach/break 2003-05-25 19:24:29 +00:00
Marcus Boerger
13f50103ae Make foreach on spl'ed objects work with break, too 2003-05-25 19:10:44 +00:00
Marcus Boerger
2f0ea97617 Speling 2003-05-25 12:10:48 +00:00
Marcus Boerger
21bbfb503e Optimizations 2003-05-25 01:36:50 +00:00
Marcus Boerger
96034f390b Optimizing by caching class entries, too.
# The comment block inside ZEND_EXECUTE_HOOK_FUNCTION(ZEND_FE_FETCH)
# is a tricky way to create result = array(key => value) very fast.
# But it is close to overoptimizing.
2003-05-24 21:02:33 +00:00
Marcus Boerger
135415ca8f fix error resulting from strlen() -> sizeof() change in engine macros 2003-05-24 15:51:24 +00:00
Marcus Boerger
29a5535394 Fixes and optimizations 2003-05-24 13:47:49 +00:00
Marcus Boerger
4701aaaa87 Interfaces only implement interfaces 2003-05-02 15:39:12 +00:00
Marcus Boerger
d6d17e510d Remove this debug line too 2003-05-02 11:10:55 +00:00
Marcus Boerger
ff82ad268f Add some info 2003-05-02 03:09:58 +00:00
Marcus Boerger
b5a70a72d1 Add spl extension 2003-05-01 23:28:28 +00:00