|
|
@@ -30,6 +30,8 @@ type ITxtFix interface {
|
|
|
Rune() []rune
|
|
|
// TrimSuffix -- обрезает суффикс строки
|
|
|
TrimSuffix(any) ITxtFix
|
|
|
+ // Concat -- объединяет строки
|
|
|
+ Concat(msg any, arg ...any) ITxtFix
|
|
|
}
|
|
|
|
|
|
// ITxtMut -- интерфейс к изменяемой внутренней строке.
|
|
|
@@ -81,14 +83,23 @@ func (sf KTxt) Get() ATxt {
|
|
|
return sf.val
|
|
|
}
|
|
|
|
|
|
-// TrimSuffix -- обрезает суффикс строки
|
|
|
+// Concat -- создать новую строку.
|
|
|
+func (sf *KTxt) Concat(msg any, arg ...any) ITxtFix {
|
|
|
+ val := fmt.Sprintf("%v", msg)
|
|
|
+ val = fmt.Sprintf(val, arg...)
|
|
|
+ _msg := string(sf.val) + val
|
|
|
+ sf.val = ATxt(_msg)
|
|
|
+ return sf
|
|
|
+}
|
|
|
+
|
|
|
+// TrimSuffix -- обрезает суффикс строки.
|
|
|
func (sf *KTxt) TrimSuffix(suffix any) ITxtFix {
|
|
|
suf := fmt.Sprintf("%v", suffix)
|
|
|
txt := strings.TrimSuffix(string(sf.val), suf)
|
|
|
return Txt(txt)
|
|
|
}
|
|
|
|
|
|
-// Set -- изменение внутренней строки
|
|
|
+// Set -- изменение внутренней строки.
|
|
|
func (sf *KTxt) Set(msg ATxt) {
|
|
|
sf.val = msg
|
|
|
}
|
|
|
@@ -179,6 +190,15 @@ func (e *KErr) Len() Int {
|
|
|
return Int(len(e.err.Error()))
|
|
|
}
|
|
|
|
|
|
+// Concat -- создать новую строку.
|
|
|
+func (sf *KErr) Concat(msg any, arg ...any) ITxtFix {
|
|
|
+ val := fmt.Sprintf("%v", msg)
|
|
|
+ val = fmt.Sprintf(val, arg...)
|
|
|
+ _msg := sf.err.Error() + val
|
|
|
+ sf.err = fmt.Errorf("%v%v", sf.err.Error(), _msg)
|
|
|
+ return sf
|
|
|
+}
|
|
|
+
|
|
|
// ITimeFix -- метка времени.
|
|
|
// Вывод: "2006-01-02 15:04:05.000 -07 MST".
|
|
|
type ITimeFix ITxtFix
|