MCPcopy Create free account
hub / github.com/araddon/qlbridge / SelectTaskFromTaskPb

Function SelectTaskFromTaskPb

plan/plan.go:331–353  ·  view source on GitHub ↗

SelectTaskFromTaskPb create plan task for SqlSelect from pb.

(pb *PlanPb, ctx *Context, sel *rel.SqlSelect)

Source from the content-addressed store, hash-verified

329
330// SelectTaskFromTaskPb create plan task for SqlSelect from pb.
331func SelectTaskFromTaskPb(pb *PlanPb, ctx *Context, sel *rel.SqlSelect) (Task, error) {
332 switch {
333 case pb.Source != nil:
334 return SourceFromPB(pb, ctx)
335 case pb.Where != nil:
336 return WhereFromPB(pb), nil
337 case pb.Having != nil:
338 return HavingFromPB(pb), nil
339 case pb.GroupBy != nil:
340 return GroupByFromPB(pb), nil
341 case pb.Order != nil:
342 return OrderFromPB(pb), nil
343 case pb.Projection != nil:
344 return ProjectionFromPB(pb, sel), nil
345 case pb.JoinMerge != nil:
346 u.Warnf("JoinMerge not implemented: %T", pb)
347 case pb.JoinKey != nil:
348 u.Warnf("JoinKey not implemented: %T", pb)
349 default:
350 u.Warnf("not implemented: %#v", pb)
351 }
352 return nil, ErrNotImplemented
353}
354func NewPlanBase(isParallel bool) *PlanBase {
355 return &PlanBase{tasks: make([]Task, 0), parallel: isParallel}
356}

Callers 2

SelectFromPBFunction · 0.85
SourceFromPBFunction · 0.85

Calls 6

SourceFromPBFunction · 0.85
WhereFromPBFunction · 0.85
HavingFromPBFunction · 0.85
GroupByFromPBFunction · 0.85
OrderFromPBFunction · 0.85
ProjectionFromPBFunction · 0.85

Tested by

no test coverage detected