1.1--- a/lisp/ffi/zstd/dict.lisp Fri Oct 04 16:14:44 2024 -0400
1.2+++ b/lisp/ffi/zstd/dict.lisp Fri Oct 04 21:11:52 2024 -0400
1.3@@ -315,3 +315,38 @@
1.4 (shrink-dict unsigned)
1.5 (shrink-dict-max-regression unsigned)
1.6 (zparams zdict-params)))
1.7+
1.8+(define-alien-routine ("ZDICT_trainFromBuffer" zdict-train-from-buffer) size-t
1.9+ (dict-buffer (* t))
1.10+ (dict-buffer-capacity size-t)
1.11+ (samples-buffer (* t))
1.12+ (samples-sizes (* size-t))
1.13+ (nb-samples unsigned))
1.14+
1.15+(define-alien-type zdict-params
1.16+ (struct zdict-params-t
1.17+ (compression-level int)
1.18+ (notification-level unsigned)
1.19+ (dict-id unsigned)))
1.20+
1.21+;; Requires returning struct by value
1.22+;; (define-alien-routine ("ZDICT_finalizeDictionary" zdict-finalize-dictionary) size-t
1.23+;; (dst-dict-buffer (* t))
1.24+;; (max-dict-size size-t)
1.25+;; (dict-content (* t))
1.26+;; (dict-content-size size-t)
1.27+;; (samples-buffer (* t))
1.28+;; (samples-sizes (* size-t))
1.29+;; (nb-samples unsigned)
1.30+;; (parameters zdict-params))
1.31+
1.32+(define-alien-routine ("ZDICT_getDictID" zdict-get-dict-id) unsigned
1.33+ (dict-buffer (* t))
1.34+ (dict-size size-t))
1.35+
1.36+(define-alien-routine ("ZDICT_getDictHeaderSize" zdict-get-dict-header-size) size-t
1.37+ (dict-buffer (* t))
1.38+ (dict-size size-t))
1.39+
1.40+(define-alien-routine ("ZDICT_isError" zdict-is-error) unsigned
1.41+ (error-code size-t))