<commit_before><?php

namespace Doctrine\Common\Collections;

use Doctrine\Common\Collections\Expr\CompositeExpression;
use Doctrine\Common\Collections\Expr\Expression;
use function array_map;
use function strtoupper;

/**
 * Criteria for filtering Selectable collections.
 */
class Criteria
{
    public const ASC = 'ASC';

    public const DESC = 'DESC';

    /** @var ExpressionBuilder|null */
    private static $expressionBuilder;

    /** @var Expression|null */
    private $expression;

    /** @var string[] */
    private $orderings = [];

    /** @var int|null */
    private $firstResult;

    /** @var int|null */
    private $maxResults;

    /**
     * Creates an instance of the class.
     *
     * @return Criteria
     */
    public static function create()
    {
        return new static();
    }

    /**
     * Returns the expression builder.
     *
     * @return ExpressionBuilder
     */
    public static function expr()
    {
        if (self::$expressionBuilder === null) {
            self::$expressionBuilder = new ExpressionBuilder();
        }

        return self::$expressionBuilder;
    }

    /**
     * Construct a new Criteria.
     *
     * @param string[]|null $orderings
     * @param int|null      $firstResult
     * @param int|null      $maxResults
     *
     * @return void
     */
    public function __construct(?Expression $expression = null, ?array $orderings = null, $firstResult = null, $maxResults = null)
    {
        $this->expression = $expression;
<commit_msg>Remove needless return type annotation<commit_after><?php

namespace Doctrine\Common\Collections;

use Doctrine\Common\Collections\Expr\CompositeExpression;
use Doctrine\Common\Collections\Expr\Expression;
use function array_map;
use function strtoupper;

/**
 * Criteria for filtering Selectable collections.
 */
class Criteria
{
    public const ASC = 'ASC';

    public const DESC = 'DESC';

    /** @var ExpressionBuilder|null */
    private static $expressionBuilder;

    /** @var Expression|null */
    private $expression;

    /** @var string[] */
    private $orderings = [];

    /** @var int|null */
    private $firstResult;

    /** @var int|null */
    private $maxResults;

    /**
     * Creates an instance of the class.
     *
     * @return Criteria
     */
    public static function create()
    {
        return new static();
    }

    /**
     * Returns the expression builder.
     *
     * @return ExpressionBuilder
     */
    public static function expr()
    {
        if (self::$expressionBuilder === null) {
            self::$expressionBuilder = new ExpressionBuilder();
        }

        return self::$expressionBuilder;
    }

    /**
     * Construct a new Criteria.
     *
     * @param string[]|null $orderings
     * @param int|null      $firstResult
     * @param int|null      $maxResults
     */
    public function __construct(?Expression $expression = null, ?array $orderings = null, $firstResult = null, $maxResults = null)
    {
        $this->expression = $expression;

{'fraction_non_alphanumeric': 0.12022397891963109, 'fraction_numerical': 0.0, 'mean_word_length': 2.4550625711035265, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2391893', 'n_tokens_mistral': 836, 'n_tokens_neox': 816, 'n_words': 224}