TableSnapshot.fromMap constructor
Creates a table snapshot from a map.
Implementation
factory TableSnapshot.fromMap(String name, Map<String, dynamic> data) {
_checkKeys(
data,
context: 'table "$name"',
requiredKeys: const {'name', 'columns'},
optionalKeys: const {'checks'},
);
final columnsData = data['columns'] as Map<String, dynamic>;
return TableSnapshot(
name: name,
columns: columnsData.map(
(key, value) => MapEntry(
key,
ColumnSnapshot.fromMap(key, value as Map<String, dynamic>),
),
),
// Materialize (not a lazy `.cast` view): these end up in DiffOperation
// maps sent over an isolate SendPort, which rejects CastMap instances.
checks: Map<String, String>.from(
data['checks'] as Map<String, dynamic>? ?? {},
),
);
}