describe method

  1. @override
String describe()
override

Returns a human-readable description of the operation.

Implementation

@override
String describe() {
  final diff = TableDiff.of(this);
  final parts = [
    for (final entry in renamedColumns.entries)
      'rename column "${entry.key}" to "${entry.value}"',
    for (final column in diff.addedColumns) 'add column "${column.name}"',
    for (final column in diff.droppedColumns) 'drop column "${column.name}"',
    for (final (old, _) in diff.alteredColumns) 'alter column "${old.name}"',
    for (final name in diff.addedChecks.keys) 'add check "$name"',
    for (final name in diff.droppedChecks.keys) 'drop check "$name"',
    for (final name in diff.changedChecks.keys) 'change check "$name"',
    for (final index in diff.addedIndexes) 'add index "${index.name}"',
    for (final index in diff.droppedIndexes) 'drop index "${index.name}"',
  ];
  return 'Alter table "$tableName" (${parts.join(', ')})';
}