diff options
Diffstat (limited to 'framework/Collections/TMap.php')
-rw-r--r-- | framework/Collections/TMap.php | 76 |
1 files changed, 3 insertions, 73 deletions
diff --git a/framework/Collections/TMap.php b/framework/Collections/TMap.php index 2a18b87d..017f70b8 100644 --- a/framework/Collections/TMap.php +++ b/framework/Collections/TMap.php @@ -47,9 +47,9 @@ class TMap extends TComponent implements IteratorAggregate,ArrayAccess,Countable * Reimplement in derived classes to add new variables, but remember to also to call the parent * implementation first. */ - protected function __getZappableSleepProps(&$exprops) + protected function _getZappableSleepProps(&$exprops) { - parent::__getZappableSleepProps($exprops); + parent::_getZappableSleepProps($exprops); if ($this->_d===array()) $exprops[] = "\0TMap\0_d"; if ($this->_r===false) @@ -290,76 +290,6 @@ class TMap extends TComponent implements IteratorAggregate,ArrayAccess,Countable * @package System.Collections * @since 3.0 */ -class TMapIterator implements Iterator +class TMapIterator extends ArrayIterator { - /** - * @var array the data to be iterated through - */ - private $_d; - /** - * @var array list of keys in the map - */ - private $_keys; - /** - * @var mixed current key - */ - private $_key; - - /** - * Constructor. - * @param array the data to be iterated through - */ - public function __construct(&$data) - { - $this->_d=&$data; - $this->_keys=array_keys($data); - } - - /** - * Rewinds internal array pointer. - * This method is required by the interface Iterator. - */ - public function rewind() - { - $this->_key=reset($this->_keys); - } - - /** - * Returns the key of the current array element. - * This method is required by the interface Iterator. - * @return mixed the key of the current array element - */ - public function key() - { - return $this->_key; - } - - /** - * Returns the current array element. - * This method is required by the interface Iterator. - * @return mixed the current array element - */ - public function current() - { - return $this->_d[$this->_key]; - } - - /** - * Moves the internal pointer to the next array element. - * This method is required by the interface Iterator. - */ - public function next() - { - $this->_key=next($this->_keys); - } - - /** - * Returns whether there is an element at current position. - * This method is required by the interface Iterator. - * @return boolean - */ - public function valid() - { - return $this->_key!==false; - } } |