Scan implements the sql.Scanner interface.
(src any)
| 78 | |
| 79 | // Scan implements the sql.Scanner interface. |
| 80 | func (a *BoolArray) Scan(src any) error { |
| 81 | switch src := src.(type) { |
| 82 | case []byte: |
| 83 | return a.scanBytes(src) |
| 84 | case string: |
| 85 | return a.scanBytes([]byte(src)) |
| 86 | case nil: |
| 87 | *a = nil |
| 88 | return nil |
| 89 | } |
| 90 | |
| 91 | return fmt.Errorf("pq: cannot convert %T to BoolArray", src) |
| 92 | } |
| 93 | |
| 94 | func (a *BoolArray) scanBytes(src []byte) error { |
| 95 | elems, err := scanLinearArray(src, []byte{','}, "BoolArray") |