Generate the declaration of the environment Java class, in the shallow embedding approach.
(atj-gen-shallow-env-class pkgs java-class$ verbose$) → class
This is a package-private class,
whose purpose is to build the ACL2 environment.
It starts with the
Function:
(defun atj-gen-shallow-env-class (pkgs java-class$ verbose$) (declare (xargs :guard (and (string-listp pkgs) (stringp java-class$) (booleanp verbose$)))) (let ((__function__ 'atj-gen-shallow-env-class)) (declare (ignorable __function__)) (b* (((run-when verbose$) (cw "~%Generate the Java methods to build the ACL2 packages:~%")) (pkg-methods (atj-gen-pkg-methods pkgs verbose$)) (pkg-methods (mergesort-jmethods pkg-methods)) ((run-when verbose$) (cw "~%Generate the Java class to build the ACL2 environment.~%")) (build-method (atj-gen-shallow-build-method pkgs)) (body-class (append (list (jcbody-element-member (jcmember-method build-method))) (jmethods-to-jcbody-elements pkg-methods)))) (make-jclass :access (jaccess-default) :abstract? nil :static? nil :final? t :strictfp? nil :name (str::cat java-class$ "Environment") :superclass? nil :superinterfaces nil :body body-class))))
Theorem:
(defthm jclassp-of-atj-gen-shallow-env-class (b* ((class (atj-gen-shallow-env-class pkgs java-class$ verbose$))) (jclassp class)) :rule-classes :rewrite)