// sortByValue fetches values and sort UIDList. func sortByValue(attr string, ul *task.List, scalar types.Scalar, desc bool) error { values := make([]types.Value, len(ul.Uids)) for i, uid := range ul.Uids { val, err := fetchValue(uid, attr, scalar) if err != nil { return err } values[i] = val } return scalar.Sort(values, ul, desc) }