Add DefaultAlias option to TableSQLBuilder

This commit is contained in:
quirell 2023-08-02 10:03:59 +09:00
parent a2eb15e566
commit 39f9996b34
4 changed files with 55 additions and 1 deletions

View file

@ -59,6 +59,7 @@ type TableSQLBuilder struct {
FileName string
InstanceName string
TypeName string
DefaultAlias string
Column func(columnMetaData metadata.Column) TableSQLBuilderColumn
}
@ -72,6 +73,7 @@ func DefaultTableSQLBuilder(tableMetaData metadata.Table) TableSQLBuilder {
FileName: dbidentifier.ToGoFileName(tableMetaData.Name),
InstanceName: dbidentifier.ToGoIdentifier(tableMetaData.Name),
TypeName: dbidentifier.ToGoIdentifier(tableMetaData.Name) + "Table",
DefaultAlias: "",
Column: DefaultTableSQLBuilderColumn,
}
}
@ -112,6 +114,12 @@ func (tb TableSQLBuilder) UseTypeName(name string) TableSQLBuilder {
return tb
}
// UseDefaultAlias returns new TableSQLBuilder with new default alias set
func (tb TableSQLBuilder) UseDefaultAlias(defaultAlias string) TableSQLBuilder {
tb.DefaultAlias = defaultAlias
return tb
}
// UseColumn returns new TableSQLBuilder with new column template function set
func (tb TableSQLBuilder) UseColumn(columnsFunc func(column metadata.Column) TableSQLBuilderColumn) TableSQLBuilder {
tb.Column = columnsFunc