[FEATURE] Doctrine: Implement SchemaMigrationService
[Packages/TYPO3.CMS.git] / typo3 / sysext / core / Classes / Database / Schema / Parser / AST / CreateTableStatement.php
1 <?php
2 declare(strict_types=1);
3
4 namespace TYPO3\CMS\Core\Database\Schema\Parser\AST;
5
6 /*
7 * This file is part of the TYPO3 CMS project.
8 *
9 * It is free software; you can redistribute it and/or modify it under
10 * the terms of the GNU General Public License, either version 2
11 * of the License, or any later version.
12 *
13 * For the full copyright and license information, please read the
14 * LICENSE.txt file that was distributed with this source code.
15 *
16 * The TYPO3 project - inspiring people to share!
17 */
18
19 /**
20 * Root node for a CREATE TABLE statement in the syntax tree.
21 */
22 class CreateTableStatement extends AbstractCreateStatement
23 {
24 /**
25 * @var \TYPO3\CMS\Core\Database\Schema\Parser\AST\Identifier
26 */
27 public $tableName;
28
29 /**
30 * @var bool
31 */
32 public $isTemporary = false;
33
34 /**
35 * @var \TYPO3\CMS\Core\Database\Schema\Parser\AST\CreateDefinition
36 */
37 public $createDefinition;
38
39 /**
40 * @var array
41 */
42 public $tableOptions = [];
43
44 /**
45 * CreateTableStatement constructor.
46 *
47 * @param \TYPO3\CMS\Core\Database\Schema\Parser\AST\CreateTableClause $createTableClause
48 * @param \TYPO3\CMS\Core\Database\Schema\Parser\AST\CreateDefinition $createDefinition
49 */
50 public function __construct(CreateTableClause $createTableClause, CreateDefinition $createDefinition)
51 {
52 $this->tableName = $createTableClause->tableName;
53 $this->isTemporary = $createTableClause->isTemporary;
54 $this->createDefinition = $createDefinition;
55 }
56 }