• File: RewindableGenerator.php
  • Full Path: /home/matthif/www/wp-content/plugins/wordpress-seo/vendor_prefixed/symfony/dependency-injection/Argument/RewindableGenerator.php
  • Date Modified: 02/24/2024 11:29 PM
  • File size: 907 bytes
  • MIME-type: text/x-php
  • Charset: utf-8
<?php

/*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
namespace YoastSEO_Vendor\Symfony\Component\DependencyInjection\Argument;

/**
 * @internal
 */
class RewindableGenerator implements \IteratorAggregate\Countable
{
    private 
$generator;
    private 
$count;
    
/**
     * @param int|callable $count
     */
    
public function __construct(callable $generator$count)
    {
        
$this->generator $generator;
        
$this->count $count;
    }
    public function 
getIterator()
    {
        
$g $this->generator;
        return 
$g();
    }
    public function 
count()
    {
        if (
\is_callable($count $this->count)) {
            
$this->count $count();
        }
        return 
$this->count;
    }
}