Plaster
New
List
Login
common-lisp
default
anonymous
2019.12.06 22:52:52
(defmethod (setf foreign-struct-slot-value) (value ptr (slot aggregate-struct-slot)) "Set the value of an aggregate SLOT to VALUE in PTR." (let* ((type (slot-type slot)) (output-ptr (inc-pointer ptr (slot-offset slot))) (elt-size (foreign-type-size type))) (loop for i below (slot-count slot) for v in value do (setf (mem-ref output-ptr type (* i elt-size)) (translate-to-foreign v type)))))
Raw
Annotate
Repaste
Edit