34 private $resourceConnection;
53 $this->nullable = $nullable;
54 $this->
unsigned = $unsigned;
56 $this->comment = $comment;
65 if ($column->getPrecision() === 0 && $column->getScale() === 0) {
68 $type = sprintf(
'%s(%s, %s)', $column->
getType(), $column->getPrecision(), $column->getScale());
73 $this->resourceConnection->getConnection()->quoteIdentifier($column->
getName()),
75 $this->unsigned->toDefinition($column),
76 $this->nullable->toDefinition($column),
77 $column->getDefault() !==
null ?
78 sprintf(
'DEFAULT %s', $column->getDefault()) :
'',
79 $this->comment->toDefinition($column)
89 if (preg_match(
'/^(float|decimal|double)\s*\((\d+)\s*,\s*(\d+)\)/i',
$data[
'definition'], $matches)) {
95 $data[
'precision'] = $matches[2];
96 $data[
'scale'] = $matches[3];
97 $data = $this->nullable->fromDefinition(
$data);
98 $data = $this->
unsigned->fromDefinition($data);
99 }
elseif (preg_match(
'/^decimal\s*\(\s*(\d+)\s*\)/i',
$data[
'definition'], $matches)) {
100 $data[
'precision'] = $matches[1];
__construct(Nullable $nullable, Unsigned $unsigned, Comment $comment, ResourceConnection $resourceConnection)
elseif(isset( $params[ 'redirect_parent']))
fromDefinition(array $data)
toDefinition(ElementInterface $column)