final class RowActions
Restricted visibility: declared "@visibility root". Code outside that scope must not name this declaration.

Row actions operations for PostgreSQL merge.

Methods§

public function __construct(
    InsertSelectRenderer $insertSelectRenderer,
    PgSqlIdentifierQuoter $quoter,
    InsertRowRenderer $rowRenderer,
)

Supplies the dependencies used by this RowActions.

Parameters

$insertSelectRendererInsertSelectRenderer
$quoterPgSqlIdentifierQuoter
$rowRendererInsertRowRenderer
public function unchangedRows(
    PgSqlMergeStatement $statement,
    list<string> $columns,
    list<string> $effectiveConditions,
): string
public function updatedRows(
    string $sql,
    PgSqlMergeStatement $statement,
    PgSqlMergeClause $clause,
    list<string> $columns,
    array<string, string> $defaults,
    string $effectiveCondition,
): string

Parameters

$sqlstring
$statementPgSqlMergeStatement
$clausePgSqlMergeClause
$columnslist<string>
$defaultsarray<string, string>
$effectiveConditionstring

Returns

string
Test cases 1
Called from 1
Calls 6
public function insertedRows<T>(
    string $sql,
    PgSqlMergeStatement $statement,
    PgSqlMergeClause $clause,
    list<string> $columns,
    array<string, string> $defaults,
    array<string, IdentityGenerationStrategy> $identityStrategies,
    array<int, array<string, T>> $existingRows,
    string $effectiveCondition,
): string

Parameters

$sqlstring
$statementPgSqlMergeStatement
$clausePgSqlMergeClause
$columnslist<string>
$defaultsarray<string, string>
$identityStrategiesarray<string, IdentityGenerationStrategy>
$existingRowsarray<int, array<string, T>>
$effectiveConditionstring

Returns

string
Test cases 1
Called from 1
Calls 11
public function modifiedRows<T>(
    string $sql,
    PgSqlMergeStatement $statement,
    list<string> $columns,
    array<string, string> $defaults,
    array<string, IdentityGenerationStrategy> $identityStrategies,
    array<int, array<string, T>> $existingRows,
    array<int, string> $effectiveConditions,
): list<string>

Projects UPDATE and INSERT branches using their ordered effective conditions.

Parameters

$sqlstring
$statementPgSqlMergeStatement
$columnslist<string>
$defaultsarray<string, string>
$identityStrategiesarray<string, IdentityGenerationStrategy>
$existingRowsarray<int, array<string, T>>
$effectiveConditionsarray<int, string>

Returns

list<string>
Test cases 1
Called from 1
Calls 4

Private surface 3§

Implementation details, listed for orientation only.

private InsertSelectRenderer $insertSelectRenderer
private PgSqlIdentifierQuoter $quoter
private InsertRowRenderer $rowRenderer

Test cases 9§

Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.

Dedicated tests 4
Other tests reaching this symbol 5

Relations§

Instantiated in 2
Method calls 2