Function: majutsu-template--type-convertible-p
majutsu-template--type-convertible-p is a natively compiled function
defined in majutsu-template.el.
Signature
(majutsu-template--type-convertible-p ACTUAL EXPECTED)
Documentation
Return non-nil if ACTUAL type can be used where EXPECTED is required.
Source Code
;; Defined in /nix/store/jagqw3nms546pad0gxi5f3wsckk6pji7-emacs-packages-deps/share/emacs/site-lisp/majutsu-template.el
(defun majutsu-template--type-convertible-p (actual expected)
"Return non-nil if ACTUAL type can be used where EXPECTED is required."
(setq actual (majutsu-template--type-ref-normalize actual)
expected (majutsu-template--type-ref-normalize expected))
(let ((actual-base (majutsu-template--type-ref-base-type actual))
(expected-base (majutsu-template--type-ref-base-type expected)))
(cond
((eq expected 'Unknown) t)
((majutsu-template--type-structurally-compatible-p actual expected) t)
((majutsu-template--capability-type-p expected)
(or (eq actual 'Unknown)
(majutsu-template--type-supports-capability-p actual expected)))
((eq actual 'Unknown) nil)
((majutsu-template--type-explicitly-converts-to-p actual-base expected-base)
t)
(t nil))))