Incorporate Semantic's hideif components into hideif.el (replacing advice)

* progmodes/hideif.el (hif-lookup, hif-defined): Handle
semantic-c-takeover-hideif.
This commit is contained in:
Chong Yidong 2012-10-02 23:21:47 +08:00
parent 0a99eee11b
commit a96e1cb758
2 changed files with 18 additions and 6 deletions

View file

@ -1,3 +1,8 @@
2012-10-02 Chong Yidong <cyd@gnu.org>
* progmodes/hideif.el (hif-lookup, hif-defined): Handle
semantic-c-takeover-hideif.
2012-10-02 Paul Eggert <eggert@cs.ucla.edu>
Change sampling interval units from ms to ns.

View file

@ -329,16 +329,23 @@ that form should be displayed.")
"Prepend (var value) pair to hide-ifdef-env."
(setq hide-ifdef-env (cons (cons var value) hide-ifdef-env)))
(declare-function semantic-c-hideif-lookup "semantic/bovine/c" (var))
(declare-function semantic-c-hideif-defined "semantic/bovine/c" (var))
(defun hif-lookup (var)
;; (message "hif-lookup %s" var)
(let ((val (assoc var hide-ifdef-env)))
(if val
(cdr val)
hif-undefined-symbol)))
(or (when (bound-and-true-p semantic-c-takeover-hideif)
(semantic-c-hideif-lookup var))
(let ((val (assoc var hide-ifdef-env)))
(if val
(cdr val)
hif-undefined-symbol))))
(defun hif-defined (var)
(if (assoc var hide-ifdef-env) 1 0))
(cond
((bound-and-true-p semantic-c-takeover-hideif)
(semantic-c-hideif-defined var))
((assoc var hide-ifdef-env) 1)
(t 0)))
;;===%%SF%% evaluation (End) ===