All streams
Search
Write a publication
Pull to refresh
0
0
Artem Kiselev @Kuzuru

User

Send message

Понял вас. Возможно, я поспешил с выводами. Постараюсь чуть более глубже поисследовать эту тему. Спасибо за подробный ответ и понимание!

Зачем это нужно, если в Go уже существуют нативные генераторы, в том числе и обобщенные (Generic)?

Не хочу задеть этим комментарием автора, но, по своей сути, изобретаем велосипед заново?

Или как их ещё называют range functions, которые в своей имплементации ничем не отличаются от представленного в статье примера

Взять то же самое семейство Seq0 из пакета iter:

type Seq[V any] func(yield func(V) bool)

Который можно использовать аналогично:

import "iter"

func GenerateNumbers() iter.Seq[int] {
  return func(yield func(int) bool) {
    someNumbers := []int{1, 2, 3}
    for _, v := range someNumbers {
      if !yield(v) {
          return
      }
    }
  }
}

И использовать их аналогично в for-range

Было бы очень интересно увидеть от Вас вторую часть по второй версии тренажера))
Я очень заинтересован!

ufo, забери меня!

Information

Rating
Does not participate
Works in
Registered
Activity

Specialization

Backend Developer
Senior
Golang
gRPC
Docker
Linux
PostgreSQL
Redis
Apache Kafka
CI/CD
AWS
Kubernetes