aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/cedet/srecode
diff options
context:
space:
mode:
authorLars Ingebrigtsen2019-06-13 18:01:42 +0200
committerLars Ingebrigtsen2019-06-14 14:24:18 +0200
commit7b837cd707753919dea0c14207c11643f7a88e87 (patch)
tree63146c38abe7b66778ebd40e8a05a4f1a7cc1152 /lisp/cedet/srecode
parent07df91d45a950d7bef323b57dc7e46b34997143f (diff)
downloademacs-7b837cd707753919dea0c14207c11643f7a88e87.tar.gz
emacs-7b837cd707753919dea0c14207c11643f7a88e87.zip
Use CLOS-style accessors in oref/oset
* lisp/cedet/srecode/texi.el (srecode-semantic-handle-:texitag): * lisp/cedet/srecode/table.el (srecode-mode-table-new): (srecode-dump): * lisp/cedet/srecode/srt-mode.el (srecode-parse-this-macro): (semantic-analyze-possible-completions): * lisp/cedet/srecode/semantic.el (srecode-compound-toString): (srecode-semantic-apply-tag-to-dict-default): * lisp/cedet/srecode/mode.el (srecode-minor-mode-templates-menu): (srecode-edit): * lisp/cedet/srecode/insert.el (srecode-insert-method): (srecode-inserter-apply-state): (srecode-insert-ask-default): (srecode-insert-method-ask): (srecode-insert-method-field): (srecode-insert-method-helper): (srecode-parse-input): (srecode-match-end): (srecode-insert-include-lookup): (srecode-insert-method): * lisp/cedet/srecode/find.el (srecode-template-table-in-project-p): (srecode-template-get-table): (srecode-template-get-table-for-binding): (srecode-all-template-hash): * lisp/cedet/srecode/extract.el (srecode-inserter-extract): (srecode-inserter-extract): * lisp/cedet/srecode/el.el (srecode-semantic-apply-tag-to-dict): * lisp/cedet/srecode/dictionary.el (initialize-instance): (srecode-dictionary-add-template-table): (srecode-compound-toString): * lisp/cedet/srecode/cpp.el (srecode-semantic-apply-tag-to-dict): * lisp/cedet/srecode/compile.el (srecode-compile-template-table): (srecode-dump): * lisp/cedet/srecode/args.el (srecode-semantic-handle-:project): * lisp/cedet/semantic/texi.el (semantic-analyze-possible-completions): * lisp/cedet/semantic/symref/list.el (semantic-symref-results-dump): (semantic-symref-list-create-macro-on-open-hit): (semantic-symref-list-rename-open-hits): (semantic-symref-list-map-open-hits): * lisp/cedet/semantic/symref/idutils.el (semantic-symref-perform-search): (semantic-symref-parse-tool-output-one-line): * lisp/cedet/semantic/symref/global.el (semantic-symref-perform-search): (semantic-symref-parse-tool-output-one-line): * lisp/cedet/semantic/symref/cscope.el (semantic-symref-perform-search): (semantic-symref-parse-tool-output-one-line): * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-ring-to-assoc-list): * lisp/cedet/semantic/grammar.el (semantic-analyze-possible-completions): * lisp/cedet/semantic/decorate/include.el (semantic-decoration-include-describe): * lisp/cedet/semantic/debug.el (semantic-debug-highlight-lexical-token): (semantic-debug-highlight-rule): * lisp/cedet/semantic/db-typecache.el (semanticdb-typecache-for-database): * lisp/cedet/semantic/complete.el (semantic-collector-calculate-completions-raw): * lisp/cedet/semantic/bovine/make.el (semantic-analyze-possible-completions): * lisp/cedet/semantic/analyze/refs.el (semantic-analyze-refs-impl): (semantic-analyze-refs-proto): * lisp/cedet/semantic/analyze/debug.el (semantic-analyzer-debug-describe-scope): * lisp/cedet/semantic/analyze.el (semantic-analyze-interesting-tag): (semantic-analyze-interesting-tag): (semantic-analyze-pulse): * lisp/cedet/ede/util.el (ede-update-version): * lisp/cedet/ede/shell.el (ede-shell-run-something): * lisp/cedet/ede/project-am.el (project-am-load-makefile): (project-rescan): (project-am-macro): (ede-buffer-mine): (project-compile-target-command): (project-am-package-info): * lisp/cedet/ede/files.el (ede--project-inode): (ede-directory-get-open-project): (ede-directory-get-toplevel-open-project): (ede-find-subproject-for-directory): (ede-toplevel-project): * lisp/cedet/ede/cpp-root.el (initialize-instance): (project-compile-project): (project-compile-target): * lisp/cedet/ede/config.el (ede-config-get-configuration): (project-debug-target): (project-run-target): (project-compile-project): (ede-preprocessor-map): (ede-java-classpath): * lisp/cedet/ede/base.el (ede-normalize-file/directory): Use CLOS-style oref/oset accessors instead of eieio-style :colon accessors. This avoids compilation warnings and is allegedly faster.
Diffstat (limited to 'lisp/cedet/srecode')
-rw-r--r--lisp/cedet/srecode/args.el4
-rw-r--r--lisp/cedet/srecode/compile.el10
-rw-r--r--lisp/cedet/srecode/cpp.el2
-rw-r--r--lisp/cedet/srecode/dictionary.el8
-rw-r--r--lisp/cedet/srecode/el.el2
-rw-r--r--lisp/cedet/srecode/extract.el14
-rw-r--r--lisp/cedet/srecode/find.el18
-rw-r--r--lisp/cedet/srecode/insert.el53
-rw-r--r--lisp/cedet/srecode/mode.el10
-rw-r--r--lisp/cedet/srecode/semantic.el7
-rw-r--r--lisp/cedet/srecode/srt-mode.el10
-rw-r--r--lisp/cedet/srecode/table.el22
-rw-r--r--lisp/cedet/srecode/texi.el2
13 files changed, 79 insertions, 83 deletions
diff --git a/lisp/cedet/srecode/args.el b/lisp/cedet/srecode/args.el
index 7f5600083ee..086f369b7f2 100644
--- a/lisp/cedet/srecode/args.el
+++ b/lisp/cedet/srecode/args.el
@@ -174,8 +174,8 @@ do not contain any text from preceding or following text."
174 (srecode-dictionary-set-value dict "PROJECT_FILENAME" relfname) 174 (srecode-dictionary-set-value dict "PROJECT_FILENAME" relfname)
175 (srecode-dictionary-set-value dict "PROJECT_DIRECTORY" reldir) 175 (srecode-dictionary-set-value dict "PROJECT_DIRECTORY" reldir)
176 (srecode-dictionary-set-value dict "PROJECT_NAME" (ede-name (ede-toplevel))) 176 (srecode-dictionary-set-value dict "PROJECT_NAME" (ede-name (ede-toplevel)))
177 (srecode-dictionary-set-value dict "PROJECT_VERSION" (oref (ede-toplevel) :version)) 177 (srecode-dictionary-set-value dict "PROJECT_VERSION"
178 ) 178 (oref (ede-toplevel) version)))
179 ;; If there is no EDE project, then put in some base values. 179 ;; If there is no EDE project, then put in some base values.
180 (srecode-dictionary-set-value dict "PROJECT_FILENAME" bfn) 180 (srecode-dictionary-set-value dict "PROJECT_FILENAME" bfn)
181 (srecode-dictionary-set-value dict "PROJECT_DIRECTORY" dir) 181 (srecode-dictionary-set-value dict "PROJECT_DIRECTORY" dir)
diff --git a/lisp/cedet/srecode/compile.el b/lisp/cedet/srecode/compile.el
index 204211b5e53..ff640c020f3 100644
--- a/lisp/cedet/srecode/compile.el
+++ b/lisp/cedet/srecode/compile.el
@@ -547,8 +547,8 @@ A list of defined variables VARS provides a variable table."
547 547
548 (while lp 548 (while lp
549 549
550 (let* ((objname (oref (car lp) :object-name)) 550 (let* ((objname (oref (car lp) object-name))
551 (context (oref (car lp) :context)) 551 (context (oref (car lp) context))
552 (globalname (concat context ":" objname)) 552 (globalname (concat context ":" objname))
553 ) 553 )
554 554
@@ -583,7 +583,7 @@ A list of defined variables VARS provides a variable table."
583 (tmpl (oref table templates))) 583 (tmpl (oref table templates)))
584 ;; Loop over all the templates, and xref. 584 ;; Loop over all the templates, and xref.
585 (while tmpl 585 (while tmpl
586 (oset (car tmpl) :table table) 586 (oset (car tmpl) table table)
587 (setq tmpl (cdr tmpl)))) 587 (setq tmpl (cdr tmpl))))
588 )) 588 ))
589 589
@@ -644,9 +644,9 @@ Argument INDENT specifies the indentation level for the list."
644 "Dump the state of the SRecode template inserter INS." 644 "Dump the state of the SRecode template inserter INS."
645 (princ "INS: \"") 645 (princ "INS: \"")
646 (princ (eieio-object-name-string ins)) 646 (princ (eieio-object-name-string ins))
647 (when (oref ins :secondname) 647 (when (oref ins secondname)
648 (princ "\" : \"") 648 (princ "\" : \"")
649 (princ (oref ins :secondname))) 649 (princ (oref ins secondname)))
650 (princ "\" type \"") 650 (princ "\" type \"")
651 (let* ((oc (symbol-name (eieio-object-class ins))) 651 (let* ((oc (symbol-name (eieio-object-class ins)))
652 (junk (string-match "srecode-template-inserter-" oc)) 652 (junk (string-match "srecode-template-inserter-" oc))
diff --git a/lisp/cedet/srecode/cpp.el b/lisp/cedet/srecode/cpp.el
index cedc195433c..306c60f1b61 100644
--- a/lisp/cedet/srecode/cpp.el
+++ b/lisp/cedet/srecode/cpp.el
@@ -122,7 +122,7 @@ specified in a C file."
122 (srecode-semantic-apply-tag-to-dict-default tag-wrapper dict) 122 (srecode-semantic-apply-tag-to-dict-default tag-wrapper dict)
123 123
124 ;; Pull out the tag for the individual pieces. 124 ;; Pull out the tag for the individual pieces.
125 (let* ((tag (oref tag-wrapper :prime)) 125 (let* ((tag (oref tag-wrapper prime))
126 (class (semantic-tag-class tag))) 126 (class (semantic-tag-class tag)))
127 127
128 ;; Add additional information based on the class of the tag. 128 ;; Add additional information based on the class of the tag.
diff --git a/lisp/cedet/srecode/dictionary.el b/lisp/cedet/srecode/dictionary.el
index 4b1f28babd5..8508371d53b 100644
--- a/lisp/cedet/srecode/dictionary.el
+++ b/lisp/cedet/srecode/dictionary.el
@@ -122,7 +122,7 @@ Makes sure that :value is compiled."
122 122
123 (cl-call-next-method this (nreverse newfields)) 123 (cl-call-next-method this (nreverse newfields))
124 (when (not (slot-boundp this 'compiled)) 124 (when (not (slot-boundp this 'compiled))
125 (let ((val (oref this :value)) 125 (let ((val (oref this value))
126 (comp nil)) 126 (comp nil))
127 (while val 127 (while val
128 (let ((nval (car val)) 128 (let ((nval (car val))
@@ -141,7 +141,7 @@ Makes sure that :value is compiled."
141 (error "Don't know how to handle variable value %S" nval))) 141 (error "Don't know how to handle variable value %S" nval)))
142 ) 142 )
143 (setq val (cdr val))) 143 (setq val (cdr val)))
144 (oset this :compiled (nreverse comp)))))) 144 (oset this compiled (nreverse comp))))))
145 145
146;;; DICTIONARY METHODS 146;;; DICTIONARY METHODS
147;; 147;;
@@ -223,7 +223,7 @@ TPL is an object representing a compiled template file."
223 ;; Tables are sorted with highest priority first, useful for looking 223 ;; Tables are sorted with highest priority first, useful for looking
224 ;; up templates, but this means we need to install the variables in 224 ;; up templates, but this means we need to install the variables in
225 ;; reverse order so higher priority variables override lower ones. 225 ;; reverse order so higher priority variables override lower ones.
226 (let ((tabs (reverse (oref tpl :tables)))) 226 (let ((tabs (reverse (oref tpl tables))))
227 (require 'srecode/find) ; For srecode-template-table-in-project-p 227 (require 'srecode/find) ; For srecode-template-table-in-project-p
228 (while tabs 228 (while tabs
229 (when (srecode-template-table-in-project-p (car tabs)) 229 (when (srecode-template-table-in-project-p (car tabs))
@@ -518,7 +518,7 @@ inserted with a new editable field.")
518 (let* ((dv (oref cp defaultvalue)) 518 (let* ((dv (oref cp defaultvalue))
519 (sti (oref cp firstinserter)) 519 (sti (oref cp firstinserter))
520 (start (point)) 520 (start (point))
521 (name (oref sti :object-name))) 521 (name (oref sti object-name)))
522 522
523 (cond 523 (cond
524 ;; No default value. 524 ;; No default value.
diff --git a/lisp/cedet/srecode/el.el b/lisp/cedet/srecode/el.el
index 0bc8e1f450c..33b75cad692 100644
--- a/lisp/cedet/srecode/el.el
+++ b/lisp/cedet/srecode/el.el
@@ -86,7 +86,7 @@ Calls `srecode-semantic-apply-tag-to-dict-default' first."
86 (srecode-semantic-apply-tag-to-dict-default tagobj dict) 86 (srecode-semantic-apply-tag-to-dict-default tagobj dict)
87 87
88 ;; Pull out the tag for the individual pieces. 88 ;; Pull out the tag for the individual pieces.
89 (let* ((tag (oref tagobj :prime)) 89 (let* ((tag (oref tagobj prime))
90 (doc (semantic-tag-docstring tag))) 90 (doc (semantic-tag-docstring tag)))
91 91
92 ;; It is much more common to have doc on ELisp. 92 ;; It is much more common to have doc on ELisp.
diff --git a/lisp/cedet/srecode/extract.el b/lisp/cedet/srecode/extract.el
index acb200a46ec..c46ff7e38f7 100644
--- a/lisp/cedet/srecode/extract.el
+++ b/lisp/cedet/srecode/extract.el
@@ -161,10 +161,9 @@ Return nil as this inserter will extract nothing."
161Return t if something was extracted. 161Return t if something was extracted.
162Return nil if this inserter doesn't need to extract anything." 162Return nil if this inserter doesn't need to extract anything."
163 (srecode-dictionary-set-value vdict 163 (srecode-dictionary-set-value vdict
164 (oref ins :object-name) 164 (oref ins object-name)
165 (buffer-substring-no-properties 165 (buffer-substring-no-properties
166 start end) 166 start end))
167 )
168 t) 167 t)
169 168
170;;; Section Inserter 169;;; Section Inserter
@@ -178,10 +177,9 @@ Return nil if this inserter doesn't need to extract anything."
178 "Extract text from START/END and store in INDICT. 177 "Extract text from START/END and store in INDICT.
179Return the starting location of the first plain-text match. 178Return the starting location of the first plain-text match.
180Return nil if nothing was extracted." 179Return nil if nothing was extracted."
181 (let ((name (oref ins :object-name)) 180 (let ((name (oref ins object-name))
182 (subdict (srecode-create-dictionary indict)) 181 (subdict (srecode-create-dictionary indict))
183 (allsubdict nil) 182 (allsubdict nil))
184 )
185 183
186 ;; Keep extracting till we can extract no more. 184 ;; Keep extracting till we can extract no more.
187 (while (condition-case nil 185 (while (condition-case nil
@@ -217,10 +215,10 @@ Return nil if nothing was extracted."
217 ;; There are two modes for includes. One is with no dict, 215 ;; There are two modes for includes. One is with no dict,
218 ;; so it is inserted straight. If the dict has a name, then 216 ;; so it is inserted straight. If the dict has a name, then
219 ;; we need to run once per dictionary occurrence. 217 ;; we need to run once per dictionary occurrence.
220 (if (not (string= (oref ins :object-name) "")) 218 (if (not (string= (oref ins object-name) ""))
221 ;; With a name, do the insertion. 219 ;; With a name, do the insertion.
222 (let ((subdict (srecode-dictionary-add-section-dictionary 220 (let ((subdict (srecode-dictionary-add-section-dictionary
223 dict (oref ins :object-name)))) 221 dict (oref ins object-name))))
224 (error "Need to implement include w/ name extractor") 222 (error "Need to implement include w/ name extractor")
225 ;; Recurse into the new template while no errors. 223 ;; Recurse into the new template while no errors.
226 (while (condition-case nil 224 (while (condition-case nil
diff --git a/lisp/cedet/srecode/find.el b/lisp/cedet/srecode/find.el
index f5ddc619b8c..f130edcee8d 100644
--- a/lisp/cedet/srecode/find.el
+++ b/lisp/cedet/srecode/find.el
@@ -100,7 +100,7 @@ all template files for that application will be loaded."
100 "Return non-nil if the table TAB can be used in the current project. 100 "Return non-nil if the table TAB can be used in the current project.
101If TAB has a :project set, check that the directories match. 101If TAB has a :project set, check that the directories match.
102If TAB is nil, then always return t." 102If TAB is nil, then always return t."
103 (let ((proj (oref tab :project))) 103 (let ((proj (oref tab project)))
104 ;; Return t if the project wasn't set. 104 ;; Return t if the project wasn't set.
105 (if (not proj) t 105 (if (not proj) t
106 ;; If the project directory was set, let's check it. 106 ;; If the project directory was set, let's check it.
@@ -139,10 +139,10 @@ Optional argument APPLICATION restricts searches to only template tables
139belonging to a specific application. If APPLICATION is nil, then only 139belonging to a specific application. If APPLICATION is nil, then only
140tables that do not belong to an application will be searched." 140tables that do not belong to an application will be searched."
141 (let* ((mt tab) 141 (let* ((mt tab)
142 (tabs (oref mt :tables)) 142 (tabs (oref mt tables))
143 (ans nil)) 143 (ans nil))
144 (while (and (not ans) tabs) 144 (while (and (not ans) tabs)
145 (let ((app (oref (car tabs) :application))) 145 (let ((app (oref (car tabs) application)))
146 (when (or (and (not application) (null app)) 146 (when (or (and (not application) (null app))
147 (and application (eq app application))) 147 (and application (eq app application)))
148 (setq ans (srecode-template-get-table (car tabs) template-name 148 (setq ans (srecode-template-get-table (car tabs) template-name
@@ -150,7 +150,7 @@ tables that do not belong to an application will be searched."
150 (setq tabs (cdr tabs)))) 150 (setq tabs (cdr tabs))))
151 (or ans 151 (or ans
152 ;; Recurse to the default. 152 ;; Recurse to the default.
153 (when (not (equal (oref tab :major-mode) 'default)) 153 (when (not (equal (oref tab major-mode) 'default))
154 (srecode-template-get-table (srecode-get-mode-table 'default) 154 (srecode-template-get-table (srecode-get-mode-table 'default)
155 template-name context application))))) 155 template-name context application)))))
156 156
@@ -199,10 +199,10 @@ Optional argument APPLICATION restricts searches to only template tables
199belonging to a specific application. If APPLICATION is nil, then only 199belonging to a specific application. If APPLICATION is nil, then only
200tables that do not belong to an application will be searched." 200tables that do not belong to an application will be searched."
201 (let* ((mt tab) 201 (let* ((mt tab)
202 (tabs (oref mt :tables)) 202 (tabs (oref mt tables))
203 (ans nil)) 203 (ans nil))
204 (while (and (not ans) tabs) 204 (while (and (not ans) tabs)
205 (let ((app (oref (car tabs) :application))) 205 (let ((app (oref (car tabs) application)))
206 (when (or (and (not application) (null app)) 206 (when (or (and (not application) (null app))
207 (and application (eq app application))) 207 (and application (eq app application)))
208 (setq ans (srecode-template-get-table-for-binding 208 (setq ans (srecode-template-get-table-for-binding
@@ -210,7 +210,7 @@ tables that do not belong to an application will be searched."
210 (setq tabs (cdr tabs)))) 210 (setq tabs (cdr tabs))))
211 (or ans 211 (or ans
212 ;; Recurse to the default. 212 ;; Recurse to the default.
213 (when (not (equal (oref tab :major-mode) 'default)) 213 (when (not (equal (oref tab major-mode) 'default))
214 (srecode-template-get-table-for-binding 214 (srecode-template-get-table-for-binding
215 (srecode-get-mode-table 'default) binding context))))) 215 (srecode-get-mode-table 'default) binding context)))))
216;;; Interactive 216;;; Interactive
@@ -241,10 +241,10 @@ templates."
241 241
242 ;; Load up the hash table for our current mode. 242 ;; Load up the hash table for our current mode.
243 (let* ((mt (srecode-get-mode-table mmode)) 243 (let* ((mt (srecode-get-mode-table mmode))
244 (tabs (when mt (oref mt :tables)))) 244 (tabs (when mt (oref mt tables))))
245 (dolist (tab tabs) 245 (dolist (tab tabs)
246 ;; Exclude templates for a particular application. 246 ;; Exclude templates for a particular application.
247 (when (and (not (oref tab :application)) 247 (when (and (not (oref tab application))
248 (srecode-template-table-in-project-p tab)) 248 (srecode-template-table-in-project-p tab))
249 (maphash (lambda (key temp) 249 (maphash (lambda (key temp)
250 (when (or (not predicate) 250 (when (or (not predicate)
diff --git a/lisp/cedet/srecode/insert.el b/lisp/cedet/srecode/insert.el
index 66bdf785c63..d23597ec479 100644
--- a/lisp/cedet/srecode/insert.el
+++ b/lisp/cedet/srecode/insert.el
@@ -471,12 +471,11 @@ If SECONDNAME is nil, return VALUE."
471 dictionary) 471 dictionary)
472 "Insert the STI inserter." 472 "Insert the STI inserter."
473 ;; Convert the name into a name/fcn pair 473 ;; Convert the name into a name/fcn pair
474 (let* ((name (oref sti :object-name)) 474 (let* ((name (oref sti object-name))
475 (fcnpart (oref sti :secondname)) 475 (fcnpart (oref sti secondname))
476 (val (srecode-dictionary-lookup-name 476 (val (srecode-dictionary-lookup-name
477 dictionary name)) 477 dictionary name))
478 (do-princ t) 478 (do-princ t))
479 )
480 ;; Alert if a macro wasn't found. 479 ;; Alert if a macro wasn't found.
481 (when (not val) 480 (when (not val)
482 (message "Warning: macro %S was not found in the dictionary." name) 481 (message "Warning: macro %S was not found in the dictionary." name)
@@ -545,12 +544,12 @@ Loop over the prompts to see if we have a match."
545 ) 544 )
546 (while prompts 545 (while prompts
547 (when (string= (semantic-tag-name (car prompts)) 546 (when (string= (semantic-tag-name (car prompts))
548 (oref ins :object-name)) 547 (oref ins object-name))
549 (oset ins :prompt 548 (oset ins prompt
550 (semantic-tag-get-attribute (car prompts) :text)) 549 (semantic-tag-get-attribute (car prompts) :text))
551 (oset ins :defaultfcn 550 (oset ins defaultfcn
552 (semantic-tag-get-attribute (car prompts) :default)) 551 (semantic-tag-get-attribute (car prompts) :default))
553 (oset ins :read-fcn 552 (oset ins read-fcn
554 (or (semantic-tag-get-attribute (car prompts) :read) 553 (or (semantic-tag-get-attribute (car prompts) :read)
555 'read-string)) 554 'read-string))
556 ) 555 )
@@ -561,7 +560,7 @@ Loop over the prompts to see if we have a match."
561 dictionary) 560 dictionary)
562 "Insert the STI inserter." 561 "Insert the STI inserter."
563 (let ((val (srecode-dictionary-lookup-name 562 (let ((val (srecode-dictionary-lookup-name
564 dictionary (oref sti :object-name)))) 563 dictionary (oref sti object-name))))
565 (if val 564 (if val
566 ;; Does some extra work. Oh well. 565 ;; Does some extra work. Oh well.
567 (cl-call-next-method) 566 (cl-call-next-method)
@@ -577,7 +576,7 @@ Loop over the prompts to see if we have a match."
577 ;; the user can use the same name again later. 576 ;; the user can use the same name again later.
578 (srecode-dictionary-set-value 577 (srecode-dictionary-set-value
579 (srecode-root-dictionary dictionary) 578 (srecode-root-dictionary dictionary)
580 (oref sti :object-name) val) 579 (oref sti object-name) val)
581 580
582 ;; Now that this value is safely stowed in the dictionary, 581 ;; Now that this value is safely stowed in the dictionary,
583 ;; we can do what regular inserters do. 582 ;; we can do what regular inserters do.
@@ -587,7 +586,7 @@ Loop over the prompts to see if we have a match."
587 dictionary) 586 dictionary)
588 "Derive the default value for an askable inserter STI. 587 "Derive the default value for an askable inserter STI.
589DICTIONARY is used to derive some values." 588DICTIONARY is used to derive some values."
590 (let ((defaultfcn (oref sti :defaultfcn))) 589 (let ((defaultfcn (oref sti defaultfcn)))
591 (cond 590 (cond
592 ((stringp defaultfcn) 591 ((stringp defaultfcn)
593 defaultfcn) 592 defaultfcn)
@@ -614,13 +613,13 @@ DICTIONARY is used to derive some values."
614Use DICTIONARY to resolve values." 613Use DICTIONARY to resolve values."
615 (let* ((prompt (oref sti prompt)) 614 (let* ((prompt (oref sti prompt))
616 (default (srecode-insert-ask-default sti dictionary)) 615 (default (srecode-insert-ask-default sti dictionary))
617 (reader (oref sti :read-fcn)) 616 (reader (oref sti read-fcn))
618 (val nil) 617 (val nil)
619 ) 618 )
620 (cond ((eq reader 'y-or-n-p) 619 (cond ((eq reader 'y-or-n-p)
621 (if (y-or-n-p (or prompt 620 (if (y-or-n-p (or prompt
622 (format "%s? " 621 (format "%s? "
623 (oref sti :object-name)))) 622 (oref sti object-name))))
624 (setq val default) 623 (setq val default)
625 (setq val ""))) 624 (setq val "")))
626 ((eq reader 'read-char) 625 ((eq reader 'read-char)
@@ -628,14 +627,14 @@ Use DICTIONARY to resolve values."
628 "%c" 627 "%c"
629 (read-char (or prompt 628 (read-char (or prompt
630 (format "Char for %s: " 629 (format "Char for %s: "
631 (oref sti :object-name)))))) 630 (oref sti object-name))))))
632 ) 631 )
633 (t 632 (t
634 (save-excursion 633 (save-excursion
635 (setq val (funcall reader 634 (setq val (funcall reader
636 (or prompt 635 (or prompt
637 (format "Specify %s: " 636 (format "Specify %s: "
638 (oref sti :object-name))) 637 (oref sti object-name)))
639 default 638 default
640 ))))) 639 )))))
641 ;; Return our derived value. 640 ;; Return our derived value.
@@ -648,7 +647,7 @@ Use DICTIONARY to resolve values."
648Use DICTIONARY to resolve values." 647Use DICTIONARY to resolve values."
649 (let* ((default (srecode-insert-ask-default sti dictionary)) 648 (let* ((default (srecode-insert-ask-default sti dictionary))
650 (compound-value 649 (compound-value
651 (srecode-field-value (oref sti :object-name) 650 (srecode-field-value (oref sti object-name)
652 :firstinserter sti 651 :firstinserter sti
653 :defaultvalue default)) 652 :defaultvalue default))
654 ) 653 )
@@ -816,12 +815,12 @@ Arguments ESCAPE-START and ESCAPE-END are the current escape sequences in use."
816Loops over the embedded CODE which was saved here during compilation. 815Loops over the embedded CODE which was saved here during compilation.
817The template to insert is stored in SLOT." 816The template to insert is stored in SLOT."
818 (let ((dicts (srecode-dictionary-lookup-name 817 (let ((dicts (srecode-dictionary-lookup-name
819 dictionary (oref sti :object-name)))) 818 dictionary (oref sti object-name))))
820 (when (not (listp dicts)) 819 (when (not (listp dicts))
821 (srecode-insert-report-error 820 (srecode-insert-report-error
822 dictionary 821 dictionary
823 "Cannot insert section %S from non-section variable." 822 "Cannot insert section %S from non-section variable."
824 (oref sti :object-name))) 823 (oref sti object-name)))
825 ;; If there is no section dictionary, then don't output anything 824 ;; If there is no section dictionary, then don't output anything
826 ;; from this section. 825 ;; from this section.
827 (while dicts 826 (while dicts
@@ -829,7 +828,7 @@ The template to insert is stored in SLOT."
829 (srecode-insert-report-error 828 (srecode-insert-report-error
830 dictionary 829 dictionary
831 "Cannot insert section %S from non-section variable." 830 "Cannot insert section %S from non-section variable."
832 (oref sti :object-name))) 831 (oref sti object-name)))
833 (srecode-insert-subtemplate sti (car dicts) slot) 832 (srecode-insert-subtemplate sti (car dicts) slot)
834 (setq dicts (cdr dicts))))) 833 (setq dicts (cdr dicts)))))
835 834
@@ -860,7 +859,7 @@ applied to the text between the section start and the
860Shorten input until the END token is found. 859Shorten input until the END token is found.
861Return the remains of INPUT." 860Return the remains of INPUT."
862 (let* ((out (srecode-compile-split-code tag input STATE 861 (let* ((out (srecode-compile-split-code tag input STATE
863 (oref ins :object-name)))) 862 (oref ins object-name))))
864 (oset ins template (srecode-template 863 (oset ins template (srecode-template
865 (eieio-object-name-string ins) 864 (eieio-object-name-string ins)
866 :context nil 865 :context nil
@@ -893,7 +892,7 @@ are treated specially.")
893(cl-defmethod srecode-match-end ((ins srecode-template-inserter-section-end) name) 892(cl-defmethod srecode-match-end ((ins srecode-template-inserter-section-end) name)
894 893
895 "For the template inserter INS, do I end a section called NAME?" 894 "For the template inserter INS, do I end a section called NAME?"
896 (string= name (oref ins :object-name))) 895 (string= name (oref ins object-name)))
897 896
898(defclass srecode-template-inserter-include (srecode-template-inserter-subtemplate) 897(defclass srecode-template-inserter-include (srecode-template-inserter-subtemplate)
899 ((key :initform ?> 898 ((key :initform ?>
@@ -924,13 +923,13 @@ Arguments ESCAPE-START and ESCAPE-END are the current escape sequences in use."
924 "For the template inserter STI, lookup the template to include. 923 "For the template inserter STI, lookup the template to include.
925Finds the template with this macro function part and stores it in 924Finds the template with this macro function part and stores it in
926this template instance." 925this template instance."
927 (let ((templatenamepart (oref sti :secondname))) 926 (let ((templatenamepart (oref sti secondname)))
928 ;; If there was no template name, throw an error. 927 ;; If there was no template name, throw an error.
929 (unless templatenamepart 928 (unless templatenamepart
930 (srecode-insert-report-error 929 (srecode-insert-report-error
931 dictionary 930 dictionary
932 "Include macro `%s' needs a template name" 931 "Include macro `%s' needs a template name"
933 (oref sti :object-name))) 932 (oref sti object-name)))
934 933
935 ;; NOTE: We used to cache the template and not look it up a second time, 934 ;; NOTE: We used to cache the template and not look it up a second time,
936 ;; but changes in the template tables can change which template is 935 ;; but changes in the template tables can change which template is
@@ -968,14 +967,14 @@ this template instance."
968 ) 967 )
969 968
970 ;; Store the found template into this object for later use. 969 ;; Store the found template into this object for later use.
971 (oset sti :includedtemplate tmpl)) 970 (oset sti includedtemplate tmpl))
972 971
973 (unless (oref sti includedtemplate) 972 (unless (oref sti includedtemplate)
974 ;; @todo - Call into a debugger to help find the template in question. 973 ;; @todo - Call into a debugger to help find the template in question.
975 (srecode-insert-report-error 974 (srecode-insert-report-error
976 dictionary 975 dictionary
977 "No template \"%s\" found for include macro `%s'" 976 "No template \"%s\" found for include macro `%s'"
978 templatenamepart (oref sti :object-name))))) 977 templatenamepart (oref sti object-name)))))
979 978
980(cl-defmethod srecode-insert-method ((sti srecode-template-inserter-include) 979(cl-defmethod srecode-insert-method ((sti srecode-template-inserter-include)
981 dictionary) 980 dictionary)
@@ -985,7 +984,7 @@ with the dictionaries found in the dictionary."
985 (srecode-insert-include-lookup sti dictionary) 984 (srecode-insert-include-lookup sti dictionary)
986 ;; Insert the template. 985 ;; Insert the template.
987 ;; Our baseclass has a simple way to do this. 986 ;; Our baseclass has a simple way to do this.
988 (if (srecode-dictionary-lookup-name dictionary (oref sti :object-name)) 987 (if (srecode-dictionary-lookup-name dictionary (oref sti object-name))
989 ;; If we have a value, then call the next method 988 ;; If we have a value, then call the next method
990 (srecode-insert-method-helper sti dictionary 'includedtemplate) 989 (srecode-insert-method-helper sti dictionary 'includedtemplate)
991 ;; If we don't have a special dictionary, then just insert with the 990 ;; If we don't have a special dictionary, then just insert with the
@@ -1053,7 +1052,7 @@ template where a ^ inserter occurs."
1053 (lambda (dict) 1052 (lambda (dict)
1054 (let ((srecode-template-inserter-point-override nil)) 1053 (let ((srecode-template-inserter-point-override nil))
1055 (if (srecode-dictionary-lookup-name 1054 (if (srecode-dictionary-lookup-name
1056 dict (oref sti :object-name)) 1055 dict (oref sti object-name))
1057 ;; Insert our sectional part with looping. 1056 ;; Insert our sectional part with looping.
1058 (srecode-insert-method-helper 1057 (srecode-insert-method-helper
1059 sti dict 'template) 1058 sti dict 'template)
diff --git a/lisp/cedet/srecode/mode.el b/lisp/cedet/srecode/mode.el
index a47520e013a..a40b9d09a6f 100644
--- a/lisp/cedet/srecode/mode.el
+++ b/lisp/cedet/srecode/mode.el
@@ -195,7 +195,7 @@ MENU-DEF is the menu to bind this into."
195 ;;(srecode-load-tables-for-mode major-mode) 195 ;;(srecode-load-tables-for-mode major-mode)
196 196
197 (let* ((modetable (srecode-get-mode-table major-mode)) 197 (let* ((modetable (srecode-get-mode-table major-mode))
198 (subtab (when modetable (oref modetable :tables))) 198 (subtab (when modetable (oref modetable tables)))
199 (context nil) 199 (context nil)
200 (active nil) 200 (active nil)
201 (ltab nil) 201 (ltab nil)
@@ -318,17 +318,17 @@ Template is chosen based on the mode of the starting buffer."
318 (if (not temp) 318 (if (not temp)
319 (error "No Template named %s" template-name)) 319 (error "No Template named %s" template-name))
320 ;; We need a template specific table, since tables chain. 320 ;; We need a template specific table, since tables chain.
321 (let ((tab (oref temp :table)) 321 (let ((tab (oref temp table))
322 (names nil) 322 (names nil)
323 ) 323 )
324 (find-file (oref tab :file)) 324 (find-file (oref tab file))
325 (setq names (semantic-find-tags-by-name (oref temp :object-name) 325 (setq names (semantic-find-tags-by-name (oref temp object-name)
326 (current-buffer))) 326 (current-buffer)))
327 (cond ((= (length names) 1) 327 (cond ((= (length names) 1)
328 (semantic-go-to-tag (car names)) 328 (semantic-go-to-tag (car names))
329 (semantic-momentary-highlight-tag (car names))) 329 (semantic-momentary-highlight-tag (car names)))
330 ((> (length names) 1) 330 ((> (length names) 1)
331 (let* ((ctxt (semantic-find-tags-by-name (oref temp :context) 331 (let* ((ctxt (semantic-find-tags-by-name (oref temp context)
332 (current-buffer))) 332 (current-buffer)))
333 (cls (semantic-find-tags-by-class 'context ctxt)) 333 (cls (semantic-find-tags-by-class 'context ctxt))
334 ) 334 )
diff --git a/lisp/cedet/srecode/semantic.el b/lisp/cedet/srecode/semantic.el
index ea11b0e4838..1e1a60e0245 100644
--- a/lisp/cedet/srecode/semantic.el
+++ b/lisp/cedet/srecode/semantic.el
@@ -63,10 +63,9 @@ If FUNCTION is non-nil, then FUNCTION is somehow applied to an
63aspect of the compound value." 63aspect of the compound value."
64 (if (not function) 64 (if (not function)
65 ;; Just format it in some handy dandy way. 65 ;; Just format it in some handy dandy way.
66 (semantic-format-tag-prototype (oref cp :prime)) 66 (semantic-format-tag-prototype (oref cp prime))
67 ;; Otherwise, apply the function to the tag itself. 67 ;; Otherwise, apply the function to the tag itself.
68 (funcall function (oref cp :prime)) 68 (funcall function (oref cp prime))))
69 ))
70 69
71 70
72;;; Managing the `current' tag 71;;; Managing the `current' tag
@@ -106,7 +105,7 @@ variable default values, and other things."
106 (srecode-dictionary-set-value dict "TAG" tagobj) 105 (srecode-dictionary-set-value dict "TAG" tagobj)
107 106
108 ;; Pull out the tag for the individual pieces. 107 ;; Pull out the tag for the individual pieces.
109 (let ((tag (oref tagobj :prime))) 108 (let ((tag (oref tagobj prime)))
110 109
111 (srecode-dictionary-set-value dict "NAME" (semantic-tag-name tag)) 110 (srecode-dictionary-set-value dict "NAME" (semantic-tag-name tag))
112 (srecode-dictionary-set-value dict "TYPE" (semantic-format-tag-type tag nil)) 111 (srecode-dictionary-set-value dict "TYPE" (semantic-format-tag-type tag nil))
diff --git a/lisp/cedet/srecode/srt-mode.el b/lisp/cedet/srecode/srt-mode.el
index 6bf2d51ab41..a4c8cbd1d01 100644
--- a/lisp/cedet/srecode/srt-mode.el
+++ b/lisp/cedet/srecode/srt-mode.el
@@ -502,10 +502,10 @@ section or ? for an ask variable."
502 ) 502 )
503 (when inserter 503 (when inserter
504 (let ((base 504 (let ((base
505 (cons (oref inserter :object-name) 505 (cons (oref inserter object-name)
506 (if (and (slot-boundp inserter :secondname) 506 (if (and (slot-boundp inserter :secondname)
507 (oref inserter :secondname)) 507 (oref inserter secondname))
508 (split-string (oref inserter :secondname) 508 (split-string (oref inserter secondname)
509 ":") 509 ":")
510 nil))) 510 nil)))
511 (key (oref inserter key))) 511 (key (oref inserter key)))
@@ -627,7 +627,7 @@ section or ? for an ask variable."
627 srecode-template-mode (context) 627 srecode-template-mode (context)
628 "Return a list of possible completions based on NONTEXT." 628 "Return a list of possible completions based on NONTEXT."
629 (with-current-buffer (oref context buffer) 629 (with-current-buffer (oref context buffer)
630 (let* ((prefix (car (last (oref context :prefix)))) 630 (let* ((prefix (car (last (oref context prefix))))
631 (prefixstr (cond ((stringp prefix) 631 (prefixstr (cond ((stringp prefix)
632 prefix) 632 prefix)
633 ((semantic-tag-p prefix) 633 ((semantic-tag-p prefix)
@@ -638,7 +638,7 @@ section or ? for an ask variable."
638; prefix) 638; prefix)
639; ((stringp (car prefix)) 639; ((stringp (car prefix))
640; (car prefix)))) 640; (car prefix))))
641 (argtype (car (oref context :argument))) 641 (argtype (car (oref context argument)))
642 (matches nil)) 642 (matches nil))
643 643
644 ;; Depending on what the analyzer is, we have different ways 644 ;; Depending on what the analyzer is, we have different ways
diff --git a/lisp/cedet/srecode/table.el b/lisp/cedet/srecode/table.el
index 95d8bfa1bc5..7a0600c3f81 100644
--- a/lisp/cedet/srecode/table.el
+++ b/lisp/cedet/srecode/table.el
@@ -201,8 +201,8 @@ INIT are the initialization parameters for the new template table."
201 ;; into the search table first, allowing lower priority items 201 ;; into the search table first, allowing lower priority items
202 ;; to be the items found in the search table. 202 ;; to be the items found in the search table.
203 (object-sort-list mt 'modetables (lambda (a b) 203 (object-sort-list mt 'modetables (lambda (a b)
204 (> (oref a :priority) 204 (> (oref a priority)
205 (oref b :priority)))) 205 (oref b priority))))
206 ;; Return it. 206 ;; Return it.
207 new)) 207 new))
208 208
@@ -239,9 +239,9 @@ Use PREDICATE is the same as for the `sort' function."
239(cl-defmethod srecode-dump ((tab srecode-mode-table)) 239(cl-defmethod srecode-dump ((tab srecode-mode-table))
240 "Dump the contents of the SRecode mode table TAB." 240 "Dump the contents of the SRecode mode table TAB."
241 (princ "MODE TABLE FOR ") 241 (princ "MODE TABLE FOR ")
242 (princ (oref tab :major-mode)) 242 (princ (oref tab major-mode))
243 (princ "\n--------------------------------------------\n\nNumber of tables: ") 243 (princ "\n--------------------------------------------\n\nNumber of tables: ")
244 (let ((subtab (oref tab :tables))) 244 (let ((subtab (oref tab tables)))
245 (princ (length subtab)) 245 (princ (length subtab))
246 (princ "\n\n") 246 (princ "\n\n")
247 (while subtab 247 (while subtab
@@ -254,17 +254,17 @@ Use PREDICATE is the same as for the `sort' function."
254 (princ "Template Table for ") 254 (princ "Template Table for ")
255 (princ (eieio-object-name-string tab)) 255 (princ (eieio-object-name-string tab))
256 (princ "\nPriority: ") 256 (princ "\nPriority: ")
257 (prin1 (oref tab :priority)) 257 (prin1 (oref tab priority))
258 (when (oref tab :application) 258 (when (oref tab application)
259 (princ "\nApplication: ") 259 (princ "\nApplication: ")
260 (princ (oref tab :application))) 260 (princ (oref tab application)))
261 (when (oref tab :framework) 261 (when (oref tab framework)
262 (princ "\nFramework: ") 262 (princ "\nFramework: ")
263 (princ (oref tab :framework))) 263 (princ (oref tab framework)))
264 (when (oref tab :project) 264 (when (oref tab project)
265 (require 'srecode/find) ; For srecode-template-table-in-project-p 265 (require 'srecode/find) ; For srecode-template-table-in-project-p
266 (princ "\nProject Directory: ") 266 (princ "\nProject Directory: ")
267 (princ (oref tab :project)) 267 (princ (oref tab project))
268 (when (not (srecode-template-table-in-project-p tab)) 268 (when (not (srecode-template-table-in-project-p tab))
269 (princ "\n ** Not Usable in this file. **"))) 269 (princ "\n ** Not Usable in this file. **")))
270 (princ "\n\nVariables:\n") 270 (princ "\n\nVariables:\n")
diff --git a/lisp/cedet/srecode/texi.el b/lisp/cedet/srecode/texi.el
index 212b56c6ca0..bb2b7c91316 100644
--- a/lisp/cedet/srecode/texi.el
+++ b/lisp/cedet/srecode/texi.el
@@ -156,7 +156,7 @@ Adds the following:
156 (error "No tag to insert for :texitag template argument")) 156 (error "No tag to insert for :texitag template argument"))
157 157
158 ;; Extract the tag out of the compound object. 158 ;; Extract the tag out of the compound object.
159 (setq tag (oref tag :prime)) 159 (setq tag (oref tag prime))
160 160
161 ;; Extract the doc string 161 ;; Extract the doc string
162 (setq doc (semantic-documentation-for-tag tag)) 162 (setq doc (semantic-documentation-for-tag tag))