// // 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 RiverLeader = newRiverLeaderTable("public", "river_leader", "") type riverLeaderTable struct { postgres.Table // Columns ElectedAt postgres.ColumnTimestampz ExpiresAt postgres.ColumnTimestampz LeaderID postgres.ColumnString Name postgres.ColumnString AllColumns postgres.ColumnList MutableColumns postgres.ColumnList } type RiverLeaderTable struct { riverLeaderTable EXCLUDED riverLeaderTable } // AS creates new RiverLeaderTable with assigned alias func (a RiverLeaderTable) AS(alias string) *RiverLeaderTable { return newRiverLeaderTable(a.SchemaName(), a.TableName(), alias) } // Schema creates new RiverLeaderTable with assigned schema name func (a RiverLeaderTable) FromSchema(schemaName string) *RiverLeaderTable { return newRiverLeaderTable(schemaName, a.TableName(), a.Alias()) } // WithPrefix creates new RiverLeaderTable with assigned table prefix func (a RiverLeaderTable) WithPrefix(prefix string) *RiverLeaderTable { return newRiverLeaderTable(a.SchemaName(), prefix+a.TableName(), a.TableName()) } // WithSuffix creates new RiverLeaderTable with assigned table suffix func (a RiverLeaderTable) WithSuffix(suffix string) *RiverLeaderTable { return newRiverLeaderTable(a.SchemaName(), a.TableName()+suffix, a.TableName()) } func newRiverLeaderTable(schemaName, tableName, alias string) *RiverLeaderTable { return &RiverLeaderTable{ riverLeaderTable: newRiverLeaderTableImpl(schemaName, tableName, alias), EXCLUDED: newRiverLeaderTableImpl("", "excluded", ""), } } func newRiverLeaderTableImpl(schemaName, tableName, alias string) riverLeaderTable { var ( ElectedAtColumn = postgres.TimestampzColumn("elected_at") ExpiresAtColumn = postgres.TimestampzColumn("expires_at") LeaderIDColumn = postgres.StringColumn("leader_id") NameColumn = postgres.StringColumn("name") allColumns = postgres.ColumnList{ElectedAtColumn, ExpiresAtColumn, LeaderIDColumn, NameColumn} mutableColumns = postgres.ColumnList{ElectedAtColumn, ExpiresAtColumn, LeaderIDColumn} ) return riverLeaderTable{ Table: postgres.NewTable(schemaName, tableName, alias, allColumns...), //Columns ElectedAt: ElectedAtColumn, ExpiresAt: ExpiresAtColumn, LeaderID: LeaderIDColumn, Name: NameColumn, AllColumns: allColumns, MutableColumns: mutableColumns, } }