changelog shortlog graph tags branches files raw help

Mercurial > core / changeset: zstd init

changeset 391: 757b91ddcb2a
parent 390: 88a6edf5291b
child 392: 077e7b391758
author: Richard Westhaver <ellis@rwest.io>
date: Sat, 01 Jun 2024 02:45:44 -0400
files: lisp/ffi/zstd/constants.lisp lisp/ffi/zstd/pkg.lisp lisp/ffi/zstd/tests.lisp
description: zstd init
     1.1--- a/lisp/ffi/zstd/constants.lisp	Sat Jun 01 00:39:01 2024 -0400
     1.2+++ b/lisp/ffi/zstd/constants.lisp	Sat Jun 01 02:45:44 2024 -0400
     1.3@@ -1,7 +1,9 @@
     1.4 ("stddef.h" "zstd_errors.h" "zstd.h")
     1.5 
     1.6-((:integer zstd-clevel-default "ZSTD_CLEVEL_DEFAULT" nil t)
     1.7- (:integer zstd-magicnumber "ZSTD_MAGICNUMBER" nil t)
     1.8+((:integer zstd-version-number "ZSTD_VERSION_NUMBER" nil t)
     1.9+(:integer zstd-clevel-default "ZSTD_CLEVEL_DEFAULT" nil t)
    1.10+(:integer zstd-magicnumber "ZSTD_MAGICNUMBER" nil t)
    1.11+(:integer zstd-magic-dictionary "ZSTD_MAGIC_DICTIONARY" nil t)
    1.12  (:integer zstd-magic-skippable-start "ZSTD_MAGIC_SKIPPABLE_START" nil t)
    1.13  (:integer zstd-blocksizelog-max "ZSTD_BLOCKSIZELOG_MAX" nil t)
    1.14  (:integer zstd-blocksize-max "ZSTD_BLOCKSIZE_MAX" nil t)
     2.1--- a/lisp/ffi/zstd/pkg.lisp	Sat Jun 01 00:39:01 2024 -0400
     2.2+++ b/lisp/ffi/zstd/pkg.lisp	Sat Jun 01 02:45:44 2024 -0400
     2.3@@ -36,9 +36,20 @@
     2.4 
     2.5 ;;; Code:
     2.6 (defpackage :zstd
     2.7-  (:use :cl :std)
     2.8+  (:use :cl :std :sb-alien)
     2.9   (:nicknames :zstd))
    2.10 
    2.11 (in-package :zstd)
    2.12 
    2.13-(define-alien-loader "zstd" t)
    2.14+(define-alien-loader "zstd" t "/usr/lib/")
    2.15+
    2.16+;;; Simple API
    2.17+(define-alien-routine zstd-compress size-t
    2.18+  (dst (* t)) (dst-capacity size-t)
    2.19+  (src (* t)) (src-size size-t)
    2.20+  (compression int))
    2.21+
    2.22+(define-alien-routine zstd-decompress size-t
    2.23+  (dst (* t)) (dst-capacity size-t)
    2.24+  (src (* t)) (compressed-size size-t))
    2.25+  
     3.1--- a/lisp/ffi/zstd/tests.lisp	Sat Jun 01 00:39:01 2024 -0400
     3.2+++ b/lisp/ffi/zstd/tests.lisp	Sat Jun 01 02:45:44 2024 -0400
     3.3@@ -3,5 +3,17 @@
     3.4 (in-package :zstd/tests)
     3.5 (defsuite :zstd)
     3.6 (in-suite :zstd)
     3.7-
     3.8-(deftest sanity () )
     3.9+(load-zstd)
    3.10+(deftest sanity ()
    3.11+  (mapc (lambda (x)
    3.12+          (is (= (car x) (cdr x))))
    3.13+        `((,zstd::zstd-clevel-default . 3)
    3.14+          (,zstd::zstd-magicnumber . -47205080)
    3.15+          (,zstd::zstd-magic-skippable-start . 407710288)
    3.16+          (,zstd::zstd-blocksizelog-max . 17)
    3.17+          (,zstd::zstd-blocksize-max . 131072)
    3.18+          (,zstd::zstd-contentsize-unknown . -1)
    3.19+          (,zstd::zstd-contentsize-error . -2)
    3.20+          (,zstd::zstd-max-input-size . -71777214294589696)
    3.21+          (,zstd::zstd-version-number . 10506)
    3.22+          (,zstd::zstd-magic-dictionary . -332356553))))