Function: apropos-safe-documentation

apropos-safe-documentation is a byte-compiled function defined in apropos.el.gz.

Signature

(apropos-safe-documentation FUNCTION)

Documentation

Like documentation, except it avoids calling get_doc_string.

Will return nil instead.

Source Code

;; Defined in /usr/src/emacs/lisp/apropos.el.gz
(defun apropos-safe-documentation (function)
  "Like `documentation', except it avoids calling `get_doc_string'.
Will return nil instead."
  (while (and function (symbolp function))
    (setq function (symbol-function function)))
  (if (eq (car-safe function) 'macro)
      (setq function (cdr function)))
  (setq function (if (byte-code-function-p function)
		     (if (> (length function) 4)
			 (aref function 4))
		   (if (autoloadp function)
		       (nth 2 function)
		     (if (eq (car-safe function) 'lambda)
			 (if (stringp (nth 2 function))
			     (nth 2 function)
			   (if (stringp (nth 3 function))
			       (nth 3 function)))))))
  (if (integerp function)
      nil
    function))