RainLab\Builder\Classes\TableMigrationCodeGenerator::generateColumnCode PHP Метод

generateColumnCode() защищенный Метод

protected generateColumnCode ( $columnData, $mode )
    protected function generateColumnCode($columnData, $mode)
    {
        $forceFlagsChange = false;
        switch ($mode) {
            case self::COLUMN_MODE_CREATE:
                $column = $columnData;
                $changeMode = false;
                break;
            case self::COLUMN_MODE_CHANGE:
                $column = $columnData->column;
                $changeMode = true;
                $forceFlagsChange = in_array('type', $columnData->changedProperties);
                break;
            case self::COLUMN_MODE_REVERT:
                $column = $columnData->fromColumn;
                $changeMode = true;
                $forceFlagsChange = in_array('type', $columnData->changedProperties);
                break;
        }
        $result = $this->generateColumnMethodCall($column);
        $result .= $this->generateNullable($column, $changeMode, $columnData, $forceFlagsChange);
        $result .= $this->generateUnsigned($column, $changeMode, $columnData, $forceFlagsChange);
        $result .= $this->generateDefault($column, $changeMode, $columnData, $forceFlagsChange);
        if ($changeMode) {
            $result .= '->change()';
        }
        $result .= ';' . $this->eol;
        return $result;
    }