From 5afc44c1082ae7088511f318aa9bd3d4b25ba3c6 Mon Sep 17 00:00:00 2001 From: Piotr Szarmanski Date: Fri, 30 Dec 2022 18:29:24 +0100 Subject: Implement buffer reuse encoding. This implements a buffer reuse mechanism in eris-encode. This is also a backwards incompatible change, as the provided OUTPUT-FUNCTION now has an additional argument and has to return an octet-vector buffer of equal size. This is not yet implemented optimally, but should amount to a reduce of memory usage and GC required, especially for larger files. --- tests/decode-tests.lisp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'tests/decode-tests.lisp') diff --git a/tests/decode-tests.lisp b/tests/decode-tests.lisp index 27ff4e3..5053d11 100644 --- a/tests/decode-tests.lisp +++ b/tests/decode-tests.lisp @@ -22,7 +22,8 @@ (defvar *stream* nil) (defun hashtable-encode (block ref) - (setf (gethash ref *table*) block)) + (setf (gethash ref *table*) (copy-seq block)) + block) (defun hashtable-decode (ref) (copy-seq (gethash ref *table*))) -- cgit v1.2.3