MCPcopy Create free account
hub / github.com/chainloop-dev/chainloop / sqlQuery

Method sqlQuery

app/controlplane/pkg/data/ent/user_query.go:571–604  ·  view source on GitHub ↗
(ctx context.Context)

Source from the content-addressed store, hash-verified

569}
570
571func (_q *UserQuery) sqlQuery(ctx context.Context) *sql.Selector {
572 builder := sql.Dialect(_q.driver.Dialect())
573 t1 := builder.Table(user.Table)
574 columns := _q.ctx.Fields
575 if len(columns) == 0 {
576 columns = user.Columns
577 }
578 selector := builder.Select(t1.Columns(columns...)...).From(t1)
579 if _q.sql != nil {
580 selector = _q.sql
581 selector.Select(selector.Columns(columns...)...)
582 }
583 if _q.ctx.Unique != nil && *_q.ctx.Unique {
584 selector.Distinct()
585 }
586 for _, m := range _q.modifiers {
587 m(selector)
588 }
589 for _, p := range _q.predicates {
590 p(selector)
591 }
592 for _, p := range _q.order {
593 p(selector)
594 }
595 if offset := _q.ctx.Offset; offset != nil {
596 // limit is mandatory for offset clause. We start
597 // with default value, and override it below if needed.
598 selector.Offset(*offset).Limit(math.MaxInt32)
599 }
600 if limit := _q.ctx.Limit; limit != nil {
601 selector.Limit(*limit)
602 }
603 return selector
604}
605
606// ForUpdate locks the selected rows against concurrent updates, and prevent them from being
607// updated, deleted or "selected ... for update" by other sessions, until the transaction is

Callers 4

QueryMembershipsMethod · 0.95
QueryGroupMembershipsMethod · 0.95
sqlScanMethod · 0.45
sqlScanMethod · 0.45

Calls 4

DialectMethod · 0.80
SelectMethod · 0.45
LimitMethod · 0.45
OffsetMethod · 0.45

Tested by

no test coverage detected