| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- // package quark_str -- кварк строки.
- package quark_str
- import (
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/quark/quark_base"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/quark/quark_val"
- )
- // QStr -- кварк строки.
- type QStr[M quark_val.CMod] struct {
- *quark_base.QBase[M, string]
- }
- // NewQStr -- создает фиксированную новую кварк строку.
- func NewQStr(val string) *QStr[quark_val.Fix] {
- optMass := quark_base.QBaseOptMass[quark_val.Fix, string](len(val))
- optVal := quark_base.QBaseOptVal(val)
- sf := &QStr[quark_val.Fix]{
- QBase: quark_base.NewQBase(optMass, optVal),
- }
- return sf
- }
- // NewQStrMut -- создает мутабельную новую кварк строку.
- func NewQStrMut(val string) *QStr[quark_val.Mut] {
- optMass := quark_base.QBaseOptMass[quark_val.Mut, string](len(val))
- optVal := quark_base.QBaseOptValMut(val)
- sf := &QStr[quark_val.Mut]{
- QBase: quark_base.NewQBaseMut(optMass, optVal),
- }
- return sf
- }
- // Get -- возвращает хранимое значение.
- //
- //go:fix inline
- func (sf *QStr[M]) Get() string {
- return sf.Val().Get()
- }
- // Set -- устанавливает хранимое значение.
- //
- //go:fix inline
- func Set(sf *QStr[quark_val.Mut], val string) {
- quark_val.Set(sf.Val(), val)
- }
|