--TEST--
SPL: ArrayIterator overloading
--FILE--
<?php

class ArrayIteratorEx extends ArrayIterator
{
    function 
rewind()
    {
        echo 
__METHOD__ "\n";
        
ArrayIterator::rewind();
    }

    function 
valid()
    {
        echo 
__METHOD__ "\n";
        return 
ArrayIterator::valid();
    }

    function 
key()
    {
        echo 
__METHOD__ "\n";
        return 
ArrayIterator::key();
    }

    function 
current()
    {
        echo 
__METHOD__ "\n";
        return 
ArrayIterator::current();
    }

    function 
next()
    {
        echo 
__METHOD__ "\n";
        return 
ArrayIterator::next();
    }
}

$ar = new ArrayIteratorEx(array(1,2));
foreach(
$ar as $k => $v)
{
    
var_dump($k);
    
var_dump($v);
}

?>
===DONE===
<?php exit(0); ?>
--EXPECTF--
ArrayIteratorEx::rewind
ArrayIteratorEx::valid
ArrayIteratorEx::current
ArrayIteratorEx::key
int(0)
int(1)
ArrayIteratorEx::next
ArrayIteratorEx::valid
ArrayIteratorEx::current
ArrayIteratorEx::key
int(1)
int(2)
ArrayIteratorEx::next
ArrayIteratorEx::valid
===DONE===