<commit_before><?php

namespace Lechimp\Dicto\Report;

/**
 * Configuration for a concrete report.
 */
class Config {
    /**
     * @var string
     */
    protected $name;

    /**
     * @var string
     */
    protected $class_name;

    /**
     * @var string
     */
    protected $target;

    /**
     * @var string|null
     */
    protected $source_path;

    /**
     * @var array
     */
    protected $config;

    /**
     * @param   string      $name to target the report in commands etc.
     * @param   string      $class_name to be used for report creation
     * @param   string      $target path to the file to be created
     * @param   array       $config for the report class
     * @param   string|null $source_path of the report class if it needs to be loaded
     *                      explicitely
     */
    public function __construct($name, $class_name, $target, array $config, $source_path = null) {
        assert('is_string($name)');
        assert('is_string($class_name)');
        assert('is_string($target)');
        assert('is_string($source_path)');
        $this->name = $name;
        $this->class_name = $class_name;
        $this->target = $target;
        $this->config = $config;
        $this->source_path = $source_path;
    }<commit_msg>made Report\Config::name optional.<commit_after><?php

namespace Lechimp\Dicto\Report;

/**
 * Configuration for a concrete report.
 */
class Config {
    /**
     * @var string|null
     */
    protected $name;

    /**
     * @var string
     */
    protected $class_name;

    /**
     * @var string
     */
    protected $target;

    /**
     * @var string|null
     */
    protected $source_path;

    /**
     * @var array
     */
    protected $config;

    /**
     * @param   string      $class_name to be used for report creation
     * @param   string      $target path to the file to be created
     * @param   array       $config for the report class
     * @param   string|null $name to target the report in commands etc.
     * @param   string|null $source_path of the report class if it needs to be loaded
     *                      explicitely
     */
    public function __construct($class_name, $target, array $config, $name = null, $source_path = null) {
        assert('is_string($name) || is_null($name)');
        assert('is_string($class_name)');
        assert('is_string($target)');
        assert('is_string($source_path)');
        $this->name = $name;
        $this->class_name = $class_name;
        $this->target = $target;
        $this->config = $config;
        $this->source_path = $source_path;
    }
{'fraction_non_alphanumeric': 0.12723809523809523, 'fraction_numerical': 0.0, 'mean_word_length': 2.0393518518518516, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 13, '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': '3180219', 'n_tokens_mistral': 781, 'n_tokens_neox': 769, 'n_words': 210}