Merge pull request #1 from Aman-Shitta/origin/fix/deprecated-reflect-pointer

Origin/fix/deprecated reflect pointer
This commit is contained in:
Aman 2025-02-11 12:04:00 +05:30 committed by GitHub
commit 6f88ba3ba0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 8 additions and 8 deletions

View File

@ -47,7 +47,7 @@ func SaveBeforeAssociations(create bool) func(db *gorm.DB) {
) )
if !isPtr { if !isPtr {
fieldType = reflect.PtrTo(fieldType) fieldType = reflect.PointerTo(fieldType)
} }
elems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10) elems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10)
@ -126,7 +126,7 @@ func SaveAfterAssociations(create bool) func(db *gorm.DB) {
) )
if !isPtr { if !isPtr {
fieldType = reflect.PtrTo(fieldType) fieldType = reflect.PointerTo(fieldType)
} }
elems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10) elems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10)
@ -195,7 +195,7 @@ func SaveAfterAssociations(create bool) func(db *gorm.DB) {
fieldType := rel.Field.IndirectFieldType.Elem() fieldType := rel.Field.IndirectFieldType.Elem()
isPtr := fieldType.Kind() == reflect.Ptr isPtr := fieldType.Kind() == reflect.Ptr
if !isPtr { if !isPtr {
fieldType = reflect.PtrTo(fieldType) fieldType = reflect.PointerTo(fieldType)
} }
elems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10) elems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10)
identityMap := map[string]bool{} identityMap := map[string]bool{}
@ -268,11 +268,11 @@ func SaveAfterAssociations(create bool) func(db *gorm.DB) {
fieldType := rel.Field.IndirectFieldType.Elem() fieldType := rel.Field.IndirectFieldType.Elem()
isPtr := fieldType.Kind() == reflect.Ptr isPtr := fieldType.Kind() == reflect.Ptr
if !isPtr { if !isPtr {
fieldType = reflect.PtrTo(fieldType) fieldType = reflect.PointerTo(fieldType)
} }
elems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10) elems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10)
distinctElems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10) distinctElems := reflect.MakeSlice(reflect.SliceOf(fieldType), 0, 10)
joins := reflect.MakeSlice(reflect.SliceOf(reflect.PtrTo(rel.JoinTable.ModelType)), 0, 10) joins := reflect.MakeSlice(reflect.SliceOf(reflect.PointerTo(rel.JoinTable.ModelType)), 0, 10)
objs := []reflect.Value{} objs := []reflect.Value{}
appendToJoins := func(obj reflect.Value, elem reflect.Value) { appendToJoins := func(obj reflect.Value, elem reflect.Value) {

View File

@ -15,7 +15,7 @@ func prepareValues(values []interface{}, db *DB, columnTypes []*sql.ColumnType,
if db.Statement.Schema != nil { if db.Statement.Schema != nil {
for idx, name := range columns { for idx, name := range columns {
if field := db.Statement.Schema.LookUpField(name); field != nil { if field := db.Statement.Schema.LookUpField(name); field != nil {
values[idx] = reflect.New(reflect.PtrTo(field.FieldType)).Interface() values[idx] = reflect.New(reflect.PointerTo(field.FieldType)).Interface()
continue continue
} }
values[idx] = new(interface{}) values[idx] = new(interface{})
@ -23,7 +23,7 @@ func prepareValues(values []interface{}, db *DB, columnTypes []*sql.ColumnType,
} else if len(columnTypes) > 0 { } else if len(columnTypes) > 0 {
for idx, columnType := range columnTypes { for idx, columnType := range columnTypes {
if columnType.ScanType() != nil { if columnType.ScanType() != nil {
values[idx] = reflect.New(reflect.PtrTo(columnType.ScanType())).Interface() values[idx] = reflect.New(reflect.PointerTo(columnType.ScanType())).Interface()
} else { } else {
values[idx] = new(interface{}) values[idx] = new(interface{})
} }

View File

@ -996,6 +996,6 @@ func (field *Field) setupNewValuePool() {
} }
if field.NewValuePool == nil { if field.NewValuePool == nil {
field.NewValuePool = poolInitializer(reflect.PtrTo(field.IndirectFieldType)) field.NewValuePool = poolInitializer(reflect.PointerTo(field.IndirectFieldType))
} }
} }