final class InsertTransformer
    implements SqlTransformer

Transforms INSERT statements into SELECT queries that return the inserted rows. Applies CTE shadowing via the SelectTransformer delegate.

Methods§

public function __construct(
    MySqlParser $parser,
    SelectTransformer $selectTransformer,
    ?CastRenderer $castRenderer = null,
)

Configure the dependencies used by this operation.

Parameters

$parserMySqlParser
$selectTransformerSelectTransformer
$castRenderer?CastRenderer
Calls 6
public function transform(string $sql, array $tables): string

{@inheritDoc}

Parameters

$sqlstring
$tablesarray

Returns

string
Test cases 54
Called from 3
Calls 14

Private surface 8§

Implementation details, listed for orientation only.

private MySqlParser $parser
private SelectTransformer $selectTransformer
private CastRenderer $castRenderer
private InsertRowRenderer $rowRenderer
private ShadowIdentityAllocator $identityAllocator
private InsertSelectRenderer $insertSelectRenderer
private MySqlCteShadowComposer $cteComposer
private MySqlNativeUpsertProjector $upsertProjector

Test cases 216§

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

Dedicated tests 54
Other tests reaching this symbol 162

Relations§

Instantiated in 2
Method calls 5
Type declarations 3