Here is my defcfun as I normally write it,

;; Size Mat::size() const 
;; Size* cv_Mat_size(Mat* self) 
(defcfun ("cv_Mat_size" mat-size) (:pointer size) 
  (self (:pointer mat)))


the 


;; Size Mat::size() const 


is the C++  function declaration with a Size return value


The ;; Size* cv_Mat_size(Mat* self) is the  C wrapper function declaration with 
a Size* return value


This is my defcfun with a (:pointer size) return value

(defcfun ("cv_Mat_size" mat-size) (:pointer size) 
  (self (:pointer mat)))

In my Documentation for this function I list the Common Lisp function 
declaration as

(MAT-SIZE (SELF (:POINTER MAT))) 


I couldn't figure out if I should add a return value


but in C++ the return value always goes up front i/e ;; Size Mat::size() const 

Is it common to put return values on Lisp/CFFI function declarations and if so 
where 


in this declaration  (MAT-SIZE (SELF (:POINTER MAT))) should I put mine

btw on the CLHS I didn't see or missed return values on any function declaration

Thanks in advance for any  takers=)

Good Day.

Reply via email to