MCPcopy
hub / github.com/go-gorm/gorm / scanIntoMap

Function scanIntoMap

scan.go:39–52  ·  view source on GitHub ↗
(mapValue map[string]interface{}, values []interface{}, columns []string)

Source from the content-addressed store, hash-verified

37}
38
39func scanIntoMap(mapValue map[string]interface{}, values []interface{}, columns []string) {
40 for idx, column := range columns {
41 if reflectValue := reflect.Indirect(reflect.Indirect(reflect.ValueOf(values[idx]))); reflectValue.IsValid() {
42 mapValue[column] = reflectValue.Interface()
43 if valuer, ok := mapValue[column].(driver.Valuer); ok {
44 mapValue[column], _ = valuer.Value()
45 } else if b, ok := mapValue[column].(sql.RawBytes); ok {
46 mapValue[column] = string(b)
47 }
48 } else {
49 mapValue[column] = nil
50 }
51 }
52}
53
54func (db *DB) scanIntoStruct(rows Rows, reflectValue reflect.Value, values []interface{}, fields []*schema.Field, joinFields [][]*schema.Field) {
55 for idx, field := range fields {

Callers 1

ScanFunction · 0.85

Calls 1

ValueMethod · 0.65

Tested by

no test coverage detected