func NewSourceScanner(ctx *plan.Context, p *plan.Source, scanner schema.ConnScanner) *Source {
	s := &Source{
		TaskBase: NewTaskBase(ctx),
		Scanner:  scanner,
		p:        p,
	}
	return s
}
// NewSourceScanner A scanner to read from sub-query data source (join, sub-query, static)
NewSourceScanner A scanner to read from sub-query data source (join, sub-query, static)
// NewSourceScanner A scanner to read from sub - query data source ( join sub - query static )
func NewSourceScanner(ctx *plan.Context, p *plan.Source, scanner schema.ConnScanner) *Source {
	s := &Source{
		TaskBase: NewTaskBase(ctx),
		Scanner:  scanner,
		p:        p,
	}
	return s
}
func NewSourceScanner ( ctx * plan . Context , p * plan . Source , scanner schema . ConnScanner ) * Source { s := & Source { TaskBase : NewTaskBase ( ctx ) , Scanner : scanner , p : p , } return s }
NewSourceScanner A scanner to read from sub-query data source (join, sub-query, static)
NewSourceScanner A scanner to read from sub - query data source ( join sub - query static )