79 lines
2.0 KiB
Go

//
// Code generated by go-jet DO NOT EDIT.
//
// WARNING: Changes to this file may cause incorrect behavior
// and will be lost if the code is regenerated
//
package table
import (
"github.com/go-jet/jet/v2/postgres"
)
var Agents = newAgentsTable("agents", "agents", "")
type agentsTable struct {
postgres.Table
// Columns
ID postgres.ColumnString
Name postgres.ColumnString
AllColumns postgres.ColumnList
MutableColumns postgres.ColumnList
}
type AgentsTable struct {
agentsTable
EXCLUDED agentsTable
}
// AS creates new AgentsTable with assigned alias
func (a AgentsTable) AS(alias string) *AgentsTable {
return newAgentsTable(a.SchemaName(), a.TableName(), alias)
}
// Schema creates new AgentsTable with assigned schema name
func (a AgentsTable) FromSchema(schemaName string) *AgentsTable {
return newAgentsTable(schemaName, a.TableName(), a.Alias())
}
// WithPrefix creates new AgentsTable with assigned table prefix
func (a AgentsTable) WithPrefix(prefix string) *AgentsTable {
return newAgentsTable(a.SchemaName(), prefix+a.TableName(), a.TableName())
}
// WithSuffix creates new AgentsTable with assigned table suffix
func (a AgentsTable) WithSuffix(suffix string) *AgentsTable {
return newAgentsTable(a.SchemaName(), a.TableName()+suffix, a.TableName())
}
func newAgentsTable(schemaName, tableName, alias string) *AgentsTable {
return &AgentsTable{
agentsTable: newAgentsTableImpl(schemaName, tableName, alias),
EXCLUDED: newAgentsTableImpl("", "excluded", ""),
}
}
func newAgentsTableImpl(schemaName, tableName, alias string) agentsTable {
var (
IDColumn = postgres.StringColumn("id")
NameColumn = postgres.StringColumn("name")
allColumns = postgres.ColumnList{IDColumn, NameColumn}
mutableColumns = postgres.ColumnList{NameColumn}
)
return agentsTable{
Table: postgres.NewTable(schemaName, tableName, alias, allColumns...),
//Columns
ID: IDColumn,
Name: NameColumn,
AllColumns: allColumns,
MutableColumns: mutableColumns,
}
}