Function: ido-unc-hosts

ido-unc-hosts is a byte-compiled function defined in ido.el.gz.

Signature

(ido-unc-hosts &optional QUERY)

Documentation

Return list of UNC host names.

Source Code

;; Defined in /usr/src/emacs/lisp/ido.el.gz
(defun ido-unc-hosts (&optional query)
  "Return list of UNC host names."
  (let ((hosts
	 (cond
	  ((listp ido-unc-hosts)
	   ido-unc-hosts)		;; static list or nil
	  ((listp ido-unc-hosts-cache)
	   ido-unc-hosts-cache)	;; result of net search
	  ((and query (fboundp ido-unc-hosts))
	   (message (propertize "Searching for UNC hosts..." 'face 'highlight))
	   (setq ido-unc-hosts-cache (funcall ido-unc-hosts))
	   (message nil)
	   ido-unc-hosts-cache)
	  (query
	   (setq ido-unc-hosts-cache nil))
	  (t (fboundp ido-unc-hosts)))))
    (when query
      (let ((case-fold-search ido-downcase-unc-hosts)
	    res host re-list re)
	(while hosts
	  (setq host (car hosts)
		hosts (cdr hosts)
		re-list (and ido-process-ignore-lists
			     ido-ignore-unc-host-regexps))
	  (while re-list
	    (setq re (car re-list)
		  re-list (cdr re-list))
	    (if (string-match re host)
		(setq re-list nil
		      host nil)))
	  (when host
	    (when ido-downcase-unc-hosts
	      (setq host (downcase host)))
	    (setq res (cons host res))))
	(setq hosts (sort res #'string<))))
    hosts))