public function dumpString_iterator($depth, $obj, $ctrl = null)
 {
     $pos_1 = strrpos($obj->data['file'], "/");
     // Linux
     $pos_2 = strrpos($obj->data['file'], "\\");
     // Windows
     $offset = max($pos_1, $pos_2);
     $length = strlen($obj->data['file']);
     $file = substr($obj->data['file'], $offset + 1, $length - $offset);
     $result .= "\nCODE: " . $obj->data['numeric'] . "\n";
     $result .= "TEXT: " . $obj->data['text'] . "\n";
     $result .= "FILE: " . $file . "\n";
     $result .= "LINE: " . $obj->data['line'] . "\n";
     if ($ctrl['data'] == true) {
         $result .= "DATA: " . FOX_debug::dumpToString($obj->data['data']);
     }
     if (is_object($obj->data['child']) && $depth > 0) {
         $result .= self::dumpString_iterator($depth - 1, $obj->data['child'], $ctrl);
     }
     return $result;
 }