Function: majutsu-template--specialize-method-arg

majutsu-template--specialize-method-arg is a natively compiled function defined in majutsu-template.el.

Signature

(majutsu-template--specialize-method-arg RECEIVER-TYPE ARG-SPEC ARG)

Documentation

Return ARG prepared according to ARG-SPEC in context of RECEIVER-TYPE.

Source Code

;; Defined in /nix/store/jagqw3nms546pad0gxi5f3wsckk6pji7-emacs-packages-deps/share/emacs/site-lisp/majutsu-template.el
(defun majutsu-template--specialize-method-arg (receiver-type arg-spec arg)
  "Return ARG prepared according to ARG-SPEC in context of RECEIVER-TYPE."
  (pcase (and arg-spec (majutsu-template--arg-specialize arg-spec))
    (:element-lambda
     (if (and (eq (majutsu-template-node-kind arg) :lambda)
              (majutsu-template--type-ref-element-type receiver-type))
         (majutsu-template--specialize-lambda-node
          arg (majutsu-template--type-ref-element-type receiver-type))
       arg))
    (_ arg)))