| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- // package module_name -- имя модуля
- package module_name
- import (
- "gitp78su.ipnodns.ru/svi/kern/v4/d0"
- )
- // AModuleName -- уникальное имя модуля.
- type AModuleName d0.Txt
- // Имя модуля
- type moduleName struct {
- name AModuleName
- }
- // LModuleName -- фиксированное имя модуля.
- type LModuleName struct {
- moduleName
- }
- // MModuleName -- изменяемое имя модуля.
- type MModuleName struct {
- LModuleName
- }
- // LetModuleName -- создать фиксированнанное имя модуля.
- func LetModuleName(val AModuleName) *LModuleName {
- sf := &LModuleName{
- name: val,
- }
- return sf
- }
- // MutModuleName -- создать новое имзменяемое имя модуля.
- func MutModuleName(val AModuleName) *MModuleName {
- d0.If(val == "").Hassert("NewAModuleName(): val is empty")
- sf := &MModuleName{
- LModuleName: *LetModuleName(val),
- }
- return sf
- }
- // String -- строковое представление.
- func (sf moduleName) String() string {
- return string(sf.name)
- }
- // Txt -- возвращает строковое представление
- func (sf moduleName) Txt() d0.Txt {
- return d0.Txt(sf.name)
- }
- // Get -- возвращает имя модуля.
- func (sf moduleName) Get() AModuleName {
- return sf.name
- }
- // Byte -- возвращает байты.
- func (sf moduleName) Byte() []byte {
- return []byte(sf.name)
- }
- // Rune -- возвращает руны.
- func (sf moduleName) Rune() []rune {
- return []rune(sf.name)
- }
- // Len -- длина строки.
- func (sf moduleName) Len() d0.Num {
- return d0.Num(len(sf.name))
- }
|