// package lev0 -- сущности уровня 0 package lev0 import ( "time" mKs "gitp78su.ipnodns.ru/svi/kern/v4/lev0/core_spec" "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs" "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_spec" "gitp78su.ipnodns.ru/svi/kern/v4/lev0/helpers" "gitp78su.ipnodns.ru/svi/kern/v4/lev0/option" mRes "gitp78su.ipnodns.ru/svi/kern/v4/lev0/result" ) // ETime -- расширенное время. type ETime = mKs.ITime // EStr -- расширенная строка. type EStr = mKs.EStr // Result — обёртка вокруг результата с возможной ошибкой. type IResult[T any] = def_spec.IResult[T] // NewOk -- возвращает успешный Result с значением. func NewOk[T any](res T) IResult[T] { return mRes.NewOk(res) } // NewErr -- возвращает Result с ошибкой. func NewErr[T any](err defs.IErr) IResult[T] { return mRes.NewErr[T](err) } // WrapErr -- оборачивает существующий Result с ошибкой с новой ошибкой. func WrapErr[T any](res IResult[T], err defs.IErr) IResult[T] { return mRes.WrapErr(res, err) } // IOption — обёртка вокруг результата с возможной пустотой. type IOption[T any] = mKs.IOption[T] // NewSome -- возвращает новый не пустой результат операции. func NewSome[T any](some T) IOption[T] { return option.NewSome(some) } // NewNone -- возвращает новый пустой результат операции. func NewNone[T any]() IOption[T] { return option.NewNone[T]() } // FnIf -- проверяет с жёстким падением условие. type FnIf = helpers.FnIf // SleepMs -- задержка в миллисекундах. func SleepMs() { time.Sleep(time.Millisecond * 1) }