<commit_before><?php
declare(strict_types=1);

/**
 * CakePHP(tm) : Rapid Development Framework (https://cakephp.org)
 * Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
 * @link          https://cakephp.org CakePHP(tm) Project
 * @since         2.0.0
 * @license       https://opensource.org/licenses/mit-license.php MIT License
 */
namespace Cake\Console;

use Cake\Console\Exception\ConsoleException;
use SimpleXMLElement;

/**
 * An object to represent a single option used in the command line.
 * ConsoleOptionParser creates these when you use addOption()
 *
 * @see \Cake\Console\ConsoleOptionParser::addOption()
 */
class ConsoleInputOption
{
    /**
     * Name of the option
     *
     * @var string
     */
    protected $_name;

    /**
     * Short (1 character) alias for the option.
     *
     * @var string
     */
    protected $_short;

    /**
     * Help text for the option.
     *
     * @var string
     */
    protected $_help;

    /**
     * Is the option a boolean option. Boolean options do not consume a parameter.
     *
     * @var bool
     */
    protected $_boolean;

    /**
     * Default value for the option
     *
     * @var string|bool|null
     */
    protected $_default;

    /**
     * Can the option accept multiple value definition.
     *
     * @var bool
     */
    protected $_multiple;

    /**
     * An array of choices for the option.
     *
     * @var string[]
     */
    protected $_choices;

    /**
     * Make a new Input Option
     *
     * @param string $name The long name of the option, or an array with all the properties.
     * @param string $short The short alias for this option
     * @param string $help The help text for this option
     * @param bool $boolean Whether this option is a boolean option. Boolean options don't consume extra tokens
     * @param string|bool|null $default The default value for this option.
     * @param string[] $choices Valid choices for this option.
     * @param bool $multiple Whether this option can accept multiple value definition.
     * @throws \Cake\Console\Exception\ConsoleException
     */
    public function __construct(
        string $name,
        string $short = '',
        string $help = '',
        bool $boolean = false,
        $default = null,
        array $choices = [],
        bool $multiple = false
    ) {
        $this->_name = $name;
        $this->_short = $short;
        $this->_help = $help;
        $this->_boolean = $boolean;
        $this->_choices = $choices;
        $this->_multiple = $multiple;

        if ($boolean) {
            $this->_default = (bool)$default;
        } elseif ($default !== null) {
            $this->_default = (string)$default;
        }

        if (strlen($this->_short) > 1) {<commit_msg>Use more intuitive argument name<commit_after><?php
declare(strict_types=1);

/**
 * CakePHP(tm) : Rapid Development Framework (https://cakephp.org)
 * Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
 * @link          https://cakephp.org CakePHP(tm) Project
 * @since         2.0.0
 * @license       https://opensource.org/licenses/mit-license.php MIT License
 */
namespace Cake\Console;

use Cake\Console\Exception\ConsoleException;
use SimpleXMLElement;

/**
 * An object to represent a single option used in the command line.
 * ConsoleOptionParser creates these when you use addOption()
 *
 * @see \Cake\Console\ConsoleOptionParser::addOption()
 */
class ConsoleInputOption
{
    /**
     * Name of the option
     *
     * @var string
     */
    protected $_name;

    /**
     * Short (1 character) alias for the option.
     *
     * @var string
     */
    protected $_short;

    /**
     * Help text for the option.
     *
     * @var string
     */
    protected $_help;

    /**
     * Is the option a boolean option. Boolean options do not consume a parameter.
     *
     * @var bool
     */
    protected $_boolean;

    /**
     * Default value for the option
     *
     * @var string|bool|null
     */
    protected $_default;

    /**
     * Can the option accept multiple value definition.
     *
     * @var bool
     */
    protected $_multiple;

    /**
     * An array of choices for the option.
     *
     * @var string[]
     */
    protected $_choices;

    /**
     * Make a new Input Option
     *
     * @param string $name The long name of the option, or an array with all the properties.
     * @param string $short The short alias for this option
     * @param string $help The help text for this option
     * @param bool $isBoolean Whether this option is a boolean option. Boolean options don't consume extra tokens
     * @param string|bool|null $default The default value for this option.
     * @param string[] $choices Valid choices for this option.
     * @param bool $multiple Whether this option can accept multiple value definition.
     * @throws \Cake\Console\Exception\ConsoleException
     */
    public function __construct(
        string $name,
        string $short = '',
        string $help = '',
        bool $isBoolean = false,
        $default = null,
        array $choices = [],
        bool $multiple = false
    ) {
        $this->_name = $name;
        $this->_short = $short;
        $this->_help = $help;
        $this->_boolean = $isBoolean;
        $this->_choices = $choices;
        $this->_multiple = $multiple;

        if ($isBoolean) {
            $this->_default = (bool)$default;
        } elseif ($default !== null) {
            $this->_default = (string)$default;
        }

        if (strlen($this->_short) > 1) {
{'fraction_non_alphanumeric': 0.11073226173080046, 'fraction_numerical': 0.001948368241597662, 'mean_word_length': 2.2748538011695905, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 23, 'https://': 10, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4021752', 'n_tokens_mistral': 1712, 'n_tokens_neox': 1666, 'n_words': 582}