(vec vector.Any)
| 113 | } |
| 114 | |
| 115 | func (r *recordExpr) spread(vec vector.Any) { |
| 116 | // Ignore non-record values. |
| 117 | switch vec := vector.Under(vec).(type) { |
| 118 | case *vector.Record: |
| 119 | for k, f := range super.TypeRecordOf(vec.Type()).Fields { |
| 120 | r.addOrUpdateField(f.Name, f.Opt, vec.Fields[k]) |
| 121 | } |
| 122 | case *vector.View: |
| 123 | if rec, ok := vec.Any.(*vector.Record); ok { |
| 124 | for k, f := range super.TypeRecordOf(rec.Type()).Fields { |
| 125 | r.addOrUpdateField(f.Name, f.Opt, vector.Pick(rec.Fields[k], vec.Index)) |
| 126 | } |
| 127 | } |
| 128 | } |
| 129 | } |
no test coverage detected