summaryrefslogtreecommitdiff
path: root/framework/Collections/TMap.php
diff options
context:
space:
mode:
Diffstat (limited to 'framework/Collections/TMap.php')
-rw-r--r--framework/Collections/TMap.php76
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;
- }
}