<commit_before><?php

namespace Sinergia\Brasil\DateTime;

use Paliari\DateTime\TDateTime;
use Sinergia\Brasil\DateTime\DataExtenso;

class DateTimeBr extends TDateTime
{
    /**
     * Se o time for string ele aceita o formato DateTimeBr (d/m/Y H:i:s |d/m/YTH:i:s), não aceita formato americano (m/d/Y H:i:s)
     *
     * @param string|int          $time
     * @param DateTimeZone|string $tz
     */
    public function __construct($time = null, $tz = null)
    {

        if (is_numeric($time)) {
            $time = date('Y-m-d H:i:s', $time);
        } elseif (is_string($time)) {
            $time = static::strBrToUs($time);

        }

        return parent::__construct($time, $tz);
    }

    /**
     * Utilizado pelo construtor da classe
     *
     * @param $date
     *
     * @return int
     */
    protected function strBrToUs($date)
    {
        $expreg = '/^(0[1-9]|[1-2][0-9]|3[0-1])\/(0[1-9]|1[0-2])\/(\d{4})(T| ){0,1}(([0-1][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])){0,1}$/';
        if (preg_match($expreg, $date, $datebit)) {
            @list($tudo, $dia, $mes, $ano, $tz, $time, $hora, $min, $seg) = $datebit;

            return "$ano-$mes-$dia" . ($hora | $min | $seg ? "$hora:$min:$seg" : "");
        }

        return $date;
    }

    /**
     * Ao fazer um 'echo' na data, a função permite imprimir como se fosse uma string
     * @return string
     */
    public function __toString()
    {
        $format = ($this->hour || $this->minute || $this->second) ? 'd/m/Y H:i:s' : 'd/m/Y';

        return $this->format($format);
    }

    /**
     * Retorna uma string com a data por extenso.
     *
     * @param int $param
     *
     * @return string
     */
    public function dataExtenso($param = 1)
    {
        return DataExtenso::formatar($param, $this->getTimestamp());
    }
}
<commit_msg>Remove 'use' que nao estava sendo usado<commit_after><?php

namespace Sinergia\Brasil\DateTime;

use Paliari\DateTime\TDateTime;

class DateTimeBr extends TDateTime
{
    /**
     * Se o time for string ele aceita o formato DateTimeBr (d/m/Y H:i:s |d/m/YTH:i:s), não aceita formato americano (m/d/Y H:i:s)
     *
     * @param string|int          $time
     * @param DateTimeZone|string $tz
     */
    public function __construct($time = null, $tz = null)
    {

        if (is_numeric($time)) {
            $time = date('Y-m-d H:i:s', $time);
        } elseif (is_string($time)) {
            $time = static::strBrToUs($time);

        }

        return parent::__construct($time, $tz);
    }

    /**
     * Utilizado pelo construtor da classe
     *
     * @param $date
     *
     * @return int
     */
    protected function strBrToUs($date)
    {
        $expreg = '/^(0[1-9]|[1-2][0-9]|3[0-1])\/(0[1-9]|1[0-2])\/(\d{4})(T| ){0,1}(([0-1][0-9]|[2][0-3]):([0-5][0-9]):([0-5][0-9])){0,1}$/';
        if (preg_match($expreg, $date, $datebit)) {
            @list($tudo, $dia, $mes, $ano, $tz, $time, $hora, $min, $seg) = $datebit;

            return "$ano-$mes-$dia" . ($hora | $min | $seg ? "$hora:$min:$seg" : "");
        }

        return $date;
    }

    /**
     * Ao fazer um 'echo' na data, a função permite imprimir como se fosse uma string
     * @return string
     */
    public function __toString()
    {
        $format = ($this->hour || $this->minute || $this->second) ? 'd/m/Y H:i:s' : 'd/m/Y';

        return $this->format($format);
    }

    /**
     * Retorna uma string com a data por extenso.
     *
     * @param int $param
     *
     * @return string
     */
    public function dataExtenso($param = 1)
    {
        return DataExtenso::formatar($param, $this->getTimestamp());
    }
}

{'fraction_non_alphanumeric': 0.1927710843373494, 'fraction_numerical': 0.020262869660460023, 'mean_word_length': 2.165511265164645, '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': '3505060', 'n_tokens_mistral': 1394, 'n_tokens_neox': 1360, 'n_words': 286}