<commit_before><?php

abstract class CM_Component_Abstract extends CM_View_Abstract {

    /** @var string */
    protected $_tplName = 'default.tpl';

    /**
     * @param CM_Params|array|null $params
     */
    public function __construct($params = null) {
        if (is_null($params)) {
            $params = CM_Params::factory();
        }
        if (is_array($params)) {
            $params = CM_Params::factory($params);
        }
        $this->_params = $params;
    }

    /**
     * Checks if a component can be accessed by the currently set user
     *
     * Access for everyone is default. Should be overloaded by every component
     *
     * @param CM_RenderEnvironment $environment
     * @return mixed
     */
    abstract public function checkAccessible(CM_RenderEnvironment $environment);

    /**
     * @param CM_RenderEnvironment        $environment
     * @param CM_ViewResponse             $viewResponse
     * @param CM_ComponentFrontendHandler $frontendHandler
     * @internal param \CM_Params $params
     */<commit_msg>Remove tplName from Component itself<commit_after><?php

abstract class CM_Component_Abstract extends CM_View_Abstract {

    /**
     * @param CM_Params|array|null $params
     */
    public function __construct($params = null) {
        if (is_null($params)) {
            $params = CM_Params::factory();
        }
        if (is_array($params)) {
            $params = CM_Params::factory($params);
        }
        $this->_params = $params;
    }

    /**
     * Checks if a component can be accessed by the currently set user
     *
     * Access for everyone is default. Should be overloaded by every component
     *
     * @param CM_RenderEnvironment $environment
     * @return mixed
     */
    abstract public function checkAccessible(CM_RenderEnvironment $environment);

    /**
     * @param CM_RenderEnvironment        $environment
     * @param CM_ViewResponse             $viewResponse
     * @param CM_ComponentFrontendHandler $frontendHandler
     * @internal param \CM_Params $params
     */
{'fraction_non_alphanumeric': 0.09699321047526673, 'fraction_numerical': 0.0, 'mean_word_length': 2.455611390284757, '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': '2116194', 'n_tokens_mistral': 547, 'n_tokens_neox': 543, 'n_words': 147}