From c6f28e53564be4d80d8f4ef98ab0251bec8409cd Mon Sep 17 00:00:00 2001 From: Sean Whitton Date: Tue, 6 Jul 2021 11:04:58 -0700 Subject: make it possible to distinguish SKIP-PROPERTY restarts in debugger Signed-off-by: Sean Whitton --- src/combinator.lisp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'src/combinator.lisp') diff --git a/src/combinator.lisp b/src/combinator.lisp index 420576e..9e5ee8f 100644 --- a/src/combinator.lisp +++ b/src/combinator.lisp @@ -141,16 +141,15 @@ apply the elements of REQUIREMENTS in reverse order." (not (get (car propapp) 'desc)))))) result) (unwind-protect-in-parent - ;; TODO Nested combinators can mean that we establish this - ;; restart more than once, and they all appear in the debugger - ;; without any way to distinguish them. Perhaps we can use the - ;; :TEST argument to RESTART-CASE such that only the - ;; innermost(?) skip option appears. (setq result (restart-case (if announce (announce-propapp-apply propapp) (propapp-apply propapp)) (skip-property () + :report (lambda (s) + (format s "Skip (~{~S~^ ~})" + (cons (car propapp) + (propappargs propapp)))) (signal 'skipped-properties) 'failed-change))) (when (and (plusp (length buffer)) -- cgit v1.2.3