MCPcopy Create free account
hub / github.com/ent/ent / selector

Method selector

dialect/sql/sqlgraph/graph.go:1066–1099  ·  view source on GitHub ↗
(ctx context.Context)

Source from the content-addressed store, hash-verified

1064}
1065
1066func (q *query) selector(ctx context.Context) (*sql.Selector, error) {
1067 selector := q.builder.
1068 Select().
1069 From(q.builder.Table(q.Node.Table).Schema(q.Node.Schema)).
1070 WithContext(ctx)
1071 if q.From != nil {
1072 selector = q.From
1073 }
1074 selector.Select(selector.Columns(q.Node.Columns...)...)
1075 if order := q.Order; order != nil {
1076 order(selector)
1077 }
1078 if pred := q.Predicate; pred != nil {
1079 pred(selector)
1080 }
1081 if q.Offset != 0 {
1082 // Limit is mandatory for the offset clause. We start
1083 // with default value, and override it below if needed.
1084 selector.Offset(q.Offset).Limit(math.MaxInt32)
1085 }
1086 if q.Limit != 0 {
1087 selector.Limit(q.Limit)
1088 }
1089 if q.Unique {
1090 selector.Distinct()
1091 }
1092 for _, m := range q.Modifiers {
1093 m(selector)
1094 }
1095 if err := selector.Err(); err != nil {
1096 return nil, err
1097 }
1098 return selector, nil
1099}
1100
1101type updater struct {
1102 graph

Callers 2

nodesMethod · 0.95
countMethod · 0.95

Calls 11

orderFunction · 0.85
WithContextMethod · 0.80
DistinctMethod · 0.80
ColumnsMethod · 0.65
LimitMethod · 0.65
OffsetMethod · 0.65
ErrMethod · 0.65
FromMethod · 0.45
SelectMethod · 0.45
SchemaMethod · 0.45
TableMethod · 0.45

Tested by

no test coverage detected