HEX
Server: LiteSpeed
System: Linux sv4.hami.host 5.14.0-611.54.3.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 7 16:31:24 EDT 2026 x86_64
User: armgroup (1008)
PHP: 8.2.32
Disabled: show_source, system, shell_exec, passthru, exec, popen, proc_open, mail, socket_create, socket_create_listen, socket_create_pair, link, dl, openlog, syslog, stream_socket_server, curl_multi_init
Upload Files
File: /home/armgroup/libs/vendor/bensampo/laravel-enum/src/EnumType.php
<?php declare(strict_types=1);

namespace BenSampo\Enum;

use Doctrine\DBAL\Platforms\AbstractPlatform;
use Doctrine\DBAL\Types\Type;

/**
 * This type allows you to call ->change() on an enum column definition when using migrations.
 */
class EnumType extends Type
{
    public const ENUM = 'enum';

    public function getSQLDeclaration(array $column, AbstractPlatform $platform): string
    {
        $values = implode(
            ',',
            array_map(
                fn (string $value): string => "'{$value}'",
                $column['allowed']
            )
        );

        return "ENUM({$values})";
    }

    public function getName(): string
    {
        return self::ENUM;
    }

    public function getMappedDatabaseTypes(AbstractPlatform $platform): array
    {
        return [self::ENUM];
    }
}