(call *ast.CallExpr, inType super.Type)
| 728 | } |
| 729 | |
| 730 | func (t *translator) semCall(call *ast.CallExpr, inType super.Type) (sem.Expr, super.Type) { |
| 731 | if e, typ := t.maybeConvertAgg(call, inType); e != nil { |
| 732 | return e, typ |
| 733 | } |
| 734 | args, argTypes := t.exprs(call.Args, inType) |
| 735 | switch f := call.Func.(type) { |
| 736 | case *ast.FuncNameExpr: |
| 737 | return t.semCallByName(call, f.Name, args, argTypes, inType) |
| 738 | case *ast.LambdaExpr: |
| 739 | return t.semCallLambda(f, args, argTypes) |
| 740 | default: |
| 741 | panic(f) |
| 742 | } |
| 743 | } |
| 744 | |
| 745 | func (t *translator) maybeSubquery(n ast.Node, name string, inType super.Type) (*sem.SubqueryExpr, super.Type) { |
| 746 | if seq, typ := t.scope.lookupQuery(t, name); seq != nil { |
no test coverage detected