ilocal_ctx.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. package comp_spec
  2. import (
  3. "context"
  4. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/core_spec"
  5. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/local_ctx/ctx_value"
  6. )
  7. // ICtxValue -- интерфейс к значению локального контекста.
  8. type ICtxValue = ctx_value.ICtxValue
  9. // ILocalCtx -- локальный контекст.
  10. type ILocalCtx interface {
  11. core_spec.IRWMutex
  12. // Get -- извлекает значение из контекста
  13. Get(key string) core_spec.IOption[ICtxValue]
  14. // Del -- удаляет значение из контекста
  15. Del(key string)
  16. // Set -- добавляет значение в контекст
  17. Set(key string, val any, comment string)
  18. // Size -- возвращает размер словаря контекста
  19. Size() int
  20. // SortedList -- возвращает сортированный список объектов контекста
  21. SortedList() []ICtxValue
  22. // Cancel -- отменяет контекст
  23. Cancel()
  24. // Wait -- ожидает отмены контекста
  25. Wait()
  26. // Log -- возвращает буфер сообщений
  27. Log() ILogBuf
  28. // Ctx -- возвращает хранимый контекст
  29. Ctx() context.Context
  30. }