MCPcopy Index your code
hub / github.com/ent/ent / scan

Method scan

dialect/sql/sqlgraph/graph.go:1345–1376  ·  view source on GitHub ↗
(rows *sql.Rows)

Source from the content-addressed store, hash-verified

1343}
1344
1345func (u *updater) scan(rows *sql.Rows) error {
1346 defer rows.Close()
1347 columns, err := rows.Columns()
1348 if err != nil {
1349 return err
1350 }
1351 if !rows.Next() {
1352 if err := rows.Err(); err != nil {
1353 return err
1354 }
1355 if len(u.Node.CompositeID) == 2 {
1356 return &NotFoundError{table: u.Node.Table, id: []driver.Value{u.Node.CompositeID[0].Value, u.Node.CompositeID[1].Value}}
1357 }
1358 return &NotFoundError{table: u.Node.Table, id: u.Node.ID.Value}
1359 }
1360 values, err := u.ScanValues(columns)
1361 if err != nil {
1362 return err
1363 }
1364 for i, v := range values {
1365 if _, ok := v.(*sql.UnknownType); ok {
1366 values[i] = sql.ScanTypeOf(rows, i)
1367 }
1368 }
1369 if err := rows.Scan(values...); err != nil {
1370 return fmt.Errorf("failed scanning rows: %w", err)
1371 }
1372 if err := u.Assign(columns, values); err != nil {
1373 return err
1374 }
1375 return nil
1376}
1377
1378func (u *updater) ensureExists(ctx context.Context) error {
1379 exists := u.builder.Select().From(u.builder.Table(u.Node.Table).Schema(u.Node.Schema)).Where(sql.EQ(u.Node.ID.Column, u.Node.ID.Value))

Callers 1

nodeMethod · 0.95

Calls 6

ScanTypeOfFunction · 0.92
CloseMethod · 0.65
ColumnsMethod · 0.65
NextMethod · 0.65
ErrMethod · 0.65
ScanMethod · 0.65

Tested by

no test coverage detected