src/Collection/Collection.php
public function Where($callable) : self
   {
      if (!is_callable($callable)) {
         throw new Exception("The parameter of ther Where is not a valid callable");
      }

      $list = new self();
      $aux = $this->getFirst();
      $newList = new self();
      while ($aux !== null) {
         if ($callable($aux->getData())) {
            $newList->add($aux->getData());
         }
         $aux = $aux->getAft();
      }
      return $newList;
   }
public function Where($callable) : self
   {
      if (!is_callable($callable)) {
         throw new Exception("The parameter of ther Where is not a valid callable");
      }

      $list = new self();
      $aux = $this->getFirst();
      $newList = new self();
      while ($aux !== null) {
         if ($callable($aux->getData())) {
            $newList->add($aux->getData());
         }
         $aux = $aux->getAft();
      }
      return $newList;
   }
LINQ FUNCTIONS