Renamed Registry -> GenericRegistry to make it clear that this registry does
[core.git] / framework / main / classes / iterator / class_
1 <?php
2 // Own namespace
3 namespace CoreFramework\Iterator\!!!;
4
5 // Import framework stuff
6 use Org\Mxchange\CoreFramework\Iterator\BaseIterator;
7
8 // Import SPL stuff
9 use \Iterator;
10
11 /**
12  * A ??? iterator
13  *
14  * @author              Roland Haeder <webmaster@ship-simu.org>
15  * @version             0.0.0
16  * @copyright   Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2017 Core Developer Team
17  * @license             GNU GPL 3.0 or any newer version
18  * @link                http://www.ship-simu.org
19  *
20  * This program is free software: you can redistribute it and/or modify
21  * it under the terms of the GNU General Public License as published by
22  * the Free Software Foundation, either version 3 of the License, or
23  * (at your option) any later version.
24  *
25  * This program is distributed in the hope that it will be useful,
26  * but WITHOUT ANY WARRANTY; without even the implied warranty of
27  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
28  * GNU General Public License for more details.
29  *
30  * You should have received a copy of the GNU General Public License
31  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
32  */
33 class ???Iterator extends BaseIterator implements Iterator {
34         /**
35          * Protected constructor
36          *
37          * @return      void
38          */
39         protected function __construct () {
40                 // Call parent constructor
41                 parent::__construct(__CLASS__);
42         }
43
44         /**
45          * Creates an instance of this class
46          *
47          * @return      $iteratorInstance       An instance of a Iterator class
48          */
49         public final static function create???Iterator () {
50                 // Get new instance
51                 $iteratorInstance = new ???Iterator();
52
53                 // Return the prepared instance
54                 return $iteratorInstance;
55         }
56
57         /**
58          * Getter for current value from group or generic
59          *
60          * @return      $current        Current value in iteration
61          */
62         public function current () {
63                 // Default is null
64                 $current = null;
65
66                 $this->partialStub('Please implement this method.');
67
68                 // Return it
69                 return $current;
70         }
71
72         /**
73          * Getter for key from group or generic
74          *
75          * @return      $key    Current key in iteration
76          */
77         public function key () {
78                 // Default is null
79                 $key = null;
80
81                 $this->partialStub('Please implement this method.');
82
83                 // Return it
84                 return $key;
85         }
86
87         /**
88          * Advances to the next entry
89          *
90          * @return      void
91          */
92         public function next () {
93                 $this->partialStub('Please implement this method.');
94         }
95
96         /**
97          * Rewinds to the beginning of the iteration
98          *
99          * @return      void
100          */
101         public function rewind () {
102                 $this->partialStub('Please implement this method.');
103         }
104
105         /**
106          * Checks wether the current entry is valid (not at the end of the list)
107          *
108          * @return      void
109          */
110         public function valid () {
111                 $this->partialStub('Please implement this method.');
112         }
113
114 }