[#170] version: Add docs, refactor

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
This commit is contained in:
Alex Vanin 2022-03-23 18:35:44 +03:00 committed by LeL
parent 3e75660802
commit ade8822a2f
21 changed files with 142 additions and 144 deletions

View file

@ -122,17 +122,20 @@ func (o *Object) SetPayload(v []byte) {
// Version returns version of the object.
func (o *Object) Version() *version.Version {
return version.NewFromV2(
(*object.Object)(o).
GetHeader().
GetVersion(),
)
var ver version.Version
if verV2 := (*object.Object)(o).GetHeader().GetVersion(); verV2 != nil {
ver.ReadFromV2(*verV2)
}
return &ver
}
// SetVersion sets version of the object.
func (o *Object) SetVersion(v *version.Version) {
var verV2 refs.Version
v.WriteToV2(&verV2)
o.setHeaderField(func(h *object.Header) {
h.SetVersion(v.ToV2())
h.SetVersion(&verV2)
})
}