@@ -13,6 +13,8 @@ import Foundation
1313public protocol Language {
1414 init ( options: GenerationOptions )
1515
16+ var options : GenerationOptions { get }
17+
1618 var boolName : String { get }
1719
1820 /// A list of types that have builtin adapters supplied by the library.
@@ -186,8 +188,12 @@ extension Language {
186188 }
187189
188190 private func model( for table: Table ) -> GeneratedModel {
189- GeneratedModel (
190- name: table. name. name. capitalizedFirst,
191+ var name = table. name. name. capitalizedFirst
192+ if let pattern = options. tableNamePattern {
193+ name = String ( format: pattern, name)
194+ }
195+ return GeneratedModel (
196+ name: name,
191197 fields: table. columns. reduce ( into: [ : ] ) { fields, column in
192198 let name = column. key. description
193199 let type = column. value. type
@@ -365,15 +371,18 @@ public struct GenerationOptions: Sendable {
365371 public var databaseName : String
366372 public var imports : [ String ]
367373 public var createDirectoryIfNeeded : Bool
374+ public var tableNamePattern : String ?
368375
369376 public init (
370377 databaseName: String ,
371378 imports: [ String ] = [ ] ,
372- createDirectoryIfNeeded: Bool = true
379+ createDirectoryIfNeeded: Bool = true ,
380+ tableNamePattern: String ? = nil
373381 ) {
374382 self . databaseName = databaseName
375383 self . imports = imports
376384 self . createDirectoryIfNeeded = createDirectoryIfNeeded
385+ self . tableNamePattern = tableNamePattern
377386 }
378387}
379388
0 commit comments