Lines Matching +refs:idlwave +refs:all +refs:class +refs:tags

163 (defgroup idlwave nil  unknown
180 :group 'idlwave)
328 :group 'idlwave)
470 :group 'idlwave)
483 (class . preserve)
715 :group 'idlwave)
860 :group 'idlwave)
967 :group 'idlwave)
1029 :group 'idlwave)
2436 (class (idlwave-sintern-class (match-string 3)))
2437 (name (idlwave-sintern-routine-or-method (match-string 4) class)))
2438 (list name type class)))))
4015 (defun idlwave-sintern-routine-or-method (name &optional class set)
4016 (if class
4052 (set (idlwave-sintern-set name 'class idlwave-sint-classes set))
4082 (let (entry name type class kwds res source call new)
4088 class (nth 2 entry)
4094 (if class
4096 (if (symbolp class) (setq class (symbol-name class)))
4097 (setq class (idlwave-sintern-class class set))
4120 (setq new (nconc (list name type class source call) kwds)
4450 (defun idlwave-shorten-syntax (syntax name &optional class)
4457 (if class
4458 (while (string-match class x)
4468 (class (cdr (assq 'name nameblock)))
4503 ((string-match (concat class "::Init") method)
4506 ((string-match (concat class "::GetProperty") method)
4509 ((string-match (concat class "::SetProperty") method)
4514 (nconc (idlwave-xml-create-rinfo-list pelem class extra-kwds)
4526 (list class (append '(inherits) inherits) (list 'link link))
4527 (list class (list 'link link))))
4530 (defun idlwave-xml-create-rinfo-list (xml-entry &optional class extra-kws)
4542 (if class ;; strip out class name from class method name string
4543 (if (string-match (concat class "::") name)
4593 class '(system)
4595 (aref syntax-vec idx) name class))
4680 pelem ptype props tags)
4691 tags))))
4694 (list sysvar (if tags (cons 'tags tags)) (list 'link link)))))
4994 (let (class)
4996 (when (and (setq class (nth 2 x))
4997 (not (assq class idlwave-class-alist)))
4998 (push (list class) idlwave-class-alist)))
5092 start name args type keywords class)
5107 (setq class (match-string 3 string)))
5126 class
5137 (if class "Obj ->[%s::]" "")
5693 (defun idlwave-complete (&optional arg module class)
5746 (idlwave-make-force-complete-where-list arg module class)
5755 (setq class (substring module 0 (match-beginning 0))
5768 (not (eq what 'class)))
5778 ((eq what 'class)
5779 (setq idlwave-completion-help-info '(class))
5845 (class (idlwave-determine-class where 'pro))
5846 (idlwave--class-selector class)
5849 (isa (format "procedure%s-keyword" (if class "-method" "")))
5851 name 'pro class (idlwave-routines)))
5854 (unless (or entry (eq class t))
5856 (idlwave-make-full-name class name)))
5857 (setq list (idlwave-fix-keywords name 'pro class list
5860 (idlwave-make-full-name class name)))
5868 (idlwave-make-full-name class name)
5881 (class (idlwave-determine-class where 'fun))
5882 (idlwave--class-selector class)
5885 (isa (format "function%s-keyword" (if class "-method" "")))
5887 name 'fun class (idlwave-routines)))
5891 (unless (or entry (eq class t))
5893 (idlwave-make-full-name class name)))
5894 (setq list (idlwave-fix-keywords name 'fun class list
5897 (setq msg-name (if (and (null class)
5901 (idlwave-make-full-name class name)))
5940 (defun idlwave-make-force-complete-where-list (what &optional module class)
5951 (module (idlwave-sintern-routine-or-method module class))
5952 (class (idlwave-sintern-class class))
5966 (class-list (list nil nil (or class t) nil)))
6002 (let* ((class (idlwave-determine-class class-list 'pro))
6003 (idlwave--class-selector class)
6014 (list pro nil class nil) nil)))
6020 (let* ((class (idlwave-determine-class class-list 'fun))
6021 (idlwave--class-selector class)
6032 (list func nil class nil) nil)))
6034 ((eq what 'class)
6035 (list nil-list nil-list 'class nil-list nil))
6062 (defun idlwave-make-full-name (class name)
6064 (concat (if class (format "%s::" class) "") name))
6066 (defun idlwave-rinfo-assoc (name type class list)
6069 (idlwave-sintern-routine-or-method name class)
6070 type (idlwave-sintern-class class) list))
6072 (defun idlwave-rinfo-assq (name type class list)
6079 (eq (nth 2 match) class)
6083 (defun idlwave-rinfo-assq-any-class (name type class list)
6085 (let* ((classes (cons class (idlwave-all-class-inherits class)))
6092 (defun idlwave-best-rinfo-assq (name type class list &optional with-file
6099 (idlwave-rinfo-assq-any-class name type class list)
6117 (defun idlwave-best-rinfo-assoc (name type class list &optional with-file
6121 (idlwave-sintern-routine-or-method name class)
6122 type (idlwave-sintern-class class) list with-file keep-system))
6219 (let* ((class (nth 2 info))
6240 ((null class) nil)
6241 ((eq t class)
6246 (setq class (get-text-property apos 'idlwave-class)
6247 class (idlwave-sintern-class class)))
6248 (if (and (eq t class) is-self)
6249 (setq class (or (nth 2 (idlwave-current-routine)) class)))
6252 (when (and (eq t class)
6258 (setq class (idlwave-sintern-class special-class)
6262 (when (and (eq class t)
6266 (setq class
6283 (when (and class (not (eq t class)))
6292 (setf (nth 2 info) class))
6294 class)
6296 (t class))))
6353 (setq cw 'class))
6366 (setq cw 'class))
6369 (setq cw 'class))
6399 (defun idlwave-this-word (&optional class)
6401 (setq class (or class "a-zA-Z0-9$_."))
6404 (progn (skip-chars-backward class) (point))
6405 (progn (skip-chars-forward class) (point)))))
6419 func arrow-start class)
6440 class (or (match-string 2) t)))
6444 (idlwave-sintern-routine-or-method func class)
6445 (idlwave-sintern-class class)
6457 pro class arrow-start string)
6477 class (or (match-string 3 string) t)))))
6478 (list (idlwave-sintern-routine-or-method pro class)
6479 (idlwave-sintern-class class)
6660 'class 'class (idlwave-class-alist) nil
7042 tags)
7050 (push (match-string-no-properties 5) tags))
7052 (nreverse tags))))
7130 (if (or (and (or (eq bound 'all) (eq bound 'back))
7145 (defun idlwave-class-info (class)
7166 (setq class (idlwave-sintern-class class))
7167 (or (assq class idlwave-class-info)
7168 (progn (idlwave-scan-class-info class)
7169 (assq class idlwave-class-info)))))
7179 (defun idlwave-find-class-definition (class &optional all-hook alt-class)
7187 (concat "^[ \t]*pro[ \t]+" (downcase class) "__define" "\\>") nil t)
7195 (idlwave-find-structure-definition nil (or alt-class class))))))
7198 (defun idlwave-class-file-or-buffer (class)
7200 (let* ((pro (concat (downcase class) "__define"))
7207 (defun idlwave-scan-class-info (class)
7210 (filebuf (idlwave-class-file-or-buffer class))
7213 (class (idlwave-sintern-class class)))
7230 (idlwave-find-class-definition class
7236 (cons 'tags (idlwave-struct-tags))
7238 (if (not (eq this-class class))
7239 (setq entry (nconc entry (list (cons 'found-in class)))))
7243 (defun idlwave-class-found-in (class)
7245 (cdr (assq 'found-in (idlwave-class-info class))))
7246 (defun idlwave-class-tags (class)
7248 (cdr (assq 'tags (idlwave-class-info class))))
7249 (defun idlwave-class-inherits (class)
7251 (cdr (assq 'inherits (idlwave-class-info class))))
7254 (defun idlwave-all-class-tags (class)
7258 (cons class (idlwave-all-class-inherits class))))
7264 (defun idlwave-all-class-inherits (class)
7269 ((eq class nil) nil)
7270 ((eq class t) nil)
7272 (let ((info (idlwave-class-info class))
7278 (idlwave-class-inherits class)))
7389 (defun idlwave-prepare-class-tag-completion (class)
7392 (setq idlwave-current-tags-class class)
7396 (idlwave-all-class-tags class)))
7398 (mapcar #'downcase (idlwave-class-tags class))))
7438 (tags (cdr (assq 'tags entry))))
7440 (or tags (error "System variable !%s is not a structure" var))
7444 tags nil
7465 (tags (cdr (assq 'tags entry)))
7474 (if (setq target (cdr (assoc-string word tags t)))
7521 (defun idlwave-class-or-superclass-with-tag (class tag)
7524 (let ((sclasses (cons class (idlwave-all-class-inherits class)))
7529 (let ((tags (idlwave-class-tags cl)))
7530 (while tags
7531 (if (eq t (compare-strings tag 0 nil (car tags) 0 nil t))
7533 (setq tags (cdr tags))))))))
7550 (let ((list idlwave-system-variables-alist) entry tags)
7553 (setq tags (assq 'tags entry))
7554 (if tags
7555 (setcdr tags
7559 (cdr tags)))))))
7567 var tags link old-entry) ;; type name class
7573 tags (if (match-end 3)
7581 'tags
7586 (cdr (assq 'tags old-entry))))))
7587 tags))
7725 class)
7729 class (if (match-beginning 2)
7737 ((null class)
7744 (format "resolve_routine,'%s__define'%s" (downcase class) kwd)
7747 (downcase class) (downcase name) kwd)
7791 type class)
7799 (setq class (match-string 1 name)
7801 (setq name (idlwave-sintern-routine-or-method name class)
7802 class (idlwave-sintern-class class)
7806 (idlwave-do-find-module name type class nil this-buffer)))
7808 (defun idlwave-do-find-module (name type class
7810 (let ((name1 (idlwave-make-full-name class name))
7815 (setq entry (idlwave-best-rinfo-assq name type class (idlwave-routines)
7826 (if class
7827 (format "%s__define.pro" (downcase class))
7917 (class (nth 2 module)))
7919 (stringp class))
7925 (defun idlwave-find-inherited-class (name type class)
7927 (let ((entry (idlwave-best-rinfo-assoc name type class (idlwave-routines))))
7930 class)))
7948 (class (match-string 1 string)))
7951 (idlwave-sintern-class class)))))
7954 (defun idlwave-fix-keywords (name type class keywords
7970 class)
7973 (setq class (idlwave-sintern-class (match-string 1 string)))
7974 (setq idlwave-current-obj_new-class class)
7981 class
7986 (when (eq class t)
8002 (stringp class)
8038 (class (nth 2 module))
8040 (entry (idlwave-best-rinfo-assoc name type class (idlwave-routines)))
8091 (defun idlwave-display-calling-sequence (name type class
8094 (let* ((initial-class (or initial-class class))
8095 (entry (or (idlwave-best-rinfo-assq name type class
8097 (idlwave-rinfo-assq name type class
8100 (class (or (nth 2 entry) class))
8104 (all dtwins)
8118 (data (list name type class (current-buffer) nil initial-class))
8123 (setq keywords (idlwave-fix-keywords name type class keywords))
8145 'data (cons 'class data)))
8152 (if (equal (downcase c) (downcase class))
8166 (insert (if class
8167 (format calling-seq class name class name class name)
8197 (setq cnt 1 total (length all))
8199 (while (setq entry (pop all))
8216 (when (and all (> cnt idlwave-rinfo-max-source-lines))
8221 (setq all nil)))
8342 (let (data id name type class buf bufwin source link keyword
8349 name (nth 1 data) type (nth 2 data) class (nth 3 data)
8355 (cond ((eq id 'class) ; Switch class being displayed
8362 (idlwave-online-help link name type class))
8369 (list (list name type class source ""))))
8370 (idlwave-help-get-special-help name type class nil))
8375 (idlwave-do-find-module name type class source)
8386 (idlwave-online-help link name type class keyword)
8563 (class (nth 2 entry))
8569 (eq class (nth 2 candidate)))
8571 (if (setq candidate (idlwave-rinfo-assq name type class
8641 (let ((name (car a)) (type (nth 1 a)) (class (nth 2 a)))
8643 ((not (equal (idlwave-downcase-safe class)
8647 ((null class) t)
8648 (t (string< (downcase class) (downcase (nth 2 b))))))
8987 (customize-browse 'idlwave))
9000 ,(customize-menu-create 'idlwave)
9098 (provide 'idlwave)