scanValues returns the types for scanning values from sql.Rows.
(columns []string)
| 26 | |
| 27 | // scanValues returns the types for scanning values from sql.Rows. |
| 28 | func (*Lock) scanValues(columns []string) ([]any, error) { |
| 29 | values := make([]any, len(columns)) |
| 30 | for i := range columns { |
| 31 | switch columns[i] { |
| 32 | case lock.FieldID: |
| 33 | values[i] = new(sql.NullInt64) |
| 34 | case lock.FieldName: |
| 35 | values[i] = new(sql.NullString) |
| 36 | case lock.FieldCreatedAt: |
| 37 | values[i] = new(sql.NullTime) |
| 38 | default: |
| 39 | values[i] = new(sql.UnknownType) |
| 40 | } |
| 41 | } |
| 42 | return values, nil |
| 43 | } |
| 44 | |
| 45 | // assignValues assigns the values that were returned from sql.Rows (after scanning) |
| 46 | // to the Lock fields. |