Function: decipher-stats-buffer

decipher-stats-buffer is a byte-compiled function defined in decipher.el.gz.

Signature

(decipher-stats-buffer &optional CREATE)

Documentation

Return the buffer used for decipher statistics.

If CREATE is non-nil, create the buffer if it doesn't exist. This is guaranteed to return a buffer in Decipher-Stats mode; if it can't, it signals an error.

Source Code

;; Defined in /usr/src/emacs/lisp/play/decipher.el.gz
(defun decipher-stats-buffer (&optional create)
  "Return the buffer used for decipher statistics.
If CREATE is non-nil, create the buffer if it doesn't exist.
This is guaranteed to return a buffer in Decipher-Stats mode;
if it can't, it signals an error."
  (cond
   ;; We may already be in the statistics buffer:
   ((eq major-mode 'decipher-stats-mode)
    (current-buffer))
   ;; See if decipher-stats-buffer exists:
   ((and (bufferp decipher-stats-buffer)
         (buffer-name decipher-stats-buffer))
    (or (with-current-buffer decipher-stats-buffer
          (eq major-mode 'decipher-stats-mode))
        (error "Buffer %s is not in Decipher-Stats mode"
               (buffer-name decipher-stats-buffer)))
    decipher-stats-buffer)
   ;; Create a new buffer if requested:
   (create
    (let* ((stats-name (concat "*" (buffer-name) "*"))
           (buf (get-buffer stats-name)))
      (setq decipher-stats-buffer
            (if (and (bufferp buf)
                     (eq 'decipher-stats-mode
                         (buffer-local-value 'major-mode buf)))
                buf
              ;; We just lost track of the statistics buffer:
              (generate-new-buffer stats-name))))
    (with-current-buffer decipher-stats-buffer
      (decipher-stats-mode))
    decipher-stats-buffer)
   ;; Give up:
   (t (error "No statistics buffer"))))