type Tuple … // NewTuple returns a new tuple for the given variables. func NewTuple(x ...*Var) *Tuple { … } // Len returns the number variables of tuple t. func (t *Tuple) Len() int { … } // At returns the i'th variable of tuple t. func (t *Tuple) At(i int) *Var { … } func (t *Tuple) Underlying() Type { … } func (t *Tuple) String() string { … }