MCPcopy Create free account
hub / github.com/cockroachdb/cockroachdb-parser / getOverloadTypeChecker

Function getOverloadTypeChecker

pkg/sql/sem/tree/overload.go:785–802  ·  view source on GitHub ↗

getOverloadTypeChecker initialized an overloadTypeChecker from the pool. The returned object should be returned to the pool via its release method.

(o overloadSet, exprs ...Expr)

Source from the content-addressed store, hash-verified

783// getOverloadTypeChecker initialized an overloadTypeChecker from the pool. The
784// returned object should be returned to the pool via its release method.
785func getOverloadTypeChecker(o overloadSet, exprs ...Expr) *overloadTypeChecker {
786 s := overloadTypeCheckerPool.Get().(*overloadTypeChecker)
787 n := o.len()
788 if n > cap(s.overloads) {
789 s.overloads = make([]overloadImpl, n)
790 s.params = make([]TypeList, n)
791 } else {
792 s.overloads = s.overloads[:n]
793 s.params = s.params[:n]
794 }
795 for i := 0; i < n; i++ {
796 got := o.get(i)
797 s.overloads[i] = got
798 s.params[i] = got.params()
799 }
800 s.exprs = append(s.exprs, exprs...)
801 return s
802}
803
804func (s *overloadTypeChecker) release() {
805 for i := range s.overloads {

Callers 4

TypeCheckMethod · 0.85
TypeCheckMethod · 0.85
TypeCheckMethod · 0.85
typeCheckComparisonOpFunction · 0.85

Calls 4

GetMethod · 0.65
lenMethod · 0.65
getMethod · 0.65
paramsMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…