private function incrementCounter(int $counter, int $limit, string $parameterKey) : int { if ($counter >= $limit) { throw RecursionLimitReachedExceptionFactory::create($limit, $parameterKey); } return ++$counter; }