| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222 |
- // package defs -- предметные типы ядра.
- package defs
- import (
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_bool"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_err"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_num"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_spec_base"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_spec_fn"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_time"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_txt"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/safe_bool"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/safe_bool_react"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/safe_mutex"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/safe_num"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/safe_txt"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/option"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/result"
- )
- // Bool -- внутренне представление логического значения.
- type Bool = def_spec_base.Bool
- // LBool -- неизменяемое булево значение.
- type LBool = def_bool.LBool
- // LetBool -- возвращает новое внутреннее логическое значение.
- func LetBool(val Bool) *LBool {
- return def_bool.LetBool(val)
- }
- // MBool -- изменяемое булево значение.
- type MBool = def_bool.MBool
- // MutBool -- возвращает новый изменяемый Bool.
- func MutBool(val Bool) *MBool {
- return def_bool.MutBool(val)
- }
- // Num -- внутренне представление числа.
- type Num = def_spec_base.Num
- // LNum -- внутренне неизменяемое число.
- type LNum = def_num.LNum
- // LetNum -- возвращает новое внутреннее неизменяемое число.
- func LetNum(val Num) *LNum {
- return def_num.LetNum(val)
- }
- // MNum -- внутреннее изменяемое число.
- type MNum = def_num.MNum
- // NumConstraint -- ограничение внутреннего целого.
- type NumConstraint = def_spec_base.NumConstraint
- // MutNum -- возвращает новое внутреннее изменяемое число.
- func MutNum[T NumConstraint](val T) *MNum {
- return def_num.MutNum(val)
- }
- // Txt -- внутренее представление текста.
- type Txt = def_spec_base.Txt
- // TxtConstraint -- разрешает строки и любые типы на его основе (например, ATxt).
- type TxtConstraint = def_spec_fn.TxtConstraint
- // LTxt -- внутренний неизменяемый текст.
- type LTxt = def_txt.LTxt
- // LetTxt -- создать новую неизменяемый текст.
- func LetTxt[T TxtConstraint](msg T, arg ...any) *LTxt {
- return def_txt.LetTxt(msg, arg...)
- }
- // MTxt -- внутренний изменяемый текст.
- type MTxt = def_txt.MTxt
- // MutTxt -- создать новый внутрениий изменяемый текст.
- func MutTxt[T TxtConstraint](msg T, arg ...any) *MTxt {
- return def_txt.MutTxt(msg, arg...)
- }
- // LErr -- внутренняя неизменяемая ошибка.
- type LErr = def_err.LErr
- // LetErr -- создать новую обёрнутую ошибку.
- func LetErr[T TxtConstraint](msg T, arg ...any) *LErr {
- return def_err.LetErr(msg, arg...)
- }
- // BucketName -- имя сущности.
- type BucketName *LTxt
- // Result -- результат выполнения.
- type Result[T any] = result.Result[T]
- // ResOk -- возвращает успешный Result с значением.
- func ResOk[T any](val T) *Result[T] {
- return result.ResOk(val)
- }
- // ResErr -- возвращает Result с ошибкой.
- func ResErr[T any](err error) *Result[T] {
- return result.ResErr[T](err)
- }
- // WrapErr -- оборачивает существующий Result с ошибкой с новой ошибкой.
- func WrapErr[T any](res *Result[T], err error) *Result[T] {
- return result.WrapErr(res, err)
- }
- // Option -- опциональный результат.
- type Option[T any] = option.Option[T]
- // NewSome -- создать новый опциональный результат.
- func NewSome[T any](val T) *Option[T] {
- return option.NewSome(val)
- }
- // NewNone -- создать новый опциональный результат.
- func NewNone[T any]() *Option[T] {
- return option.NewNone[T]()
- }
- // Time -- внутренее представление времени.
- type Time = def_spec_base.Time
- // LTime -- внутренее неизменяемое время.
- //
- // Вывод: "2006-01-02 15:04:05.000 -07 MST".
- type LTime = def_time.LTime
- // LetTimeAuto -- возвращает новое автоматическое внутреннее неизменяемое время.
- //
- // Вывод: "2006-01-02 15:04:05.000 -07 MST".
- func LetTimeAuto() *LTime {
- return def_time.LetTimeAuto()
- }
- // MTime -- внутренее изменяемое время.
- //
- // Вывод: "2006-01-02 15:04:05.000 -07 MST".
- type MTime = def_time.MTime
- // MutTimeAuto -- возвращает новое автоматическое внутреннее изменяемое время.
- //
- // Вывод: "2006-01-02 15:04:05.000 -07 MST".
- func MutTimeAuto() *MTime {
- return def_time.MutTimeAuto()
- }
- // Sprintf -- форматирует строку с помощью fmt.Sprintf.
- func Sprintf[T TxtConstraint](val T, arg ...any) Txt {
- return def_spec_fn.Sprintf(val, arg...)
- }
- // Atoi -- возвращает возможное число.
- func Atoi(val Txt) *Result[Num] {
- return def_spec_fn.Atoi(val)
- }
- // MSafeNum -- потокобезопасное число.
- type MSafeNum = safe_num.MSafeNum
- // MutSafeNumFromTxt -- возвращает новое потокобезопасное число из текста.
- func MutSafeNumFromTxt[T TxtConstraint](strVal T) *Result[*MSafeNum] {
- return safe_num.MutSafeNumFromTxt(strVal)
- }
- // MutSafeNumFromEnv -- возвращает новое потокобезопасное число из окружения.
- func MutSafeNumFromEnv(env *LTxt) *Result[*MSafeNum] {
- return safe_num.MutSafeNumFromEnv(env)
- }
- // MutSafeNum -- возвращает новое потокобезопасное число.
- func MutSafeNum(val Num) *MSafeNum {
- val_ := safe_num.MutSafeNum(val)
- return val_
- }
- // MSafeTxt -- потокобезопасный внутренний текст.
- type MSafeTxt = safe_txt.MSafeTxt
- // MutSafeTxt -- возвращает новый потокобезопасный текст.
- func MutSafeTxt[T TxtConstraint](txt T, arg ...any) *MSafeTxt {
- str := safe_txt.MutSafeTxt(txt, arg...)
- return str
- }
- // MutSafeTxt -- возвращает новый потокобезопасный текст.
- func MutSafeTxtFromEnv(env *LTxt) *Result[*MSafeTxt] {
- str := safe_txt.MutSafeTxtFromEnv(env)
- return str
- }
- // MSafeBool -- потокобезопасный булевый признак.
- type MSafeBool = safe_bool.MSafeBool
- // MutSafeBool -- возвращает новый потокобезопасный булевый признак.
- func MutSafeBool(val Bool) *MSafeBool {
- sf := safe_bool.MutSafeBool(val)
- return sf
- }
- // MSafeBoolReact -- потокобезопасный булевый признак с реакцией на своё изменение.
- type MSafeBoolReact = safe_bool_react.MSafeBoolReact
- // MutSafeBoolReact -- возвращает новую потокобезопасную реактивную булеву переменную.
- func MutSafeBoolReact() *MSafeBoolReact {
- val := safe_bool_react.MutSafeBoolReact()
- return val
- }
- // MSafeMutex -- безопасный мьютекс.
- type MSafeMutex = safe_mutex.MSafeMutex
- // MutSafeMutex -- возвращает новый потокобезопасный мьютекс.
- func MutSafeMutex() *MSafeMutex {
- sf := safe_mutex.MutSafeMutex()
- return sf
- }
|