Skip to content

Commit f5ef1da

Browse files
authored
sql/specutil: pass schema to func/proc convert function (#3292)
1 parent c7be08c commit f5ef1da

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

sql/internal/specutil/convert.go

+6-4
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ type (
3030
ConvertIndexFunc func(*sqlspec.Index, *schema.Table) (*schema.Index, error)
3131
ConvertViewIndexFunc func(*sqlspec.Index, *schema.View) (*schema.Index, error)
3232
ConvertCheckFunc func(*sqlspec.Check) (*schema.Check, error)
33+
ConvertFuncFunc func(*sqlspec.Func, *schema.Schema) (*schema.Func, error)
34+
ConvertProcFunc func(*sqlspec.Func, *schema.Schema) (*schema.Proc, error)
3335
ColumnTypeSpecFunc func(schema.Type) (*sqlspec.Column, error)
3436
TableSpecFunc func(*schema.Table) (*sqlspec.Table, error)
3537
TableColumnSpecFunc func(*schema.Column, *schema.Table) (*sqlspec.Column, error)
@@ -58,8 +60,8 @@ type (
5860
ScanFuncs struct {
5961
Table ConvertTableFunc
6062
View ConvertViewFunc
61-
Func func(*sqlspec.Func) (*schema.Func, error)
62-
Proc func(*sqlspec.Func) (*schema.Proc, error)
63+
Func ConvertFuncFunc
64+
Proc ConvertProcFunc
6365
// Triggers add themselves to the relevant tables/views.
6466
Triggers func(*schema.Realm, []*sqlspec.Trigger) error
6567
// Objects add themselves to the realm.
@@ -220,7 +222,7 @@ func Scan(r *schema.Realm, doc *ScanDoc, funcs *ScanFuncs) error {
220222
if !ok {
221223
return fmt.Errorf("schema %q not found for function %q", name, sf.Name)
222224
}
223-
f, err := funcs.Func(sf)
225+
f, err := funcs.Func(sf, s)
224226
if err != nil {
225227
return fmt.Errorf("cannot convert function %q: %w", sf.Name, err)
226228
}
@@ -244,7 +246,7 @@ func Scan(r *schema.Realm, doc *ScanDoc, funcs *ScanFuncs) error {
244246
if !ok {
245247
return fmt.Errorf("schema %q not found for procedure %q", name, sf.Name)
246248
}
247-
f, err := funcs.Proc(sf)
249+
f, err := funcs.Proc(sf, s)
248250
if err != nil {
249251
return fmt.Errorf("cannot convert procedure %q: %w", sf.Name, err)
250252
}

0 commit comments

Comments
 (0)