| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- // package module_name -- имя модуля
- package module_name
- import (
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/helpers"
- )
- // AModuleName -- уникальное имя модуля.
- type AModuleName defs.ATxt
- // IModuleNameFix -- фиксированное имя модуля.
- type IModuleNameFix interface {
- defs.IString
- // Get -- получить имя модуля
- Get() AModuleName
- // Txt -- внутренне представление имени модуля
- Txt() defs.ITxtFix
- }
- type ModuleName struct {
- name defs.ITxtFix
- }
- // NewModuleName -- создать новое имя модуля.
- func NewModuleName(val AModuleName) *ModuleName {
- helpers.Hassert(val != "", "NewAModuleName(): val is empty")
- sf := &ModuleName{
- name: defs.TxtFix(val),
- }
- _ = IModuleNameFix(sf)
- return sf
- }
- // Txt -- возвращает внутренне представление имени модуля.
- func (sf *ModuleName) Txt() defs.ITxtFix {
- return sf.name
- }
- // String -- строковое представление.
- func (sf *ModuleName) String() string {
- return sf.name.String()
- }
- // Get -- возвращает имя модуля.
- func (sf *ModuleName) Get() AModuleName {
- return AModuleName(sf.name.Get())
- }
- // Byte -- возвращает байты.
- func (sf *ModuleName) Byte() []byte {
- return sf.name.Byte()
- }
- // Rune -- возвращает руны.
- func (sf *ModuleName) Rune() []rune {
- return sf.name.Rune()
- }
- // Len -- длина строки.
- func (sf *ModuleName) Len() defs.Int {
- return sf.name.Len()
- }
|