(defstruct (RDRule (:print-function RDRule-print)) (comment nil) (good (list)) (bad (list)) (ugly (list)) (true nil) (false nil) (parent nil) (fn nil) (class nil) (results (list 0 0 0))) (defun RDRule-print (rule stream depth) (format stream "#(TRUE:~A, FALSE:~A, CLASS:~A, FN-SET:~A, GOOD:~A, BAD:~A, UGLY:~A, COMMENT:~A)~%" (RDRule-true rule) (RDRule-false rule) (RDRule-class rule) (functionp (RDRule-fn rule)) (if (RDRule-good rule) (xindex-ns (RDRule-good rule)) 0) ;(showh (xindex-counts (RDRule-good rule)) :show #'(lambda (x) (format t "~A~%" (car x)))) ;(showh (xindex-counts (RDRule-bad rule)) :show #'(lambda (x) (format t "~A~%" (car x)))) ;(showh (xindex-counts (RDRule-ugly rule)) :show #'(lambda (x) (format t "~A~%" (car x)))) (if (RDRule-bad rule) (xindex-ns (RDRule-bad rule)) 0) (if (RDRule-ugly rule) (xindex-ns (RDRule-ugly rule)) 0) (RDRule-comment rule)))