handler_name.go 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // package handler_name -- имя функции обработчика
  2. package handler_name
  3. import (
  4. "gitp78su.ipnodns.ru/svi/kern/v4/lev0"
  5. )
  6. // AHandlerName -- имя функции обработчика.
  7. type AHandlerName lev0.ATxt
  8. // IHandlerNameFix -- неизменяемое имя функции обработчика.
  9. type IHandlerNameFix interface {
  10. lev0.IString[AHandlerName]
  11. // Txt -- внутренне представление имени функции обработчика.
  12. Txt() *lev0.LTxt
  13. }
  14. // HandlerName -- имя функции обработчика.
  15. type HandlerName struct {
  16. val *lev0.LTxt
  17. }
  18. // NewHandlerName -- создать новое имя функции обработчика.
  19. func NewHandlerName(val AHandlerName) *HandlerName {
  20. lev0.If(val == "").Assert("NewAHandlerName: val is empty")
  21. sf := &HandlerName{
  22. val: lev0.LetTxt(val),
  23. }
  24. _ = IHandlerNameFix(sf)
  25. return sf
  26. }
  27. // Get -- получить значение.
  28. func (sf *HandlerName) Get() AHandlerName {
  29. return AHandlerName(sf.val.Get())
  30. }
  31. // String -- строковое представление.
  32. func (sf *HandlerName) String() string {
  33. return sf.val.String()
  34. }
  35. // Txt -- внутренне представление имени функции обработчика.
  36. func (sf *HandlerName) Txt() *lev0.LTxt {
  37. return sf.val
  38. }