(defun open-heap (pathname
&key (class 'heap) rucksack (options '())
(if-exists :overwrite) (if-does-not-exist :create))
(let ((stream (open pathname
:element-type '(unsigned-byte 8)
:direction :io
:if-exists if-exists
:if-does-not-exist if-does-not-exist
#+openmcl :sharing #+openmcl :external)))
(apply #'make-instance
class
:stream stream
:rucksack rucksack
options)))
Source Context