final class CascadedChildren

The rows of one child table as a cascade leaves them.

Following a constraint reads the child rows once and then rewrites some and drops others, and the caller needs both the rows to write back and an account of what happened to them. Keeping the two together is what makes the account impossible to disagree with the rows.

Type Aliases§

Row = import from TableDefinition

Methods§

public function replace(int $index, Row $row): void

Writes a row over the one in that position, and records the change.

Parameters

$indexintPosition of the row being written over
$rowRowThe row as it should now be
Test cases 1
Called from 2
Calls 2
public function remove(list<int> $indexes): void

Drops the rows in those positions, and records that they went.

Parameters

$indexeslist<int>Positions of the rows that went
Test cases 2
Called from 1
Calls 2
public function updated(): list<RowChange>

Private surface 3§

Implementation details, listed for orientation only.

private RowSet $rows
private RowSet $deleted
private list<RowChange> $updated = []

Test cases 12§

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

Dedicated tests 6
Other tests reaching this symbol 6

Relations§

Instantiated in 1
Method calls 9
Type declarations 2