github.com/ydb-platform/ydb-go-sdk/v3@v3.89.2/internal/grpcwrapper/rawtopic/rawtopiccommon/rangeoffset.go (about)

     1  package rawtopiccommon
     2  
     3  import (
     4  	"errors"
     5  
     6  	"github.com/ydb-platform/ydb-go-genproto/protos/Ydb_Topic"
     7  
     8  	"github.com/ydb-platform/ydb-go-sdk/v3/internal/xerrors"
     9  )
    10  
    11  var errUnexpectedProtobufInOffsets = xerrors.Wrap(errors.New("ydb: unexpected protobuf nil offsets"))
    12  
    13  type OffsetRange struct {
    14  	Start Offset
    15  	End   Offset
    16  }
    17  
    18  func (r *OffsetRange) FromProto(p *Ydb_Topic.OffsetsRange) error {
    19  	if p == nil {
    20  		return xerrors.WithStackTrace(errUnexpectedProtobufInOffsets)
    21  	}
    22  
    23  	r.Start.FromInt64(p.GetStart())
    24  	r.End.FromInt64(p.GetEnd())
    25  
    26  	return nil
    27  }
    28  
    29  func (r *OffsetRange) ToProto() *Ydb_Topic.OffsetsRange {
    30  	return &Ydb_Topic.OffsetsRange{
    31  		Start: r.Start.ToInt64(),
    32  		End:   r.End.ToInt64(),
    33  	}
    34  }