ichan.go 531 B

12345678910111213141516171819
  1. package core_spec
  2. import (
  3. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_spec"
  4. )
  5. // IChan -- умный канал.
  6. type IChan[T any] interface {
  7. // Read -- читает сообщение из канала.
  8. Read() def_spec.IResult[T]
  9. // Limit -- лимит канала.
  10. Limit() def_spec.Int
  11. // Len -- количество сообщений в канале.
  12. Len() def_spec.Int
  13. // Close -- закрыть канал.
  14. Close()
  15. // IsClosed -- проверяет закрыт ли канал.
  16. IsClosed() def_spec.Bool
  17. }