normalizeTableName static method
Returns a validated SQLite table identifier for tableName.
Implementation
static String normalizeTableName(String tableName) {
final trimmed = tableName.trim();
if (trimmed.isEmpty) {
throw ArgumentError.value(tableName, 'tableName', 'Must not be empty.');
}
final validIdentifier = RegExp(r'^[A-Za-z_][A-Za-z0-9_]*$');
if (!validIdentifier.hasMatch(trimmed)) {
throw ArgumentError.value(
tableName,
'tableName',
'Must be a valid SQLite identifier containing only letters, numbers, and underscores, and must not start with a number.',
);
}
return trimmed;
}