Random qualifiers that can be put on struct or union members.
This is an ordinary defenum.
Function:
(defun vl-randomqualifier-p (x) (declare (xargs :guard t)) (or (eq x 'nil) (eq x ':vl-rand) (eq x ':vl-randc)))
Theorem: type-when-vl-randomqualifier-p
(defthm type-when-vl-randomqualifier-p (implies (vl-randomqualifier-p x) (if (if (symbolp x) (if (not (equal x 't)) (not (equal x 'nil)) 'nil) 'nil) 't (equal x 'nil))) :rule-classes :compound-recognizer)