:maintainer '("Scott McKay")
:description "Protobufs for Common Lisp"
:long-description "Protobufs for Common Lisp"
- :depends-on (:closer-mop :babel)
+ :depends-on (:closer-mop :babel :trivial-garbage)
:serial t
:components
((:module "packages"
(intern (format nil "~A-~A" 'set reader) *protobuf-package*)))
(default (getf inits :initform)))
(collect-form `(without-redefinition-warnings ()
- (let ((,stable #+ccl (make-hash-table :test #'eq :weak t)
- #+sbcl (make-hash-table :test #'eq :weakness :value)))
+ (let ((,stable (tg:make-weak-hash-table :weakness :value :test #'eq)))
,@(and reader `((defmethod ,reader ((object ,type))
(gethash object ,stable ,default))))
,@(and writer `((defmethod ,writer ((object ,type) value)
;; will result in harmless redefinitions, so squelch the warnings
;;--- Maybe these methods need to be defined in 'define-message'?
(collect-form `(without-redefinition-warnings ()
- (let ((,stable #+ccl (make-hash-table :test #'eq :weak t)
- #+sbcl (make-hash-table :test #'eq :weakness :value)))
+ (let ((,stable (tg:make-weak-hash-table :weakness :value :test #'eq)))
,@(and reader `((defmethod ,reader ((object ,type))
(gethash object ,stable ,default))))
,@(and writer `((defmethod ,writer ((object ,type) value)