| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- // package defs -- предметные типы ядра.
- package defs
- import "fmt"
- // "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/stream_name"
- // Int -- алиас для int.
- type Int int
- // Int -- возвращает целое число по требованию.
- func (i Int) Int() int {
- return int(i)
- }
- // IStr --интерфейс к гибкой строке
- type IStr interface {
- // Str -- возвращает внутреннюю строку
- Str() Str
- // String -- возвращает прямую строку
- String()string
- }
- // Str -- алиас для string.
- type Str string
- // NewStr -- создать новую строку.
- func NewStr(msg string, arg ...any) IStr {
- return Str(fmt.Sprintf(msg, arg...))
- }
- // Str -- возвращает внутреннюю строку.
- func (s Str) Str() Str {
- return s
- }
- // String -- возвращает строку по требованию.
- func (s Str) String() string {
- return string(s)
- }
- // IErr -- алиас для error.
- type IErr interface {
- error
- IStr
- }
- // Err -- обёрнутая ошибка.
- type Err struct {
- err error
- }
- // NewErr -- создать новую обёрнутую ошибку.
- func NewErr(msg Str, arg ...any) IErr {
- err := fmt.Errorf(msg.String(), arg...)
- return &Err{err}
- }
- // WrapErr -- возвращает обёрнутую ошибку.
- func WrapErr(err error) IErr {
- return &Err{err}
- }
- // String -- возвращает строковое представление ошибки.
- func (e *Err) String() string {
- return e.err.Error()
- }
- // Error -- возвращает хранимую ошибку.
- func (e *Err) Error() string {
- return e.err.Error()
- }
- // Str -- возвращает строку по требованию для ошибки.
- func (e *Err) Str() Str {
- return Str(e.err.Error())
- }
- // Time -- метка времени.
- // Вывод: "2006-01-02 15:04:05.000 -07 MST".
- type Time Str
- // BucketName -- имя сущности.
- type BucketName Str
- // StreamName -- имя потока для ожидания.
- //
- //go:fix inline
- // type StreamName = stream_name.AStreamName
- // NewStreamName -- создать новое имя потока.
- //
- //go:fix inline
- // func NewStreamName(val Str) *stream_name.AStreamName {
- // return stream_name.NewAStreamName(val)
- // }
|