lev1.go 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. // package lev1 -- сборка уровня 1.
  2. package lev1
  3. import (
  4. "context"
  5. mL0 "gitp78su.ipnodns.ru/svi/kern/v4/lev0"
  6. mKs "gitp78su.ipnodns.ru/svi/kern/v4/lev0/core_spec"
  7. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/helpers"
  8. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/comp_spec"
  9. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/kint"
  10. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/local_ctx"
  11. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/log_buf"
  12. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/mock_env"
  13. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/safe_bool"
  14. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/safe_bool_react"
  15. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/safe_int"
  16. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/safe_string"
  17. )
  18. type IMockEnv = mock_env.IMockEnv
  19. // MakeEnv -- возвращает новое мок-окружение.
  20. func MakeEnv() IMockEnv {
  21. sf := mock_env.MakeEnv()
  22. return sf
  23. }
  24. // LogBufParam -- параметры ILogBuf.
  25. type LogBufParam = log_buf.LogBufParam
  26. // NewLogBuf -- возвращает новый буферизованный лог.
  27. func NewLogBuf(param *LogBufParam) comp_spec.ILogBuf {
  28. log := log_buf.NewLogBuf(param)
  29. return log
  30. }
  31. // NewSafeString -- возвращает новую потокобезопасную строку.
  32. func NewSafeString() mKs.ISafeString {
  33. str := safe_string.NewSafeString()
  34. return str
  35. }
  36. // NewSafeIntFromStr -- возвращает новое потокобезопасное целое из строки.
  37. func NewSafeIntFromStr(strVal string) mL0.IResult[mKs.ISafeInt] {
  38. return safe_int.NewSafeIntFromStr(strVal)
  39. }
  40. // NewSafeIntGetenv -- возвращает новое потокобезопасное целое из окружения.
  41. func NewSafeIntGetenv(env string) mL0.IResult[mKs.ISafeInt] {
  42. return safe_int.NewSafeIntGetenv(env)
  43. }
  44. // NewSafeInt -- возвращает новую потокобезопасную целочисленную переменную.
  45. func NewSafeInt(val int) mKs.ISafeInt {
  46. val_ := safe_int.NewSafeInt(val)
  47. return val_
  48. }
  49. // NewSafeBoolReact -- возвращает новую потокобезопасную реактивную булеву переменную.
  50. func NewSafeBoolReact() mKs.ISafeBoolReact {
  51. val := safe_bool_react.NewSafeBoolReact()
  52. return val
  53. }
  54. // NewSafeBool -- возвращает новый потокобезопасный булевый признак.
  55. func NewSafeBool(val bool) mKs.ISafeBool {
  56. sb := safe_bool.NewSafeBool(val)
  57. return sb
  58. }
  59. // FnHassert -- проверяет с жёстким падением условие.
  60. type FnHassert = helpers.FnHassert
  61. // Hassert -- возвращает ссылку на функцию Hassert.
  62. func Hassert() FnHassert {
  63. return helpers.Hassert
  64. }
  65. // FnAssert -- проверка на правильность утверждения с падением в панику на локальном стенде (soft assert).
  66. type FnAssert = helpers.FnAssert
  67. // Assert -- возвращает ссылку на функцию Assert.
  68. func Assert() FnAssert {
  69. return helpers.Assert
  70. }
  71. // SleepMs -- спит миллисекунду.
  72. func SleepMs() {
  73. helpers.SleepMs()
  74. }
  75. // NewInt -- возвращает новую целочисленную переменную.
  76. func NewInt(val int) mKs.Int {
  77. val_ := kint.NewInt(val)
  78. return val_
  79. }
  80. // NewLocalCtx -- возвращает новый локальный контекст.
  81. func NewLocalCtx(ctx context.Context) comp_spec.ILocalCtx {
  82. lCtx := local_ctx.NewLocalCtx(ctx)
  83. return lCtx
  84. }