lev1.go 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. // package lev1 -- сборка уровня 1.
  2. package lev1
  3. import (
  4. "context"
  5. "time"
  6. "gitp78su.ipnodns.ru/svi/kern/v4/lev0"
  7. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/comp_spec"
  8. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/local_ctx"
  9. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/log_buf"
  10. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/mock_env"
  11. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/safe_bool"
  12. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/safe_bool_react"
  13. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/safe_int"
  14. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/safe_string"
  15. )
  16. type IMockEnv = mock_env.IMockEnv
  17. // MakeEnv -- возвращает новое мок-окружение.
  18. func MakeEnv() IMockEnv {
  19. sf := mock_env.MakeEnv()
  20. return sf
  21. }
  22. // LogBufParam -- параметры ILogBuf.
  23. type LogBufParam = log_buf.LogBufParam
  24. // NewLogBuf -- возвращает новый буферизованный лог.
  25. func NewLogBuf(param *LogBufParam) comp_spec.ILogBuf {
  26. log := log_buf.NewLogBuf(param)
  27. return log
  28. }
  29. // NewSafeString -- возвращает новую потокобезопасную строку.
  30. func NewSafeString() lev0.ISafeString {
  31. str := safe_string.NewSafeString()
  32. return str
  33. }
  34. // NewSafeIntFromStr -- возвращает новое потокобезопасное целое из строки.
  35. func NewSafeIntFromStr(strVal *lev0.LTxt) *lev0.Result[lev0.LInt] {
  36. return safe_int.NewSafeIntFromStr(strVal)
  37. }
  38. // NewSafeIntGetenv -- возвращает новое потокобезопасное целое из окружения.
  39. func NewSafeIntGetenv(env *lev0.LTxt) *lev0.Result[lev0.ISafeInt] {
  40. return safe_int.NewSafeIntGetenv(env)
  41. }
  42. // NewSafeInt -- возвращает новую потокобезопасную целочисленную переменную.
  43. //
  44. func NewSafeInt(val lev0.Int) lev0.ISafeInt {
  45. val_ := safe_int.NewSafeInt(val)
  46. return val_
  47. }
  48. // NewSafeBoolReact -- возвращает новую потокобезопасную реактивную булеву переменную.
  49. func NewSafeBoolReact() lev0.ISafeBoolReact {
  50. val := safe_bool_react.NewSafeBoolReact()
  51. return val
  52. }
  53. // NewSafeBool -- возвращает новый потокобезопасный булевый признак.
  54. func NewSafeBool(val lev0.Bool) lev0.ISafeBool {
  55. sb := safe_bool.NewSafeBool(val)
  56. return sb
  57. }
  58. // SleepMs -- спит миллисекунду.
  59. func SleepMs() {
  60. time.Sleep(time.Millisecond * 1)
  61. }
  62. // NewLocalCtx -- возвращает новый локальный контекст.
  63. func NewLocalCtx(ctx context.Context) comp_spec.ILocalCtx {
  64. lCtx := local_ctx.NewLocalCtx(ctx)
  65. return lCtx
  66. }