private function GetTableStructuralTraits(Relational\Table $Table, Relational\Table $CurrentTable)
{
$Traits = $Table->GetStructuralTraits();
$CurrentTraits = $CurrentTable->GetStructuralTraits();
$TraitsToAdd = [];
foreach ($Traits as $Trait) {
if (count(array_filter($CurrentTraits, [$Trait, 'Is'])) === 0) {
$TraitsToAdd[] = $Trait;
}
}
$TraitsToRemove = [];
foreach ($CurrentTraits as $CurrentTrait) {
if (count(array_filter($Traits, [$CurrentTrait, 'Is'])) === 0) {
$TraitsToRemove[] = $CurrentTrait;
}
}
return [$TraitsToAdd, $TraitsToRemove];
}