(defmethod load-heap-end ((heap appending-heap))
(let* ((stream (heap-stream heap))
;; 7 octets: one for a marker, 6 for a byte-48.
(pos (- (file-length stream) 7)))
(file-position stream pos)
(let ((end (deserialize stream)))
(unless (= end pos)
(error "Heap may be corrupt (heap-end info is missing."))
(setf (slot-value heap 'end) end))))
Source Context