name: PostgresGrammar class_comment: null dependencies: - name: Connection type: class source: Illuminate\Database\Connection - name: Expression type: class source: Illuminate\Database\Query\Expression - name: Blueprint type: class source: Illuminate\Database\Schema\Blueprint - name: Fluent type: class source: Illuminate\Support\Fluent - name: LogicException type: class source: LogicException properties: - name: transactions visibility: protected comment: '# * If this Grammar supports schema changes wrapped in a transaction. # * # * @var bool' - name: modifiers visibility: protected comment: '# * The possible column modifiers. # * # * @var string[]' - name: serials visibility: protected comment: '# * The columns available as serials. # * # * @var string[]' - name: fluentCommands visibility: protected comment: '# * The commands to be executed outside of create or alter command. # * # * @var string[]' methods: - name: compileCreateDatabase visibility: public parameters: - name: name - name: connection comment: "# * If this Grammar supports schema changes wrapped in a transaction.\n\ # *\n# * @var bool\n# */\n# protected $transactions = true;\n# \n# /**\n# * The\ \ possible column modifiers.\n# *\n# * @var string[]\n# */\n# protected $modifiers\ \ = ['Collate', 'Nullable', 'Default', 'VirtualAs', 'StoredAs', 'GeneratedAs',\ \ 'Increment'];\n# \n# /**\n# * The columns available as serials.\n# *\n# * @var\ \ string[]\n# */\n# protected $serials = ['bigInteger', 'integer', 'mediumInteger',\ \ 'smallInteger', 'tinyInteger'];\n# \n# /**\n# * The commands to be executed\ \ outside of create or alter command.\n# *\n# * @var string[]\n# */\n# protected\ \ $fluentCommands = ['AutoIncrementStartingValues', 'Comment'];\n# \n# /**\n#\ \ * Compile a create database command.\n# *\n# * @param string $name\n# * @param\ \ \\Illuminate\\Database\\Connection $connection\n# * @return string" - name: compileDropDatabaseIfExists visibility: public parameters: - name: name comment: '# * Compile a drop database if exists command. # * # * @param string $name # * @return string' - name: compileTables visibility: public parameters: [] comment: '# * Compile the query to determine the tables. # * # * @return string' - name: compileViews visibility: public parameters: [] comment: '# * Compile the query to determine the views. # * # * @return string' - name: compileTypes visibility: public parameters: [] comment: '# * Compile the query to determine the user-defined types. # * # * @return string' - name: compileColumns visibility: public parameters: - name: schema - name: table comment: '# * Compile the query to determine the columns. # * # * @param string $schema # * @param string $table # * @return string' - name: compileIndexes visibility: public parameters: - name: schema - name: table comment: '# * Compile the query to determine the indexes. # * # * @param string $schema # * @param string $table # * @return string' - name: compileForeignKeys visibility: public parameters: - name: schema - name: table comment: '# * Compile the query to determine the foreign keys. # * # * @param string $schema # * @param string $table # * @return string' - name: compileCreate visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a create table command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileAdd visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a column addition command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileAutoIncrementStartingValues visibility: public parameters: - name: blueprint - name: command comment: '# * Compile the auto-incrementing column starting values. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileChange visibility: public parameters: - name: blueprint - name: command - name: connection comment: '# * Compile a change column command into a series of SQL statements. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @param \Illuminate\Database\Connection $connection # * @return array|string # * # * @throws \RuntimeException' - name: compilePrimary visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a primary key command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileUnique visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a unique key command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileIndex visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a plain index key command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileFulltext visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a fulltext index key command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string # * # * @throws \RuntimeException' - name: compileSpatialIndex visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a spatial index key command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileForeign visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a foreign key command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileDrop visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a drop table command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileDropIfExists visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a drop table (if exists) command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileDropAllTables visibility: public parameters: - name: tables comment: '# * Compile the SQL needed to drop all tables. # * # * @param array $tables # * @return string' - name: compileDropAllViews visibility: public parameters: - name: views comment: '# * Compile the SQL needed to drop all views. # * # * @param array $views # * @return string' - name: compileDropAllTypes visibility: public parameters: - name: types comment: '# * Compile the SQL needed to drop all types. # * # * @param array $types # * @return string' - name: compileDropAllDomains visibility: public parameters: - name: domains comment: '# * Compile the SQL needed to drop all domains. # * # * @param array $domains # * @return string' - name: compileDropColumn visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a drop column command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileDropPrimary visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a drop primary key command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileDropUnique visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a drop unique key command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileDropIndex visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a drop index command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileDropFullText visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a drop fulltext index command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileDropSpatialIndex visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a drop spatial index command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileDropForeign visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a drop foreign key command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileRename visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a rename table command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileRenameIndex visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a rename index command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileEnableForeignKeyConstraints visibility: public parameters: [] comment: '# * Compile the command to enable foreign key constraints. # * # * @return string' - name: compileDisableForeignKeyConstraints visibility: public parameters: [] comment: '# * Compile the command to disable foreign key constraints. # * # * @return string' - name: compileComment visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a comment command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: compileTableComment visibility: public parameters: - name: blueprint - name: command comment: '# * Compile a table comment command. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $command # * @return string' - name: escapeNames visibility: public parameters: - name: names comment: '# * Quote-escape the given tables, views, or types. # * # * @param array $names # * @return array' - name: typeChar visibility: protected parameters: - name: column comment: '# * Create the column definition for a char type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeString visibility: protected parameters: - name: column comment: '# * Create the column definition for a string type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeTinyText visibility: protected parameters: - name: column comment: '# * Create the column definition for a tiny text type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeText visibility: protected parameters: - name: column comment: '# * Create the column definition for a text type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeMediumText visibility: protected parameters: - name: column comment: '# * Create the column definition for a medium text type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeLongText visibility: protected parameters: - name: column comment: '# * Create the column definition for a long text type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeInteger visibility: protected parameters: - name: column comment: '# * Create the column definition for an integer type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeBigInteger visibility: protected parameters: - name: column comment: '# * Create the column definition for a big integer type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeMediumInteger visibility: protected parameters: - name: column comment: '# * Create the column definition for a medium integer type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeTinyInteger visibility: protected parameters: - name: column comment: '# * Create the column definition for a tiny integer type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeSmallInteger visibility: protected parameters: - name: column comment: '# * Create the column definition for a small integer type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeFloat visibility: protected parameters: - name: column comment: '# * Create the column definition for a float type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeDouble visibility: protected parameters: - name: column comment: '# * Create the column definition for a double type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeReal visibility: protected parameters: - name: column comment: '# * Create the column definition for a real type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeDecimal visibility: protected parameters: - name: column comment: '# * Create the column definition for a decimal type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeBoolean visibility: protected parameters: - name: column comment: '# * Create the column definition for a boolean type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeEnum visibility: protected parameters: - name: column comment: '# * Create the column definition for an enumeration type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeJson visibility: protected parameters: - name: column comment: '# * Create the column definition for a json type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeJsonb visibility: protected parameters: - name: column comment: '# * Create the column definition for a jsonb type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeDate visibility: protected parameters: - name: column comment: '# * Create the column definition for a date type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeDateTime visibility: protected parameters: - name: column comment: '# * Create the column definition for a date-time type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeDateTimeTz visibility: protected parameters: - name: column comment: '# * Create the column definition for a date-time (with time zone) type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeTime visibility: protected parameters: - name: column comment: '# * Create the column definition for a time type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeTimeTz visibility: protected parameters: - name: column comment: '# * Create the column definition for a time (with time zone) type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeTimestamp visibility: protected parameters: - name: column comment: '# * Create the column definition for a timestamp type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeTimestampTz visibility: protected parameters: - name: column comment: '# * Create the column definition for a timestamp (with time zone) type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeYear visibility: protected parameters: - name: column comment: '# * Create the column definition for a year type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeBinary visibility: protected parameters: - name: column comment: '# * Create the column definition for a binary type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeUuid visibility: protected parameters: - name: column comment: '# * Create the column definition for a uuid type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeIpAddress visibility: protected parameters: - name: column comment: '# * Create the column definition for an IP address type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeMacAddress visibility: protected parameters: - name: column comment: '# * Create the column definition for a MAC address type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeGeometry visibility: protected parameters: - name: column comment: '# * Create the column definition for a spatial Geometry type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: typeGeography visibility: protected parameters: - name: column comment: '# * Create the column definition for a spatial Geography type. # * # * @param \Illuminate\Support\Fluent $column # * @return string' - name: modifyCollate visibility: protected parameters: - name: blueprint - name: column comment: '# * Get the SQL for a collation column modifier. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $column # * @return string|null' - name: modifyNullable visibility: protected parameters: - name: blueprint - name: column comment: '# * Get the SQL for a nullable column modifier. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $column # * @return string|null' - name: modifyDefault visibility: protected parameters: - name: blueprint - name: column comment: '# * Get the SQL for a default column modifier. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $column # * @return string|null' - name: modifyIncrement visibility: protected parameters: - name: blueprint - name: column comment: '# * Get the SQL for an auto-increment column modifier. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $column # * @return string|null' - name: modifyVirtualAs visibility: protected parameters: - name: blueprint - name: column comment: '# * Get the SQL for a generated virtual column modifier. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $column # * @return string|null' - name: modifyStoredAs visibility: protected parameters: - name: blueprint - name: column comment: '# * Get the SQL for a generated stored column modifier. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $column # * @return string|null' - name: modifyGeneratedAs visibility: protected parameters: - name: blueprint - name: column comment: '# * Get the SQL for an identity column modifier. # * # * @param \Illuminate\Database\Schema\Blueprint $blueprint # * @param \Illuminate\Support\Fluent $column # * @return string|array|null' traits: - Illuminate\Database\Connection - Illuminate\Database\Query\Expression - Illuminate\Database\Schema\Blueprint - Illuminate\Support\Fluent - LogicException interfaces: []