Token structure produced by our lexer.
(vl-token-p x) → *
Our lexer produces a token list for our parser to consume. Any token can be inspected with the following operations:
Function:
(defun vl-token-p (x) (declare (xargs :guard t)) (let ((__function__ 'vl-token-p)) (declare (ignorable __function__)) (mbe :logic (or (vl-idtoken-p x) (vl-inttoken-p x) (vl-sysidtoken-p x) (vl-stringtoken-p x) (vl-realtoken-p x) (vl-timetoken-p x) (vl-extinttoken-p x) (vl-plaintoken-p x)) :exec (case (tag x) (:vl-idtoken (vl-idtoken-p x)) (:vl-inttoken (vl-inttoken-p x)) (:vl-sysidtoken (vl-sysidtoken-p x)) (:vl-stringtoken (vl-stringtoken-p x)) (:vl-realtoken (vl-realtoken-p x)) (:vl-timetoken (vl-timetoken-p x)) (:vl-extinttoken (vl-extinttoken-p x)) (otherwise (vl-plaintoken-p x))))))
Theorem:
(defthm vl-token-p-when-vl-plaintoken-p (implies (vl-plaintoken-p x) (vl-token-p x)))
Theorem:
(defthm vl-token-p-when-vl-stringtoken-p (implies (vl-stringtoken-p x) (vl-token-p x)))
Theorem:
(defthm vl-token-p-when-vl-idtoken-p (implies (vl-idtoken-p x) (vl-token-p x)))
Theorem:
(defthm vl-token-p-when-vl-sysidtoken-p (implies (vl-sysidtoken-p x) (vl-token-p x)))
Theorem:
(defthm vl-token-p-when-vl-inttoken-p (implies (vl-inttoken-p x) (vl-token-p x)))
Theorem:
(defthm vl-token-p-when-vl-realtoken-p (implies (vl-realtoken-p x) (vl-token-p x)))
Theorem:
(defthm vl-token-p-when-vl-timetoken-p (implies (vl-timetoken-p x) (vl-token-p x)))
Theorem:
(defthm vl-token-p-when-vl-extinttoken-p (implies (vl-extinttoken-p x) (vl-token-p x)))