2021-08-25 15:34:33 +02:00
|
|
|
package bun
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
|
2021-09-08 21:05:26 +02:00
|
|
|
"github.com/uptrace/bun/internal"
|
2021-08-25 15:34:33 +02:00
|
|
|
"github.com/uptrace/bun/schema"
|
|
|
|
)
|
|
|
|
|
|
|
|
type (
|
|
|
|
Safe = schema.Safe
|
|
|
|
Ident = schema.Ident
|
2023-09-11 15:16:52 +02:00
|
|
|
Name = schema.Name
|
2021-08-25 15:34:33 +02:00
|
|
|
|
2021-09-08 21:05:26 +02:00
|
|
|
NullTime = schema.NullTime
|
|
|
|
BaseModel = schema.BaseModel
|
2021-10-24 13:14:37 +02:00
|
|
|
Query = schema.Query
|
2021-08-25 15:34:33 +02:00
|
|
|
|
2021-10-24 13:14:37 +02:00
|
|
|
BeforeAppendModelHook = schema.BeforeAppendModelHook
|
|
|
|
|
|
|
|
BeforeScanRowHook = schema.BeforeScanRowHook
|
|
|
|
AfterScanRowHook = schema.AfterScanRowHook
|
|
|
|
|
|
|
|
// DEPRECATED. Use BeforeScanRowHook instead.
|
2021-08-25 15:34:33 +02:00
|
|
|
BeforeScanHook = schema.BeforeScanHook
|
2021-10-24 13:14:37 +02:00
|
|
|
// DEPRECATED. Use AfterScanRowHook instead.
|
|
|
|
AfterScanHook = schema.AfterScanHook
|
2021-08-25 15:34:33 +02:00
|
|
|
)
|
|
|
|
|
|
|
|
type BeforeSelectHook interface {
|
|
|
|
BeforeSelect(ctx context.Context, query *SelectQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type AfterSelectHook interface {
|
|
|
|
AfterSelect(ctx context.Context, query *SelectQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type BeforeInsertHook interface {
|
|
|
|
BeforeInsert(ctx context.Context, query *InsertQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type AfterInsertHook interface {
|
|
|
|
AfterInsert(ctx context.Context, query *InsertQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type BeforeUpdateHook interface {
|
|
|
|
BeforeUpdate(ctx context.Context, query *UpdateQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type AfterUpdateHook interface {
|
|
|
|
AfterUpdate(ctx context.Context, query *UpdateQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type BeforeDeleteHook interface {
|
|
|
|
BeforeDelete(ctx context.Context, query *DeleteQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type AfterDeleteHook interface {
|
|
|
|
AfterDelete(ctx context.Context, query *DeleteQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type BeforeCreateTableHook interface {
|
|
|
|
BeforeCreateTable(ctx context.Context, query *CreateTableQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type AfterCreateTableHook interface {
|
|
|
|
AfterCreateTable(ctx context.Context, query *CreateTableQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type BeforeDropTableHook interface {
|
|
|
|
BeforeDropTable(ctx context.Context, query *DropTableQuery) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type AfterDropTableHook interface {
|
|
|
|
AfterDropTable(ctx context.Context, query *DropTableQuery) error
|
|
|
|
}
|
2021-09-08 21:05:26 +02:00
|
|
|
|
|
|
|
// SetLogger overwriters default Bun logger.
|
|
|
|
func SetLogger(logger internal.Logging) {
|
|
|
|
internal.Logger = logger
|
|
|
|
}
|
2021-08-25 15:34:33 +02:00
|
|
|
|
2022-04-24 12:26:22 +02:00
|
|
|
func In(slice interface{}) schema.QueryAppender {
|
|
|
|
return schema.In(slice)
|
2021-08-25 15:34:33 +02:00
|
|
|
}
|
2023-09-11 15:16:52 +02:00
|
|
|
|
|
|
|
func NullZero(value interface{}) schema.QueryAppender {
|
|
|
|
return schema.NullZero(value)
|
|
|
|
}
|