[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/progmodes/cc-menus.el
From: |
Juanma Barranquero |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/progmodes/cc-menus.el |
Date: |
Tue, 04 Feb 2003 08:24:40 -0500 |
Index: emacs/lisp/progmodes/cc-menus.el
diff -c emacs/lisp/progmodes/cc-menus.el:1.23
emacs/lisp/progmodes/cc-menus.el:1.24
*** emacs/lisp/progmodes/cc-menus.el:1.23 Wed Dec 4 06:48:12 2002
--- emacs/lisp/progmodes/cc-menus.el Tue Feb 4 08:24:34 2003
***************
*** 125,131 ****
"[ \t]*([^)]*)[ \t]*)[ \t]*[^ \t;]" ; see above
) 1)))
;; Class definitions
! ("Class"
,(concat
"^" ; beginning of line is required
"\\(template[ \t]*<[^>]+>[ \t]*\\)?" ; there may be a `template
<...>'
--- 125,131 ----
"[ \t]*([^)]*)[ \t]*)[ \t]*[^ \t;]" ; see above
) 1)))
;; Class definitions
! ("Class"
,(concat
"^" ; beginning of line is required
"\\(template[ \t]*<[^>]+>[ \t]*\\)?" ; there may be a `template
<...>'
***************
*** 137,143 ****
"\\([ \t\n]\\|\\\\\n\\)*[:{]"
) 3))
"Imenu generic expression for C++ mode. See `imenu-generic-expression'.")
!
(defvar cc-imenu-c-generic-expression
cc-imenu-c++-generic-expression
"Imenu generic expression for C mode. See `imenu-generic-expression'.")
--- 137,143 ----
"\\([ \t\n]\\|\\\\\n\\)*[:{]"
) 3))
"Imenu generic expression for C++ mode. See `imenu-generic-expression'.")
!
(defvar cc-imenu-c-generic-expression
cc-imenu-c++-generic-expression
"Imenu generic expression for C mode. See `imenu-generic-expression'.")
***************
*** 155,165 ****
"[][a-zA-Z,_1-9\n \t]*" ; arguments
")[ \t]*"
; "[^;(]"
! "[,a-zA-Z_1-9\n \t]*{"
) 6))
"Imenu generic expression for Java mode. See `imenu-generic-expression'.")
! ;; *Warning for cc-mode developers*
;;
;; `cc-imenu-objc-generic-expression' elements depend on
;; `cc-imenu-c++-generic-expression'. So if you change this
--- 155,165 ----
"[][a-zA-Z,_1-9\n \t]*" ; arguments
")[ \t]*"
; "[^;(]"
! "[,a-zA-Z_1-9\n \t]*{"
) 6))
"Imenu generic expression for Java mode. See `imenu-generic-expression'.")
! ;; *Warning for cc-mode developers*
;;
;; `cc-imenu-objc-generic-expression' elements depend on
;; `cc-imenu-c++-generic-expression'. So if you change this
***************
*** 169,176 ****
;; order to know where the each regexp *group \\(foobar\\)* elements
;; are started.
;;
! ;; *-index variables are initialized during
`cc-imenu-objc-generic-expression'
! ;; being initialized.
;;
;; Internal variables
--- 169,176 ----
;; order to know where the each regexp *group \\(foobar\\)* elements
;; are started.
;;
! ;; *-index variables are initialized during `cc-imenu-objc-generic-expression'
! ;; being initialized.
;;
;; Internal variables
***************
*** 179,188 ****
(defvar cc-imenu-objc-generic-expression-proto-index nil)
(defvar cc-imenu-objc-generic-expression-objc-base-index nil)
! (defvar cc-imenu-objc-generic-expression
! (concat
;;
! ;; For C
;;
;; > Special case to match a line like `main() {}'
;; > e.g. no return type, not even on the previous line.
--- 179,188 ----
(defvar cc-imenu-objc-generic-expression-proto-index nil)
(defvar cc-imenu-objc-generic-expression-objc-base-index nil)
! (defvar cc-imenu-objc-generic-expression
! (concat
;;
! ;; For C
;;
;; > Special case to match a line like `main() {}'
;; > e.g. no return type, not even on the previous line.
***************
*** 198,204 ****
;; > `int main _PROTO( (int argc,char *argv[]) )'.
;; Pick a token by (match-string 5)
(if cc-imenu-c-prototype-macro-regexp
! (concat
"\\|"
(car (cdr (nth 3 cc-imenu-c++-generic-expression))) ; -> index += 1
(prog2 (setq cc-imenu-objc-generic-expression-objc-base-index 6) "")
--- 198,204 ----
;; > `int main _PROTO( (int argc,char *argv[]) )'.
;; Pick a token by (match-string 5)
(if cc-imenu-c-prototype-macro-regexp
! (concat
"\\|"
(car (cdr (nth 3 cc-imenu-c++-generic-expression))) ; -> index += 1
(prog2 (setq cc-imenu-objc-generic-expression-objc-base-index 6) "")
***************
*** 210,229 ****
;; For Objective-C
;; Pick a token by (match-string 5 or 6)
;;
! "\\|\\("
"^[-+][:a-zA-Z0-9()*_<>\n\t ]*[;{]" ; Methods
! "\\|"
! "address@hidden ]+[a-zA-Z0-9_]+[\t ]*:"
! "\\|"
"address@hidden ]+[a-zA-Z0-9_]+[\t ]*([a-zA-Z0-9_]+)"
! "\\|"
;; For NSObject, NSProxy and Object... They don't have super class.
"address@hidden ]+[a-zA-Z0-9_]+[\t ]*.*$"
! "\\|"
"address@hidden ]+[a-zA-Z0-9_]+[\t ]*([a-zA-Z0-9_]+)"
! "\\|"
"address@hidden ]+[a-zA-Z0-9_]+"
! "\\|"
"address@hidden ]+[a-zA-Z0-9_]+" "\\)")
"Imenu generic expression for ObjC mode. See `imenu-generic-expression'.")
--- 210,229 ----
;; For Objective-C
;; Pick a token by (match-string 5 or 6)
;;
! "\\|\\("
"^[-+][:a-zA-Z0-9()*_<>\n\t ]*[;{]" ; Methods
! "\\|"
! "address@hidden ]+[a-zA-Z0-9_]+[\t ]*:"
! "\\|"
"address@hidden ]+[a-zA-Z0-9_]+[\t ]*([a-zA-Z0-9_]+)"
! "\\|"
;; For NSObject, NSProxy and Object... They don't have super class.
"address@hidden ]+[a-zA-Z0-9_]+[\t ]*.*$"
! "\\|"
"address@hidden ]+[a-zA-Z0-9_]+[\t ]*([a-zA-Z0-9_]+)"
! "\\|"
"address@hidden ]+[a-zA-Z0-9_]+"
! "\\|"
"address@hidden ]+[a-zA-Z0-9_]+" "\\)")
"Imenu generic expression for ObjC mode. See `imenu-generic-expression'.")
***************
*** 231,243 ****
;; Imenu support for objective-c uses functions.
(defsubst cc-imenu-objc-method-to-selector (method)
"Return the objc selector style string of METHOD.
! Example:
- perform: (SEL)aSelector withObject: object1 withObject: object2; /* METHOD
*/
=>
-perform:withObject:withObject:withObject: /* selector */"
(let ((return "") ; String to be returned
! (p 0) ; Current scanning position in METHOD
! (pmax (length method)) ;
char ; Current scanning target
(betweenparen 0) ; CHAR is in parentheses.
argreq ; An argument is required.
--- 231,243 ----
;; Imenu support for objective-c uses functions.
(defsubst cc-imenu-objc-method-to-selector (method)
"Return the objc selector style string of METHOD.
! Example:
- perform: (SEL)aSelector withObject: object1 withObject: object2; /* METHOD
*/
=>
-perform:withObject:withObject:withObject: /* selector */"
(let ((return "") ; String to be returned
! (p 0) ; Current scanning position in METHOD
! (pmax (length method)) ;
char ; Current scanning target
(betweenparen 0) ; CHAR is in parentheses.
argreq ; An argument is required.
***************
*** 253,269 ****
(and (<= ?A char) (<= char ?Z))
(and (<= ?0 char) (<= char ?9))
(= ?_ char)))
! (if argreq
(setq inargvar t
argreq nil)
(setq return (concat return (char-to-string char)))))
;; Or a white space?
! ((and inargvar (or (eq ?\ char) (eq ?\n char))
(setq inargvar nil)))
;; Or a method separator?
;; If a method separator, the next token will be an argument variable.
! ((eq ?: char)
! (setq argreq t
return (concat return (char-to-string char))))
;; Or an open parentheses?
((eq ?\( char)
--- 253,269 ----
(and (<= ?A char) (<= char ?Z))
(and (<= ?0 char) (<= char ?9))
(= ?_ char)))
! (if argreq
(setq inargvar t
argreq nil)
(setq return (concat return (char-to-string char)))))
;; Or a white space?
! ((and inargvar (or (eq ?\ char) (eq ?\n char))
(setq inargvar nil)))
;; Or a method separator?
;; If a method separator, the next token will be an argument variable.
! ((eq ?: char)
! (setq argreq t
return (concat return (char-to-string char))))
;; Or an open parentheses?
((eq ?\( char)
***************
*** 277,283 ****
"Remove all spaces and tabs from STR."
(let ((return "")
(p 0)
! (max (length str))
char)
(while (< p max)
(setq char (aref str p))
--- 277,283 ----
"Remove all spaces and tabs from STR."
(let ((return "")
(p 0)
! (max (length str))
char)
(while (< p max)
(setq char (aref str p))
***************
*** 294,300 ****
;;
;; OBJC, Cnoreturn, Cgeneralfunc, Cproto are constants.
;;
! ;; *Warning for developers*
;; These constants depend on `cc-imenu-c++-generic-expression'.
;;
(OBJC cc-imenu-objc-generic-expression-objc-base-index)
--- 294,300 ----
;;
;; OBJC, Cnoreturn, Cgeneralfunc, Cproto are constants.
;;
! ;; *Warning for developers*
;; These constants depend on `cc-imenu-c++-generic-expression'.
;;
(OBJC cc-imenu-objc-generic-expression-objc-base-index)
***************
*** 310,322 ****
toplist
stupid
str
! str2
(intflen (length "@interface"))
(implen (length "@implementation"))
(prtlen (length "@protocol"))
(func
;;
! ;; Does this emacs has buffer-substring-no-properties?
;;
(if (fboundp 'buffer-substring-no-properties)
'buffer-substring-no-properties
--- 310,322 ----
toplist
stupid
str
! str2
(intflen (length "@interface"))
(implen (length "@implementation"))
(prtlen (length "@protocol"))
(func
;;
! ;; Does this emacs has buffer-substring-no-properties?
;;
(if (fboundp 'buffer-substring-no-properties)
'buffer-substring-no-properties
***************
*** 326,332 ****
;;
(while (re-search-backward cc-imenu-objc-generic-expression nil t)
(imenu-progress-message stupid)
! (setq langnum (if (match-beginning OBJC)
OBJC
(cond
((match-beginning Cproto) Cproto)
--- 326,332 ----
;;
(while (re-search-backward cc-imenu-objc-generic-expression nil t)
(imenu-progress-message stupid)
! (setq langnum (if (match-beginning OBJC)
OBJC
(cond
((match-beginning Cproto) Cproto)
***************
*** 334,340 ****
((match-beginning Cnoreturn) Cnoreturn))))
(setq str (funcall func (match-beginning langnum) (match-end langnum)))
;;
! (cond
;;
;; C
;;
--- 334,340 ----
((match-beginning Cnoreturn) Cnoreturn))))
(setq str (funcall func (match-beginning langnum) (match-end langnum)))
;;
! (cond
;;
;; C
;;
***************
*** 342,348 ****
(setq clist (cons (cons str (match-beginning langnum)) clist)))
;;
;; ObjC
! ;;
;; An instance Method
((eq (aref str 0) ?-)
(setq str (concat "-" (cc-imenu-objc-method-to-selector str)))
--- 342,348 ----
(setq clist (cons (cons str (match-beginning langnum)) clist)))
;;
;; ObjC
! ;;
;; An instance Method
((eq (aref str 0) ?-)
(setq str (concat "-" (cc-imenu-objc-method-to-selector str)))
***************
*** 355,364 ****
(setq methodlist (cons (cons str
(match-beginning langnum))
methodlist)))
! ;; Interface or implementation or protocol
((eq (aref str 0) ?@)
(setq classcount (1+ classcount))
! (cond
((and (> (length str) implen)
(string= (substring str 0 implen) "@implementation"))
(setq str (substring str implen)
--- 355,364 ----
(setq methodlist (cons (cons str
(match-beginning langnum))
methodlist)))
! ;; Interface or implementation or protocol
((eq (aref str 0) ?@)
(setq classcount (1+ classcount))
! (cond
((and (> (length str) implen)
(string= (substring str 0 implen) "@implementation"))
(setq str (substring str implen)
***************
*** 376,382 ****
(setq toplist (cons nil (cons (cons str
methodlist) toplist))
methodlist nil))))
! ;;
(imenu-progress-message stupid 100)
(if (eq (car toplist) nil)
(setq toplist (cdr toplist)))
--- 376,382 ----
(setq toplist (cons nil (cons (cons str
methodlist) toplist))
methodlist nil))))
! ;;
(imenu-progress-message stupid 100)
(if (eq (car toplist) nil)
(setq toplist (cdr toplist)))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lisp/progmodes/cc-menus.el,
Juanma Barranquero <=