api/laravel/Database/Schema/Grammars/PostgresGrammar.yaml
2024-09-26 02:03:21 -07:00

1013 lines
22 KiB
YAML

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: []