[utils/buffer]: added generics

This commit is contained in:
Jean-Philippe Bossuat
2023-10-04 10:36:15 +02:00
parent 7057d01555
commit 4bb5cdbee8
6 changed files with 117 additions and 77 deletions

View File

@@ -68,7 +68,7 @@ func (m Matrix[T]) WriteTo(w io.Writer) (n int64, err error) {
case buffer.Writer:
var inc int64
if inc, err = buffer.WriteInt(w, len(m)); err != nil {
if inc, err = buffer.WriteAsUint64[int](w, len(m)); err != nil {
return inc, err
}
n += inc
@@ -111,7 +111,7 @@ func (m *Matrix[T]) ReadFrom(r io.Reader) (n int64, err error) {
var size int
var inc int64
if n, err = buffer.ReadInt(r, &size); err != nil {
if n, err = buffer.ReadAsUint64[int](r, &size); err != nil {
return int64(n), fmt.Errorf("cannot read matrix size: %w", err)
}

View File

@@ -61,7 +61,7 @@ func (v Vector[T]) WriteTo(w io.Writer) (n int64, err error) {
case buffer.Writer:
var inc int64
if inc, err = buffer.WriteInt(w, len(v)); err != nil {
if inc, err = buffer.WriteAsUint64[int](w, len(v)); err != nil {
return inc, err
}
n += inc
@@ -103,7 +103,7 @@ func (v *Vector[T]) ReadFrom(r io.Reader) (n int64, err error) {
var size int
var inc int64
if inc, err = buffer.ReadInt(r, &size); err != nil {
if inc, err = buffer.ReadAsUint64[int](r, &size); err != nil {
return inc, fmt.Errorf("cannot read vector size: %w", err)
}
n += inc