final class DeleteTransformer
    implements SqlTransformer

Transforms DELETE statements into SELECT projections with CTE shadowing.

PostgreSQL differences:

  • USING clause instead of multi-table FROM/JOIN
  • Double-quote identifiers

Methods§

public function __construct(PgSqlParser $parser, SelectTransformer $selectTransformer)

Initializes the collaborators and state used by this delete transformer.

Parameters

$parserPgSqlParser
$selectTransformerSelectTransformer
Calls 1
public function buildProjection(
    string $sql,
    string $targetTable,
    array<int, string> $columns,
): array{sql: string, table: string, tables: array<string, array{alias: string}>}

Private surface 3§

Implementation details, listed for orientation only.

private PgSqlParser $parser
private SelectTransformer $selectTransformer
private PgSqlCteShadowComposer $cteComposer

Test cases 162§

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

Dedicated tests 18
Other tests reaching this symbol 144

Relations§

Instantiated in 1
Method calls 1
Type declarations 2