From 7615a81235a0f538b8dd9d39d4fb4503534e1020 Mon Sep 17 00:00:00 2001 From: pmai <pmai> Date: Fri, 11 Oct 2002 15:15:03 +0000 Subject: [PATCH] Committed patch by Gerd Moellmann to add the AMOP-mandated generic function generic-function-argument-precedence-order. Closes the Entomotomy bug generic-function-argument-precedence-order-missing. --- pcl/generic-functions.lisp | 5 ++++- pcl/methods.lisp | 10 +++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/pcl/generic-functions.lisp b/pcl/generic-functions.lisp index 93158a8f6..54cd8ecf8 100644 --- a/pcl/generic-functions.lisp +++ b/pcl/generic-functions.lisp @@ -2,7 +2,7 @@ ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/generic-functions.lisp,v 1.11 2002/10/09 14:19:11 pmai Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/generic-functions.lisp,v 1.12 2002/10/11 15:15:03 pmai Exp $") ;;; (in-package :pcl) @@ -150,6 +150,9 @@ (defgeneric generic-function-name (standard-generic-function)) ; (standard-generic-function) +(defgeneric generic-function-argument-precedence-order (generic-function)) +; (standard-generic-function) + (defgeneric gf-arg-info (standard-generic-function)) ; (standard-generic-function) diff --git a/pcl/methods.lisp b/pcl/methods.lisp index bba7a2e9b..121b1f19b 100644 --- a/pcl/methods.lisp +++ b/pcl/methods.lisp @@ -26,7 +26,7 @@ ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/methods.lisp,v 1.16 2002/09/09 15:02:56 pmai Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/methods.lisp,v 1.17 2002/10/11 15:15:03 pmai Exp $") ;;; (in-package :pcl) @@ -505,6 +505,14 @@ ;;; ;;; +(defmethod generic-function-argument-precedence-order + ((gf standard-generic-function)) + (assert (eq *boot-state* 'complete)) + (loop with arg-info = (gf-arg-info gf) + with lambda-list = (arg-info-lambda-list arg-info) + for argument-position in (arg-info-precedence arg-info) + collect (nth argument-position lambda-list))) + (defmethod generic-function-lambda-list ((gf generic-function)) (gf-lambda-list gf)) -- GitLab