hx_swap_oob.go 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. // package hx_swap_oob -- объект внеполосной подкачки.
  2. package hx_swap_oob
  3. import (
  4. "sync"
  5. . "gitp78su.ipnodns.ru/svi/kern/v4/lev2/wui/wtypes"
  6. )
  7. // HxSwapOob -- объект внеполосной подкачки.
  8. type HxSwapOob struct {
  9. sync.RWMutex
  10. val string
  11. }
  12. // NewHxSwapOob -- возвращает новую внеполосную подкачку.
  13. func NewHxSwapOob() *HxSwapOob {
  14. sf := &HxSwapOob{}
  15. _ = IHxSwapOob(sf)
  16. return sf
  17. }
  18. // String -- возвращает строковое представление тэга.
  19. func (sf *HxSwapOob) String() string {
  20. sf.RLock()
  21. defer sf.RUnlock()
  22. return `hx-swap-oob="` + sf.val + `"`
  23. }
  24. // Get -- возвращает хранимое значение внеполосной подкачки.
  25. func (sf *HxSwapOob) Get() string {
  26. sf.RLock()
  27. defer sf.RUnlock()
  28. return sf.val
  29. }
  30. // Set -- устанавливает значение внеполосной подкачки.
  31. func (sf *HxSwapOob) Set(val string) {
  32. sf.Lock()
  33. defer sf.Unlock()
  34. sf.val = val
  35. }