;;;--------------------------------------------------------------------------
;;; Classes and protocol.
;;;--------------------------------------------------------------------------
;;; Classes and protocol.
- :reader message-combination)
- (kernel-function :type function :reader message-kernel-function))
+ :reader sod-message-combination)
+ (kernel-function :type function :reader sod-message-kernel-function))
'aggregating-effective-method)
(defmethod simple-method-body
((method aggregating-effective-method) codegen target)
(let ((argument-names (effective-method-basic-argument-names method))
(primary-methods (effective-method-primary-methods method)))
'aggregating-effective-method)
(defmethod simple-method-body
((method aggregating-effective-method) codegen target)
(let ((argument-names (effective-method-basic-argument-names method))
(primary-methods (effective-method-primary-methods method)))
(defmethod compute-aggregating-message-kernel
((message aggregating-message) (combination (eql :custom))
codegen target methods arg-names
&key (retvar "sod_ret") (valvar "sod_val")
(defmethod compute-aggregating-message-kernel
((message aggregating-message) (combination (eql :custom))
codegen target methods arg-names
&key (retvar "sod_ret") (valvar "sod_val")
(let* ((type (c-type-subtype (sod-message-type message)))
(not-void-p (not (eq type c-type-void))))
(when not-void-p
(ensure-var codegen retvar type)
(ensure-var codegen valvar type))
(let* ((type (c-type-subtype (sod-message-type message)))
(not-void-p (not (eq type c-type-void))))
(when not-void-p
(ensure-var codegen retvar type)
(ensure-var codegen valvar type))