lev1.go 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  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_txt"
  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. // MSafeTxt -- потокобезопасный внутренний текст.
  30. type MSafeTxt=safe_txt.MSafeTxt
  31. // MutSafeTxt -- возвращает новый потокобезопасный текст.
  32. func MutSafeTxt[T lev0.TxtConstraint](txt T, arg ...any) *MSafeTxt {
  33. str := safe_txt.MutSafeTxt(txt, arg...)
  34. return str
  35. }
  36. // MSafeInt -- потокобезопасное целое.
  37. type MSafeInt = safe_int.MSafeInt
  38. // MutSafeIntFromStr -- возвращает новое потокобезопасное целое из строки.
  39. func MutSafeIntFromStr(strVal *lev0.LTxt) *lev0.Result[*MSafeInt] {
  40. return safe_int.MutSafeIntFromStr(strVal)
  41. }
  42. // MutSafeIntGetenv -- возвращает новое потокобезопасное целое из окружения.
  43. func MutSafeIntGetenv(env *lev0.LTxt) *lev0.Result[*MSafeInt] {
  44. return safe_int.MutSafeIntGetenv(env)
  45. }
  46. // MutSafeInt -- возвращает новую потокобезопасную целочисленную переменную.
  47. func MutSafeInt(val lev0.Int) *MSafeInt {
  48. val_ := safe_int.MutSafeInt(val)
  49. return val_
  50. }
  51. // NewSafeBoolReact -- возвращает новую потокобезопасную реактивную булеву переменную.
  52. func NewSafeBoolReact() lev0.ISafeBoolReact {
  53. val := safe_bool_react.NewSafeBoolReact()
  54. return val
  55. }
  56. // NewSafeBool -- возвращает новый потокобезопасный булевый признак.
  57. func NewSafeBool(val lev0.Bool) lev0.ISafeBool {
  58. sb := safe_bool.NewSafeBool(val)
  59. return sb
  60. }
  61. // SleepMs -- спит миллисекунду.
  62. func SleepMs() {
  63. time.Sleep(time.Millisecond * 1)
  64. }
  65. // NewLocalCtx -- возвращает новый локальный контекст.
  66. func NewLocalCtx(ctx context.Context) comp_spec.ILocalCtx {
  67. lCtx := local_ctx.NewLocalCtx(ctx)
  68. return lCtx
  69. }