 Name: svn:keywords
    + Id
 
+Index: io/collections/iterate/FilteredIOCollectionIterator.class.php
+===================================================================
+--- io/collections/iterate/FilteredIOCollectionIterator.class.php	(revision 8140)
++++ io/collections/iterate/FilteredIOCollectionIterator.class.php	(working copy)
+@@ -57,5 +57,15 @@
+     function acceptElement(&$element) {
+       return $this->filter->accept($element);
+     }
++    
++    /**
++     * Creates a string representation of this iterator
++     *
++     * @access  public
++     * @return  string
++     */
++    function toString() {
++      return parent::toString()."@{\n  ".str_replace("\n", "\n  ", $this->filter->toString())."\n}";
++    }
+   }
+ ?>
 Index: io/collections/iterate/RegexFilter.class.php
 ===================================================================
 --- io/collections/iterate/RegexFilter.class.php	(revision 8140)

===================================================================
--- io/collections/iterate/AbstractCombinedFilter.class.php	(revision 0)
+++ io/collections/iterate/AbstractCombinedFilter.class.php	(revision 0)
@@ -0,0 +1,41 @@
+<?php
+/* This class is part of the XP framework
+ *

+    function accept(&$element) {
+      return (bool)preg_match($this->pattern, basename($element->getURI()));
+    }
+
+    /**
+     * Creates a string representation of this iterator
+     *
+     * @access  public
+     * @return  string
+     */
+    function toString() {
+      return $this->getClassName().'('.$this->pattern.')';
+    }
+  
+  } implements(__FILE__, 'io.collections.iterate.IterationFilter');
+?>
