func (a *rethinkAPIServer) getMultiple( term gorethink.Term, messageConstructor func() proto.Message, modifiers ...func(gorethink.Term) gorethink.Term, ) ([]interface{}, error) { for _, modifier := range modifiers { term = modifier(term) } term = term.Map(func(row gorethink.Term) interface{} { return row.ToJSON() }) cursor, err := term.Run(a.session) if err != nil { return nil, err } return processMultipleCursor(cursor, messageConstructor) }