packages/sql-semantics-postgres/resources/models/Choice/IsoLevelChoice_5c144ac4.php

1<?php
2
3declare(strict_types=1);
4
5namespace SqlSemantics\Statement\Model\PostgreSql\Choice;
6
7/**
8 * The iso_level SQL value; generated by bin/build-models.php.
9 *
10 * @visibility public
11 * @example Accept a structured SQL value
12 *     $write = static fn (\SqlSemantics\Statement\Model\PostgreSql\Choice\IsoLevelChoice_5c144ac4 $value): string => \SqlSemantics\Statement\Writer::render($value);
13 *     $write instanceof \Closure // => true
14 */
15enum IsoLevelChoice_5c144ac4: string implements \SqlSemantics\Statement\Model\PostgreSql\Role\IsoLevelForm
16{
17    case UseReadUncommitted_4875265c = 'READ UNCOMMITTED';
18    case UseReadCommitted_c09d6186 = 'READ COMMITTED';
19    case UseRepeatableRead_f5f5acc3 = 'REPEATABLE READ';
20    case UseSerializable_7dc421f3 = 'SERIALIZABLE';
21
22    /**
23     * Writes the selected SQL option.
24     */
25    public function write(\SqlSemantics\Statement\Writer $writer): void
26    {
27        foreach (explode(' ', $this->value) as $word) {
28            $writer->append($word);
29        }
30    }
31}
32