diff options
Diffstat (limited to 'vendor/github.com/ncruces/go-sqlite3/internal/alloc')
4 files changed, 19 insertions, 28 deletions
diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_other.go b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_other.go index ded8da108..d9a3de224 100644 --- a/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_other.go +++ b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_other.go @@ -4,6 +4,21 @@ package alloc import "github.com/tetratelabs/wazero/experimental" -func Virtual(cap, max uint64) experimental.LinearMemory { - return Slice(cap, max) +func NewMemory(cap, max uint64) experimental.LinearMemory { + return &sliceMemory{make([]byte, 0, cap)} +} + +type sliceMemory struct { + buf []byte +} + +func (b *sliceMemory) Free() {} + +func (b *sliceMemory) Reallocate(size uint64) []byte { + if cap := uint64(cap(b.buf)); size > cap { + b.buf = append(b.buf[:cap], make([]byte, size-cap)...) + } else { + b.buf = b.buf[:size] + } + return b.buf } diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_slice.go b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_slice.go deleted file mode 100644 index 5fc725c65..000000000 --- a/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_slice.go +++ /dev/null @@ -1,24 +0,0 @@ -//go:build !(darwin || linux) || !(amd64 || arm64 || riscv64 || ppc64le) || sqlite3_noshm || sqlite3_nosys - -package alloc - -import "github.com/tetratelabs/wazero/experimental" - -func Slice(cap, _ uint64) experimental.LinearMemory { - return &sliceMemory{make([]byte, 0, cap)} -} - -type sliceMemory struct { - buf []byte -} - -func (b *sliceMemory) Free() {} - -func (b *sliceMemory) Reallocate(size uint64) []byte { - if cap := uint64(cap(b.buf)); size > cap { - b.buf = append(b.buf[:cap], make([]byte, size-cap)...) - } else { - b.buf = b.buf[:size] - } - return b.buf -} diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_unix.go b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_unix.go index c05cfa735..2948487f6 100644 --- a/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_unix.go +++ b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_unix.go @@ -9,7 +9,7 @@ import ( "golang.org/x/sys/unix" ) -func Virtual(_, max uint64) experimental.LinearMemory { +func NewMemory(_, max uint64) experimental.LinearMemory { // Round up to the page size. rnd := uint64(unix.Getpagesize() - 1) max = (max + rnd) &^ rnd diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_windows.go b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_windows.go index 46181b118..8e67e0319 100644 --- a/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_windows.go +++ b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_windows.go @@ -11,7 +11,7 @@ import ( "golang.org/x/sys/windows" ) -func Virtual(_, max uint64) experimental.LinearMemory { +func NewMemory(_, max uint64) experimental.LinearMemory { // Round up to the page size. rnd := uint64(windows.Getpagesize() - 1) max = (max + rnd) &^ rnd |