La posibilidad de desarrollar funcuiones de carácter utilitario nos
permiten completar los predicados de Visual Lisp con otros de uso probable
dentro de las utilidades que se desarrollen dentro de Autocad.
Predicados para comprobación de tipo de objeto:
Tipos de Datos LISP:
INTEGERP
Comprueba si el argumento es un número entero.
(defun integerp (dato)(eq (type dato) 'INT))
REALP
Comprueba si el argumento es un número real.
(defun realp (dato)(eq (type dato) 'REAL))
STRINGP
Comprueba si el argumento es una cadena.
(defun stringp (dato)(eq (type dato) 'STR))
Tipos de Datos AutoCAD:
ENAMEP
Comprueba si el argumento es un nombre de entidad.
(defun enamep (dato)(eq (type dato) 'ENAME))
FILEP
Comprueba si el argumento es un identificador de archivo.
(defun filep (dato)(eq (type dato) 'FILE))
PAGETBP
Comprueba si el argumento es una Tablas de Paginación de Funciones.
(defun pagetbp (dato)(eq (type dato) 'PAGETB))
PICKSETP
Comprueba si el argumento es un Conjunto de Selección.
(defun picksetp (dato)(eq (type dato) 'PICKSET))
SUBRP
Comprueba si el argumento es una Función AutoLISP interna o compilada.
(defun subrp (dato)(eq (type dato) 'SUBR))
USUBRP
Comprueba si el argumento es una función de usuario cargada desde un
fichero fuente LSP.
(defun usubrp (dato)(eq (type dato) 'USUBR))
EXRXSUBRP
Comprueba si el argumento es una Aplicación ObjectARX Externa.
(defun exrxsubrp (dato)(eq (type dato) 'EXRXSUBR))
Tipos de Datos ActiveX
SAFEARRAYP
Comprueba si el argumento es una Matriz del tipo Safearray.
(defun safearrayp (dato)(eq (type dato) 'SAFEARRAY))
VARIANTP
Comprueba si el argumento es del tipo Variant.
(defun variantp (dato)(eq (type dato) 'VARIANT))
VLA-OBJECT-P
Comprueba si el argumento es un Objeto ActiveX.
(defun vla-object-p (dato)(eq (type dato) 'VLA-object))