Hoa central
CallbackGenerator.php
Go to the documentation of this file.
1 <?php
2 
37 namespace Hoa\Iterator;
38 
47 class CallbackGenerator implements Iterator
48 {
54  protected $_callback = null;
55 
61  protected $_key = 0;
62 
68  protected $_current = null;
69 
70 
71 
78  public function __construct(callable $callback)
79  {
80  $this->_callback = $callback;
81 
82  return;
83  }
84 
90  public function current()
91  {
92  $handle = $this->_callback;
93 
94  return $this->_current = $handle($this->_key);
95  }
96 
102  public function key()
103  {
104  return $this->_key;
105  }
106 
112  public function next()
113  {
114  ++$this->_key;
115 
116  return;
117  }
118 
124  public function rewind()
125  {
126  $this->_key = 0;
127  $this->_current = null;
128 
129  return;
130  }
131 
137  public function valid()
138  {
139  return true;
140  }
141 }