| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- // package def_spec -- внутренние спецификации типы
- package def_spec
- import (
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_let_bool"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_let_int"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_let_time"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_let_txt"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_mut_bool"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_mut_time"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/def_mut_txt"
- "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/result"
- )
- // ATxt -- алиас для внутренней строки.
- type ATxt = def_spec_base.ATxt
- // Int -- алиас для int.
- type Int = def_spec_base.Int
- // LInt -- внутренне неизменяемое целое.
- type LInt=def_let_int.LInt
- // Bool -- внутренее представление логического значения.
- type Bool = def_spec_base.Bool
- // LBool -- неизменяемое булево значение
- type LBool = def_let_bool.LBool
- // LetBool -- возвращает новый неизменяемый Bool
- func LetBool(val def_spec_base.Bool) *LBool {
- return def_let_bool.LetBool(val)
- }
- // MBool -- изменяемое булево значение
- type MBool = def_mut_bool.MBool
- // MutBool -- возвращает новый изменяемый Bool
- func MutBool(val def_spec_base.Bool) *MBool {
- return def_mut_bool.MutBool(val)
- }
- // IString -- интерфейс к стандартной строке.
- type IString = def_spec_fn.IString
- // TxtConstraint -- разрешает строки и любые типы на его основе (например, ATxt).
- type TxtConstraint = def_spec_fn.TxtConstraint
- // LTxt -- внутренний неизменяемый текст.
- type LTxt = def_let_txt.LTxt
- // LetTxt -- создать новую неизменяемую строку.
- func LetTxt[T TxtConstraint](msg T, arg ...any) *LTxt {
- return def_let_txt.LetTxt(msg, arg...)
- }
- // MTxt -- внутренний изменяемый текст.
- type MTxt = def_mut_txt.MTxt
- // MutTxt -- создать новый внутрениий изменяемый текст.
- func MutTxt[T TxtConstraint](msg T, arg ...any) *MTxt {
- return def_mut_txt.MutTxt(msg, arg...)
- }
- // Result — обёртка вокруг результата с возможной ошибкой.
- //
- // Может быть либо только полезное значение, либо только ошибка.
- type Result[T any] = result.Result[T]
- // NewOk -- возвращает успешный Result с значением.
- func NewOk[T any](value T) *Result[T] {
- return result.NewOk(value)
- }
- // NewErr -- возвращает Result с ошибкой.
- func NewErr[T any](err error) *Result[T] {
- return result.NewErr[T](err)
- }
- // Sprintf -- форматирует базовуб строку
- func Sprintf[T def_spec_fn.TxtConstraint](format T, args ...any) ATxt {
- return def_spec_fn.Sprintf(format, args...)
- }
- // Time -- внутренее представление времени.
- type Time = def_spec_base.Time
- // LTime -- внутренее неизменяемое время.
- //
- // Вывод: "2006-01-02 15:04:05.000 -07 MST".
- type LTime = def_let_time.LTime
- // LetTime -- возвращает новое внутреннее неизменяемое время.
- func LetTime[T TxtConstraint](val T) *LTime {
- return def_let_time.LetTime(val)
- }
- // MTime -- внутренее изменяемое время.
- //
- // Вывод: "2006-01-02 15:04:05.000 -07 MST".
- type MTime = def_mut_time.MTime
- // MutTime -- возвращает новое внутреннее изменяемое время
- func MutTime[T TxtConstraint](val T) *MTime {
- return def_mut_time.MutTime(val)
- }
|