packages/sql-semantics-mysql/resources/models/Choice/KeysOrIndexChoice_63f390bb.php
1<?php
2
3declare(strict_types=1);
4
5namespace SqlSemantics\Statement\Model\MySql\Choice;
6
7/**
8 * The keys_or_index 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\MySql\Choice\KeysOrIndexChoice_63f390bb $value): string => \SqlSemantics\Statement\Writer::render($value);
13 * $write instanceof \Closure // => true
14 */
15enum KeysOrIndexChoice_63f390bb: string implements \SqlSemantics\Statement\Model\MySql\Role\KeysOrIndexForm
16{
17 case UseKeys_3fca5061 = 'KEYS';
18 case UseIndex_ea69fe17 = 'INDEX';
19 case UseIndexes_019e4e72 = 'INDEXES';
20
21 /**
22 * Writes the selected SQL option.
23 */
24 public function write(\SqlSemantics\Statement\Writer $writer): void
25 {
26 foreach (explode(' ', $this->value) as $word) {
27 $writer->append($word);
28 }
29 }
30}
31