Function: nnml-request-create-group

nnml-request-create-group is a byte-compiled function defined in nnml.el.gz.

Signature

(nnml-request-create-group GROUP &optional SERVER ARGS)

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/nnml.el.gz
(deffoo nnml-request-create-group (group &optional server _args)
  (nnml-possibly-change-directory nil server)
  (nnmail-activate 'nnml)
  (cond
   ((let ((file (directory-file-name (nnml-group-pathname group nil server)))
	  (file-name-coding-system nnmail-pathname-coding-system))
      (and (file-exists-p file)
	   (not (file-directory-p file))))
    (nnheader-report 'nnml "%s is a file"
		     (directory-file-name (nnml-group-pathname group
							       nil server))))
   ((assoc-string group nnml-group-alist)
    t)
   (t
    (let (active)
      (push (list group (setq active (cons 1 0)))
	    nnml-group-alist)
      (nnml-possibly-create-directory group server)
      (nnml-possibly-change-directory group server)
      (let* ((file-name-coding-system nnmail-pathname-coding-system)
	     (articles (nnml-directory-articles nnml-current-directory)))
	(when articles
	  (setcar active (apply #'min articles))
	  (setcdr active (apply #'max articles))))
      (nnmail-save-active nnml-group-alist nnml-active-file)
      t))))