]> git.mxchange.org Git - friendica.git/blobdiff - src/BaseCollection.php
Move notification to the new paradigm
[friendica.git] / src / BaseCollection.php
index c4d637a3672642cb604fabdd161ce8de69387fe0..1aa13ae9611403df74bd3078f4b83bcd2989bfa2 100644 (file)
 namespace Friendica;
 
 /**
- * The Collection classes inheriting from this abstract class are meant to represent a list of database record.
- * The associated model class has to be provided in the child classes.
+ * The Collection classes inheriting from this class are meant to represent a list of structured objects of a single type.
  *
  * Collections can be used with foreach(), accessed like an array and counted.
  */
-abstract class BaseCollection extends \ArrayIterator
+class BaseCollection extends \ArrayIterator
 {
        /**
         * This property is used with paginated results to hold the total number of items satisfying the paginated request.
@@ -115,4 +114,14 @@ abstract class BaseCollection extends \ArrayIterator
        {
                return new static(array_filter($this->getArrayCopy(), $callback, $flag));
        }
+
+       /**
+        * Reverse the orders of the elements in the collection
+        *
+        * @return $this
+        */
+       public function reverse(): BaseCollection
+       {
+               return new static(array_reverse($this->getArrayCopy()), $this->getTotalCount());
+       }
 }