Generate Java code to build an ACL2 character.
(atj-gen-char char deep$ guards$) → expr
In the shallow embedding with guards, we translate ACL2 characters to Java character literals. This is because, in the shallow embedding with guards, ACL2 characters are represented as Java characters.
In the deep embedding, or in the shallow embedding without guards,
we generate an expression of type
Function:
(defun atj-gen-char (char deep$ guards$) (declare (xargs :guard (and (characterp char) (symbolp deep$) (symbolp guards$)))) (let ((__function__ 'atj-gen-char)) (declare (ignorable __function__)) (if (and (not deep$) guards$) (jexpr-literal-character char) (jexpr-smethod *aij-type-char* "make" (list (jexpr-literal-character char))))))
Theorem:
(defthm jexprp-of-atj-gen-char (b* ((expr (atj-gen-char char deep$ guards$))) (jexprp expr)) :rule-classes :rewrite)