diff options
Diffstat (limited to 'vendor/github.com/uptrace/bun/schema/hook.go')
-rw-r--r-- | vendor/github.com/uptrace/bun/schema/hook.go | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/vendor/github.com/uptrace/bun/schema/hook.go b/vendor/github.com/uptrace/bun/schema/hook.go index 5391981d5..624601c9f 100644 --- a/vendor/github.com/uptrace/bun/schema/hook.go +++ b/vendor/github.com/uptrace/bun/schema/hook.go @@ -2,9 +2,32 @@ package schema import ( "context" + "database/sql" "reflect" ) +type Model interface { + ScanRows(ctx context.Context, rows *sql.Rows) (int, error) + Value() interface{} +} + +type Query interface { + QueryAppender + Operation() string + GetModel() Model + GetTableName() string +} + +//------------------------------------------------------------------------------ + +type BeforeAppendModelHook interface { + BeforeAppendModel(ctx context.Context, query Query) error +} + +var beforeAppendModelHookType = reflect.TypeOf((*BeforeAppendModelHook)(nil)).Elem() + +//------------------------------------------------------------------------------ + type BeforeScanHook interface { BeforeScan(context.Context) error } @@ -18,3 +41,19 @@ type AfterScanHook interface { } var afterScanHookType = reflect.TypeOf((*AfterScanHook)(nil)).Elem() + +//------------------------------------------------------------------------------ + +type BeforeScanRowHook interface { + BeforeScanRow(context.Context) error +} + +var beforeScanRowHookType = reflect.TypeOf((*BeforeScanRowHook)(nil)).Elem() + +//------------------------------------------------------------------------------ + +type AfterScanRowHook interface { + AfterScanRow(context.Context) error +} + +var afterScanRowHookType = reflect.TypeOf((*AfterScanRowHook)(nil)).Elem() |