Recognizer for matchresult structures.
(matchresult-p x) → *
Function:
(defun matchresult-p (x) (declare (xargs :guard t)) (let ((__function__ 'matchresult-p)) (declare (ignorable __function__)) (and (true-listp x) (eql (len x) 4) (b* ((loc (std::da-nth 0 x)) (len (std::da-nth 1 x)) (str (std::da-nth 2 x)) (backrefs (std::da-nth 3 x))) (and (maybe-natp loc) (natp len) (stringp str) (backref-alist-p backrefs))))))
Theorem:
(defthm consp-when-matchresult-p (implies (matchresult-p x) (consp x)) :rule-classes :compound-recognizer)