lev0.go 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. // package lev0 -- сущности уровня 0
  2. package lev0
  3. import (
  4. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs"
  5. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/helpers"
  6. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/result"
  7. )
  8. // ATxt -- внутренее представление текста.
  9. type ATxt = defs.ATxt
  10. // Bool -- внутренее представление логического значения.
  11. type Bool = defs.Bool
  12. // Time -- внутреннее время.
  13. type Time = defs.Time
  14. // LTime -- внутренее неизменяемое время.
  15. //
  16. // Вывод: "2006-01-02 15:04:05.000 -07 MST".
  17. type LTime = defs.LTime
  18. // LetTimeAuto -- возвращает новое автоматическое внутреннее неизменяемое время.
  19. //
  20. // Вывод: "2006-01-02 15:04:05.000 -07 MST".
  21. func LetTimeAuto() *LTime {
  22. return defs.LetTimeAuto()
  23. }
  24. // Int -- внутренне представление числа.
  25. type Int = defs.Int
  26. // LInt -- внутренне неизменяемое целое.
  27. type LInt = defs.LInt
  28. // TxtConstraint -- разрешает строки и любые типы на его основе (например, ATxt).
  29. type TxtConstraint = defs.TxtConstraint
  30. // LTxt -- внутренний неизменяемый текст.
  31. type LTxt = defs.LTxt
  32. // LetTxt -- создать новую неизменяемую строку.
  33. func LetTxt[T TxtConstraint](msgFormat T, arg ...any) *LTxt {
  34. return defs.LetTxt(msgFormat, arg...)
  35. }
  36. // Result — обёртка вокруг результата с возможной ошибкой.
  37. type Result[T any] = result.Result[T]
  38. // NewOk -- возвращает успешный Result с значением.
  39. func NewOk[T any](res T) *Result[T] {
  40. return result.NewOk(res)
  41. }
  42. // NewErr -- возвращает Result с ошибкой.
  43. func NewErr[T any](err error) *Result[T] {
  44. return result.NewErr[T](err)
  45. }
  46. // WrapErr -- оборачивает существующий Result с ошибкой с новой ошибкой.
  47. func WrapErr[T any](res *Result[T], err error) *Result[T] {
  48. return result.WrapErr(res, err)
  49. }
  50. // Option — обёртка вокруг результата с возможной пустотой.
  51. type Option[T any] = defs.Option[T]
  52. // NewSome -- возвращает новый не пустой результат операции.
  53. func NewSome[T any](some T) *Option[T] {
  54. return defs.NewSome(some)
  55. }
  56. // NewNone -- возвращает новый пустой результат операции.
  57. func NewNone[T any]() *Option[T] {
  58. return defs.NewNone[T]()
  59. }
  60. // SleepMs -- задержка в миллисекундах.
  61. func SleepMs() {
  62. helpers.SleepMs()
  63. }