packages/sql-fixture/src/Schema/ColumnDefinition.php
1<?php
2
3declare(strict_types=1);
4
5namespace SqlFixture\Schema;
6
7/**
8 * Describes one SQL column, including its type, default and constraints.
9 */
10final class ColumnDefinition
11{
12 /**
13 * @param list<string>|null $enumValues ENUM/SET values
14 */
15 public function __construct(
16 public readonly string $name,
17 public readonly string $type,
18 public readonly ?int $length = null,
19 public readonly ?int $precision = null,
20 public readonly ?int $scale = null,
21 public readonly bool $nullable = true,
22 public readonly bool $unsigned = false,
23 public readonly mixed $default = null,
24 public readonly bool $autoIncrement = false,
25 public readonly bool $generated = false,
26 public readonly ?array $enumValues = null,
27 ) {
28 }
29}
30