1
2
3
4
5
6
7
8
9
(defmacro make-null-wrapper [& meths]
  `(proxy [EWrapper] []
    ~@(let [expand (fn [meth args]
                     `(~args (info (. EWrapperMsgGenerator ~meth ~@args))))]
        (map (fn [[meth spec]]
               (cons meth (if (vector? spec)
                            (expand meth spec)
                            (map (partial expand meth) spec))))
             meths))))