| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- // 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 string
- // IModuleNameFix -- фиксированное имя модуля.
- type IModuleNameFix interface {
- // Get -- получить имя модуля
- Get() AModuleName
- // String -- строковое представление имени модуля
- String() string
- // 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.Txt(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()
- }
|