type go/types.Tuple
57 uses
go/types (current package)
badlinkname.go#L20: func badlinkname_Checker_infer(*Checker, positioner, []*TypeParam, []Type, *Tuple, []*operand, bool, *error_) []Type
builtins.go#L1021: var result *Tuple
call.go#L114: targs = check.infer(atPos(pos), tparams, targs, params2.(*Tuple), args, reverse, err)
call.go#L407: if t, ok := x.typ.(*Tuple); ok && x.mode != invalid {
call.go#L560: sigParams = tmp.(*Tuple)
call.go#L633: sigParams = check.subst(call.Pos(), sigParams, makeSubstMap(tparams[:n], targs[:n]), nil, check.context()).(*Tuple)
expr.go#L1249: if t, ok := x.typ.(*Tuple); ok && x.mode != invalid {
expr.go#L1324: if t, ok := x.typ.(*Tuple); ok {
infer.go#L35: func (check *Checker) infer(posn positioner, tparams []*TypeParam, targs []Type, params *Tuple, args []*operand, reverse bool, err *error_) (inferred []Type) {
infer.go#L111: params = check.subst(nopos, params, smap, nil, check.context()).(*Tuple)
infer.go#L590: case *Tuple:
iter.go#L99: func (t *Tuple) Variables() iter.Seq[*Var] {
mono.go#L251: tuple := func(tup *Tuple) {
operand.go#L255: case *Tuple:
predicates.go#L316: case *Tuple:
predicates.go#L319: if y, ok := y.(*Tuple); ok {
predicates.go#L377: yparams = check.subst(nopos, y.params, smap, nil, ctxt).(*Tuple)
predicates.go#L378: yresults = check.subst(nopos, y.results, smap, nil, ctxt).(*Tuple)
recording.go#L27: typ = (*Tuple)(nil)
signature.go#L30: params *Tuple // (incoming) parameters from left to right; or nil
signature.go#L31: results *Tuple // (outgoing) results from left to right; or nil
signature.go#L41: func NewSignature(recv *Var, params, results *Tuple, variadic bool) *Signature {
signature.go#L51: func NewSignatureType(recv *Var, recvTypeParams, typeParams []*TypeParam, params, results *Tuple, variadic bool) *Signature {
signature.go#L93: func (s *Signature) Params() *Tuple { return s.params }
signature.go#L96: func (s *Signature) Results() *Tuple { return s.results }
subst.go#L148: case *Tuple:
subst.go#L305: func (subst *subster) tuple(t *Tuple) *Tuple {
subst.go#L308: return &Tuple{vars: vars}
tuple.go#L13: type Tuple struct {
tuple.go#L18: func NewTuple(x ...*Var) *Tuple {
tuple.go#L20: return &Tuple{vars: x}
tuple.go#L26: func (t *Tuple) Len() int {
tuple.go#L34: func (t *Tuple) At(i int) *Var { return t.vars[i] }
tuple.go#L36: func (t *Tuple) Underlying() Type { return t }
tuple.go#L37: func (t *Tuple) String() string { return TypeString(t, nil) }
typestring.go#L191: case *Tuple:
typestring.go#L441: func (w *typeWriter) tuple(tup *Tuple, variadic bool) {
unify.go#L630: case *Tuple:
unify.go#L633: if y, ok := y.(*Tuple); ok {
golang.org/x/exp/apidiff
apidiff.go#L210: dename := func(p *types.Tuple) *types.Tuple {
correspondence.go#L67: case *types.Tuple:
correspondence.go#L68: if new, ok := new.(*types.Tuple); ok {
golang.org/x/tools/go/types/objectpath
objectpath.go#L512: case *types.Tuple:
objectpath.go#L735: tuple, ok := t.(*types.Tuple)
golang.org/x/tools/go/types/typeutil
map.go#L317: case *types.Tuple:
map.go#L324: func (h hasher) hashTuple(tuple *types.Tuple) uint32 {
map.go#L433: case *types.Tuple:
golang.org/x/tools/internal/gcimporter
iexport.go#L1275: func (w *exportWriter) paramList(tup *types.Tuple) {
iimport.go#L1073: func (r *importReader) paramList() *types.Tuple {
ureader_yes.go#L455: func (r *reader) params() *types.Tuple {
golang.org/x/tools/internal/typeparams
free.go#L71: case *types.Tuple:
golang.org/x/tools/internal/typesinternal
element.go#L119: case *types.Tuple:
zerovalue.go#L91: case *types.Tuple:
zerovalue.go#L192: case *types.Tuple:
zerovalue.go#L386: case *types.Tuple: