]> git.eshelyaron.com Git - emacs.git/commitdiff
; * lisp/emacs-lisp/comp-cstr.el (comp-subtype-p): Hoist above use.
authorMattias Engdegård <mattiase@acm.org>
Mon, 30 Oct 2023 10:48:04 +0000 (11:48 +0100)
committerMattias Engdegård <mattiase@acm.org>
Mon, 30 Oct 2023 10:48:04 +0000 (11:48 +0100)
lisp/emacs-lisp/comp-cstr.el

index ee0ae10539d57e80339660248290f9593771624d..82d48e59a237fb6a180d782692eef4b1dd111c46 100644 (file)
@@ -293,6 +293,14 @@ Return them as multiple value."
           (setq notdirect (append notdirect (comp-supertypes parent))))
      finally return direct)))
 
+(defsubst comp-subtype-p (type1 type2)
+  "Return t if TYPE1 is a subtype of TYPE2 or nil otherwise."
+  (let ((types (cons type1 type2)))
+    (or (gethash types (comp-cstr-ctxt-subtype-p-mem comp-ctxt))
+        (puthash types
+                 (memq type2 (comp-supertypes type1))
+                 (comp-cstr-ctxt-subtype-p-mem comp-ctxt)))))
+
 (defun comp--normalize-typeset0 (typeset)
   ;; For every type search its supertypes.  If all the subtypes of a
   ;; supertype are presents remove all of them, add the identified
@@ -373,14 +381,6 @@ Return them as multiple value."
                   (if above (comp--intersection x above) x)))))
    finally return above))
 
-(defsubst comp-subtype-p (type1 type2)
-  "Return t if TYPE1 is a subtype of TYPE2 or nil otherwise."
-  (let ((types (cons type1 type2)))
-    (or (gethash types (comp-cstr-ctxt-subtype-p-mem comp-ctxt))
-        (puthash types
-                 (memq type2 (comp-supertypes type1))
-                 (comp-cstr-ctxt-subtype-p-mem comp-ctxt)))))
-
 (defun comp-union-typesets (&rest typesets)
   "Union types present into TYPESETS."
   (or (gethash typesets (comp-cstr-ctxt-union-typesets-mem comp-ctxt))