Function: testcover-analyze-coverage-edebug-after
testcover-analyze-coverage-edebug-after is a byte-compiled function
defined in testcover.el.gz.
Signature
(testcover-analyze-coverage-edebug-after FORM BEFORE-FORM BEFORE-ID AFTER-ID WRAPPED-FORM &optional WRAPPER)
Documentation
Analyze a _FORM wrapped by edebug-after for code coverage.
_FORM should be either:
(edebug-after (edebug-before BEFORE-ID) AFTER-ID WRAPPED-FORM)
or:
(edebug-after 0 AFTER-ID WRAPPED-FORM)
where BEFORE-FORM is bound to either (edebug-before BEFORE-ID) or
0. WRAPPER may be 1value or noreturn, and if so it forces the
form to be treated accordingly.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/testcover.el.gz
(defun testcover-analyze-coverage-edebug-after (_form before-form before-id
after-id wrapped-form
&optional wrapper)
"Analyze a _FORM wrapped by `edebug-after' for code coverage.
_FORM should be either:
(edebug-after (edebug-before BEFORE-ID) AFTER-ID WRAPPED-FORM)
or:
(edebug-after 0 AFTER-ID WRAPPED-FORM)
where BEFORE-FORM is bound to either (edebug-before BEFORE-ID) or
0. WRAPPER may be 1value or noreturn, and if so it forces the
form to be treated accordingly."
(let (val)
(unless (eql before-form 0)
(aset testcover-vector before-id 'edebug-ok-coverage))
(setq val (testcover-analyze-coverage-wrapped-form wrapped-form))
(when (or (eq wrapper '1value) val)
;; The form is 1-valued or potentially 1-valued.
(aset testcover-vector after-id (or val 'testcover-1value)))
(cond
((or (eq wrapper 'noreturn)
(memq (car-safe wrapped-form) testcover-noreturn-functions))
;; This function won't return, so indicate to testcover-before that
;; it should record coverage.
(aset testcover-vector before-id (cons 'noreturn after-id))
(aset testcover-vector after-id 'testcover-1value)
(setq val 'testcover-1value))
((eq (car-safe wrapped-form) '1value)
;; This function is always supposed to return the same value.
(setq val 'testcover-1value)
(aset testcover-vector after-id 'testcover-1value)))
val))