Function: CREATE-CBUFFERED-DB-ASSOC-CALLBACK

Source

(defun create-cbuffered-db-assoc-callback (fun &optional name)
  (create-db-assoc-callback
   (lambda (secondary key-ptr key-size data-ptr data-size)
     (multiple-value-bind (use-ret ret-buf)
	 (funcall fun secondary
		  (make-cbuffer-from-pointer key-ptr key-size)
		  (make-cbuffer-from-pointer data-ptr data-size))
       (cond (use-ret (values t (cbuffer-data ret-buf) (cbuffer-size ret-buf)))
	     (ret-buf (free-cbuffer ret-buf)
		      (values nil nil))
	     (t (values nil nil)))))
   name))
Source Context