rec_kv.go 895 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. // package rec_kv -- запись KV-хранилища
  2. package rec_kv
  3. import (
  4. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/ktypes"
  5. "gitp78su.ipnodns.ru/svi/kern/v4/lev1/helpers"
  6. )
  7. var (
  8. hassert = helpers.Hassert
  9. )
  10. // RecKv -- запись KV-хранилища
  11. type RecKv struct {
  12. meta ktypes.IRecMeta // Метаданные записи
  13. val ktypes.IRecVal // Значение записи
  14. }
  15. // NewRecKv -- создает новую запись
  16. func NewRecKv(meta ktypes.IRecMeta, val ktypes.IRecVal) *RecKv {
  17. hassert(meta != nil, "NewRecKv(): meta==nil")
  18. hassert(val != nil, "NewRecKv(): val==nil")
  19. sf := &RecKv{
  20. meta: meta,
  21. val: val,
  22. }
  23. _ = ktypes.IRecKv(sf)
  24. return sf
  25. }
  26. // Meta -- метаданные записи
  27. func (sf *RecKv) Meta() ktypes.IRecMeta {
  28. return sf.meta
  29. }
  30. // Val -- значение записи
  31. func (sf *RecKv) Val() ktypes.IRecVal {
  32. return sf.val
  33. }