aboutsummaryrefslogtreecommitdiff
path: root/classes/IsisFieldIterator.php
diff options
context:
space:
mode:
authorSilvio <silvio@devlet.com.br>2010-07-15 18:15:21 -0300
committerSilvio <silvio@devlet.com.br>2010-07-15 18:15:21 -0300
commitd9f864a13f9216b7ee78a85c53d3184220eb01c3 (patch)
tree803d9f3095a58cd638b596781eb54d6369a97708 /classes/IsisFieldIterator.php
parent995ab5bad89603d40b7d9d60fef4bb8bae1dc9d3 (diff)
downloadcinisis-d9f864a13f9216b7ee78a85c53d3184220eb01c3.tar.gz
cinisis-d9f864a13f9216b7ee78a85c53d3184220eb01c3.tar.bz2
Moving iterators to their own folder
Diffstat (limited to 'classes/IsisFieldIterator.php')
-rw-r--r--classes/IsisFieldIterator.php79
1 files changed, 0 insertions, 79 deletions
diff --git a/classes/IsisFieldIterator.php b/classes/IsisFieldIterator.php
deleted file mode 100644
index 11ed979..0000000
--- a/classes/IsisFieldIterator.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-
-/**
- * Isis field iterator. Iterates over all field values for
- * each result row.
- */
-class IsisFieldIterator implements Iterator
-{
- private $valueset;
- private $row = 0;
- private $rows = 0;
-
- /**
- * Constructor.
- *
- * @param $class
- * Instance of IsisConnector or child class.
- *
- * @param $field
- * Field to iterate over.
- */
- public function __construct($class, $field) {
- $this->rows = $class->getRows($field);
- $this->valueset = $class->getValues($field);
- }
-
- /**
- * Rewind the Iterator to the first element.
- */
- function rewind() {
- $this->row = 0;
- $this->value = 0;
- }
-
- /**
- * Return the key of the current element.
- */
- function key() {
- return $this->row;
- }
-
- /**
- * Return the current element.
- */
- function current() {
- return $this->valueset[$this->row]['field'];
- }
-
- /**
- * Move forward to next element.
- */
- function next() {
- do {
- ++$this->row;
- }
- while ($this->current_null() && $this->has_more_rows());
- }
-
- /**
- * Check if there are more rows.
- */
- function has_more_rows() {
- return $this->row <= $this->rows;
- }
-
- /**
- * Check if the current value is null.
- */
- function current_null() {
- return $this->current() == NULL;
- }
-
- /**
- * Check if there is a current element after calls to rewind() or next().
- */
- function valid() {
- return $this->has_more_rows() && !$this->current_null();
- }
-}