Flow PHP

Schema implements Countable

Read onlyYes
FinalYes

Interfaces

Countable

Methods

__construct()  : mixed
add()  : Schema
addAfter()  : Schema
Inserts definitions immediately after an existing column.
addBefore()  : Schema
Inserts definitions immediately before an existing column.
addMetadata()  : Schema
Adds metadata to a given definition.
count()  : int
definitions()  : array<string, Definition<string|int, mixed>>
findDefinition()  : null|Definition<string|int, mixed>
fromArray()  : self
get()  : Definition<string|int, mixed>
gracefulRemove()  : self
Gracefully remove entries from schema without throwing an exception if entry does not exist.
insertAt()  : Schema
Inserts definitions at an explicit position. Index 0 prepends, an index equal to the number of definitions appends.
isSame()  : bool
Column order is part of a Schema's identity - two schemas holding the same columns in a different order describe two different row shapes, and a row is stored in Schema order.
keep()  : Schema
makeNullable()  : self
Makes all schema definitions nullable.
matchOrderTo()  : self
Columns present in both schemas are emitted in $authority's order; columns only in $this are appended unchanged. Nothing is added, dropped or widened, and no type is rewritten - a column whose type orders its own elements differently is a different type, not a reorderable one.
merge()  : self
moveAfter()  : Schema
Moves an existing column to immediately after another column, preserving its definition.
moveBefore()  : Schema
Moves an existing column to immediately before another column, preserving its definition.
moveTo()  : Schema
Moves an existing column to an explicit position, preserving its definition.
normalize()  : array<string|int, array<string|int, mixed>>
prepend()  : Schema
Inserts definitions at the beginning of the schema.
references()  : References
remove()  : Schema
rename()  : Schema
reorder()  : Schema
Reorders columns by name. Any columns not listed keep their relative order and are appended.
replace()  : Schema
setMetadata()  : Schema
Overwrites metadata for a given definition.
sort()  : Schema

Methods

__construct()

public __construct(Definition<string|int, mixed> ...$definitions) : mixed
Parameters
$definitions : Definition<string|int, mixed>

addMetadata()

Adds metadata to a given definition.

public addMetadata(string $definition, string $name, array<string|int, mixed>|bool|float|int|string $value) : Schema
Parameters
$definition : string
$name : string
$value : array<string|int, mixed>|bool|float|int|string
Tags
throws
SchemaDefinitionNotFoundException
Return values
Schema

count()

public count() : int
Return values
int

definitions()

public definitions() : array<string, Definition<string|int, mixed>>
Return values
array<string, Definition<string|int, mixed>>

fromArray()

public static fromArray(array<string|int, mixed> $definitions) : self
Parameters
$definitions : array<string|int, mixed>
Return values
self

gracefulRemove()

Gracefully remove entries from schema without throwing an exception if entry does not exist.

public gracefulRemove(string|Reference ...$entries) : self
Parameters
$entries : string|Reference
Return values
self

insertAt()

Inserts definitions at an explicit position. Index 0 prepends, an index equal to the number of definitions appends.

public insertAt(int $index, Definition<string|int, mixed> ...$definitions) : Schema
Parameters
$index : int
$definitions : Definition<string|int, mixed>
Tags
throws
InvalidArgumentException
Return values
Schema

isSame()

Column order is part of a Schema's identity - two schemas holding the same columns in a different order describe two different row shapes, and a row is stored in Schema order.

public isSame(self $schema) : bool
Parameters
$schema : self
Return values
bool

makeNullable()

Makes all schema definitions nullable.

public makeNullable() : self
Return values
self

matchOrderTo()

Columns present in both schemas are emitted in $authority's order; columns only in $this are appended unchanged. Nothing is added, dropped or widened, and no type is rewritten - a column whose type orders its own elements differently is a different type, not a reorderable one.

public matchOrderTo(self $authority) : self
Parameters
$authority : self
Return values
self

merge()

public merge(self $schema) : self
Parameters
$schema : self
Return values
self

normalize()

public normalize() : array<string|int, array<string|int, mixed>>
Return values
array<string|int, array<string|int, mixed>>

prepend()

Inserts definitions at the beginning of the schema.

public prepend(Definition<string|int, mixed> ...$definitions) : Schema
Parameters
$definitions : Definition<string|int, mixed>
Return values
Schema
On this page

Search results