;ELC   
;;; compiled by rms@mole.gnu.ai.mit.edu on Fri Oct 27 01:52:58 1995
;;; from file /home/fsf/rms/e19/lisp/hideif.el
;;; emacs version 19.29.1.4.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.28.90")))
    (error "`hideif.el' was compiled for Emacs 19.29 or later"))


(require (quote cc-mode))
#@35 Keymap used with Hide-Ifdef mode.
(defvar hide-ifdef-mode-submap nil (#$ . 498))
#@35 Keymap used with Hide-Ifdef mode.
(defvar hide-ifdef-mode-map nil (#$ . 585))
#@46 Prefix key for all Hide-Ifdef mode commands.
(defconst hide-ifdef-mode-prefix-key "@" (#$ . 669))
(byte-code "„P Á ÂÃÄ#ˆÂÅÆ#ˆÂÇÈ#ˆÂÉÊ#ˆÂËÌ#ˆÂÍÎ#ˆÂÏÐ#ˆÂÑÒ#ˆÂÓÔ#ˆÕÖ×Ø#‰ƒO ÂÚ#ˆ)„a Á Â#ˆÁ‡" [hide-ifdef-mode-submap make-sparse-keymap define-key "d" hide-ifdef-define "u" hide-ifdef-undef "D" hide-ifdef-set-define-alist "U" hide-ifdef-use-define-alist "h" hide-ifdefs "s" show-ifdefs "" hide-ifdef-block "" show-ifdef-block "" hide-ifdef-toggle-read-only where-is-internal toggle-read-only (keymap) t where hide-ifdef-toggle-outside-read-only hide-ifdef-mode-map hide-ifdef-mode-prefix-key] 5)
#@44 Non-nil when hide-ifdef-mode is activated.
(defvar hide-ifdef-mode nil (#$ . 1293))
#@34 Non-nil when text may be hidden.
(defvar hide-ifdef-hiding nil (#$ . 1383))
(byte-code "À	ž„\f À\nB	BÃ\fž„ Å\fBÀ\fž„  Æ\fBÀ‡" [hide-ifdef-mode minor-mode-map-alist hide-ifdef-mode-map hide-ifdef-hiding minor-mode-alist (hide-ifdef-hiding " Hiding") (hide-ifdef-mode " Ifdef")] 2)
#@51 Syntax table used for tokenizing #if expressions.
(defvar hide-ifdef-syntax-table (copy-syntax-table c-mode-syntax-table) (#$ . 1673))
(byte-code "ÀÁÂ#ˆÀÄÅ#ˆÀÆÅ#‡" [modify-syntax-entry 95 "w" hide-ifdef-syntax-table 38 "." 124] 4)
#@1130 Toggle Hide-Ifdef mode.  This is a minor mode, albeit a large one.
With ARG, turn Hide-Ifdef mode on iff arg is positive.
In Hide-Ifdef mode, code within #ifdef constructs that the C preprocessor
would eliminate may be hidden from view.  Several variables affect
how the hiding is done:

hide-ifdef-env
	An association list of defined and undefined symbols for the
	current buffer.  Initially, the global value of `hide-ifdef-env'
	is used.

hide-ifdef-define-alist
	An association list of defined symbol lists.  
        Use `hide-ifdef-set-define-alist' to save the current `hide-ifdef-env'
        and `hide-ifdef-use-define-alist' to set the current `hide-ifdef-env'
        from one of the lists in `hide-ifdef-define-alist'.

hide-ifdef-lines
	Set to non-nil to not show #if, #ifdef, #ifndef, #else, and
	#endif lines when hiding.

hide-ifdef-initially
	Indicates whether `hide-ifdefs' should be called when Hide-Ifdef mode
	is activated.

hide-ifdef-read-only
	Set to non-nil if you want to make buffers read only while hiding.
	After `show-ifdefs', read-only status is restored to previous value.

\{hide-ifdef-mode-map}
(defalias 'hide-ifdef-mode #[(arg) "ÀÁ!ˆ\n„ 	?‚ Ã\n!ÄVÅ ˆ	ƒJ ÀÆ!ˆÇÆ!ÀÈ!ˆÇÈ!ÀÉ!ˆ\n	ËÌ!ˆƒC Î ˆ‚F Ï ˆÐÑ!‡ƒR Ï ˆÐÒ!‡" [make-local-variable hide-ifdef-mode arg prefix-numeric-value 0 force-mode-line-update hide-ifdef-env default-value hide-ifdef-hiding hif-outside-read-only buffer-read-only run-hooks hide-ifdef-mode-hook hide-ifdef-initially hide-ifdefs show-ifdefs message "Enter hide-ifdef-mode." "Exit hide-ifdef-mode."] 2 (#$ . 1915) "P"])
#@166 Hides or shows lines from FROM to TO, according to FLAG.  If FLAG
is \n (newline character) then text is shown, while if FLAG is \^M
(control-M) the text is hidden.
(defalias 'hif-outline-flag-region #[(from to flag) "À ÂŽÃ\fÇUƒ È‚ ÇÉ%*‡" [buffer-modified-p modp ((set-buffer-modified-p modp)) subst-char-in-region from to flag 10 13 t] 6 (#$ . 3505)])
#@45 Show all of the text in the current buffer.
(defalias 'hif-show-all #[nil "ÀedÁ#‡" [hif-outline-flag-region 10] 4 (#$ . 3872) nil])
#@121 START is the start of a #if or #else form.  END is the ending part.
Everything including these lines is made invisible.
(defalias 'hide-ifdef-region #[(start end) "À	\nÃ#‡" [hif-outline-flag-region start end 13] 4 (#$ . 4011)])
#@51 Everything between START and END is made visible.
(defalias 'hif-show-ifdef-region #[(start end) "À	\nÃ#‡" [hif-outline-flag-region start end 10] 4 (#$ . 4245)])
#@100 The evaluator is given a canonical form and returns T if text under
that form should be displayed.
(defvar hide-ifdef-evaluator (quote eval) (#$ . 4414))
#@42 ...is by default considered to be false.
(defvar hif-undefined-symbol nil (#$ . 4574))
#@47 An alist of defined symbols and their values.
(defvar hide-ifdef-env nil (#$ . 4667))
#@45 Prepend (var value) pair to hide-ifdef-env.
(defalias 'hif-set-var #[(var value) "	B\nB‰‡" [var value hide-ifdef-env] 2 (#$ . 4759)])
(defalias 'hif-lookup #[(var) "À	\n\"‰ƒ A‚ \f)‡" [assoc var hide-ifdef-env val hif-undefined-symbol] 4])
(defalias 'hif-defined #[(var) "À	!‡" [hif-lookup var] 2])
(byte-code "ÀÁ\nB	ÃPÄ\nB	ÅPÆ\nB	ÇPÈ\nB	ÉP\nÊ\nBËË\n°\fÌ\nBÁ‡" ["\\(^\\|\\)[ 	]*#[ 	]*" hif-cpp-prefix current-load-list "ifndef" hif-ifndef-regexp "if\\(n?def\\)?[ 	]+" hif-ifx-regexp "else" hif-else-regexp "endif" hif-endif-regexp "\\|" hif-ifx-else-endif-regexp] 5)
#@50 Convert list of tokens in infix into prefix list
(defalias 'hif-infix-to-prefix #[(token-list) "GÁUƒ ÂÃ@DD‡Ä!‡" [token-list 1 hif-lookup quote hif-parse-if-exp] 3 (#$ . 5358)])
(byte-code "ÀÁ\nBÃÄ\nBÁ‡" ["^\\(!\\|&&\\|||\\|[!=]=\\|[()+-]\\|\\w+\\)" hif-token-regexp current-load-list "\\*/" hif-end-of-comment] 2)
#@39 Separate string into a list of tokens
(defalias 'hif-tokenize #[(expr-string) "ÀÁ\nGÃ ÈŽÉ\n!ˆWƒËÌ\n#ƒ1 Á•\nSÍIˆ‚ ËÎ\n#ƒd Á•\nSÍIˆË\n#„V ËÐ\n#ˆÁ•\nSÍIˆ‚ ËÑ\n#ƒ| ËÐ\n#ˆÁ•‰‚ Ë\n#ƒ\nÁ•OÁ•\nSÍIˆÔ˜ƒ¤ Õ‚Ö˜ƒ¯ ×‚Ø˜ƒº Ù‚Ú˜ƒÅ Û‚Ü˜ƒÐ Ý‚Þ˜ƒÛ ß‚à˜ƒæ á‚â˜ƒñ ã‚ä˜ƒü å‚æ˜ƒç‚è!B)‚ éê\n\"ˆ‚ )Ÿ,‡" [nil 0 expr-string syntax-table current-syntax-table expr-length expr-start token-list ((set-syntax-table current-syntax-table)) set-syntax-table hide-ifdef-syntax-table string-match "^[ 	]+" 10 "^/\\*" hif-end-of-comment "$" "^//" hif-token-regexp token "||" or "&&" and "==" equal "!=" hif-notequal "!" not "defined" hif-defined "(" lparen ")" rparen "+" hif-plus "-" hif-minus intern error "Bad #if expression: %s"] 5 (#$ . 5686)])
#@63 Parse the TOKEN-LIST.  Return translated list in prefix form.
(defalias 'hif-parse-if-exp #[(token-list) "À ˆÁ \nƒ ÃÄ\n\"ˆ‡" [hif-nexttoken hif-expr token error "Error: unexpected token: %s"] 4 (#$ . 6514)])
#@67 Pop the next token from token-list into the let variable "token".
(defalias 'hif-nexttoken #[nil "@A	‡" [token-list token] 1 (#$ . 6729)])
#@71 Parse and expression of the form
       expr : term | expr '||' term.
(defalias 'hif-expr #[nil "À \nÃ=ƒ Ä ˆÃ	À E‚ 	)‡" [hif-term result token or hif-nexttoken] 3 (#$ . 6878)])
#@69 Parse a term of the form
       term : eq-expr | term '&&' eq-expr.
(defalias 'hif-term #[nil "À \nÃ=ƒ Ä ˆÃ	À E‚ 	)‡" [hif-eq-expr result token and hif-nexttoken] 3 (#$ . 7065)])
#@74 Parse a term of the form
       eq-expr : math | eq-expr '=='|'!=' math.
(defalias 'hif-eq-expr #[nil "À Á\fÅ=„ \fÆ=ƒ \fÇ ˆ\nÀ E‚ *‡" [hif-math nil eq-token result token equal hif-notequal hif-nexttoken] 3 (#$ . 7254)])
#@75 Parse an expression of the form
       math : factor | math '+|-' factor.
(defalias 'hif-math #[nil "À Á\fÅ=„ \fÆ=ƒ \fÇ ˆ\nÀ E‚ *‡" [hif-factor nil math-op result token hif-plus hif-minus hif-nexttoken] 3 (#$ . 7489)])
#@96 Parse a factor of the form
       factor : '!' factor | '(' expr ')' | 'defined(' id ')' | id.
(defalias 'hif-factor #[nil "Á=ƒ Â ˆÁÃ D‡Ä=ƒ/ Â ˆÅ Ç=„( ÈÉ\"‚- Â ˆ)‡Ê=ƒk Â ˆÄ=„B ÈË!ˆÂ ˆ\fÍ>ƒS ÈÎ\"ˆÂ ˆÇ=„` ÈÏ!ˆÂ ˆÊÐ\f)DD‡‰\fÑ>ƒx ÈÒ!ˆÂ ˆÓÐ\f)DD‡" [token not hif-nexttoken hif-factor lparen hif-expr result rparen error "Bad token in parenthesized expression: %s" hif-defined "Error: expected \"(\" after \"defined\"" ident (or and not hif-defined lparen rparen) "Error: unexpected token: %s" "Error: expected \")\" after identifier" quote (or and) "Error: missing identifier" hif-lookup] 4 (#$ . 7723)])
#@54 Treat VAL as a number: if it's t or nil, use 1 or 0.
(defalias 'hif-mathify #[(val) "Á=ƒ Â‡„ Ã‡‡" [val t 1 0] 2 (#$ . 8349)])
#@52 Like ordinary plus but treat t and nil as 1 and 0.
(defalias 'hif-plus #[(a b) "À	!À\n!\\‡" [hif-mathify a b] 3 (#$ . 8486)])
#@53 Like ordinary minus but treat t and nil as 1 and 0.
(defalias 'hif-minus #[(a b) "À	!À\n!Z‡" [hif-mathify a b] 3 (#$ . 8618)])
#@43 Like (not (equal A B)) but as one symbol.
(defalias 'hif-notequal #[(a b) "	š?‡" [a b] 2 (#$ . 8751)])
#@94 When at beginning of #ifX, returns a canonical (evaluatable)
       form for the expression.
(defalias 'hif-canonicalize #[nil "ŠÀ	!Ã\f!ˆ`ÅÆwˆ`{ÈÉ!!\n\nƒ% Ë\nD‚' \n,‡" [looking-at hif-ifndef-regexp negate re-search-forward hif-ifx-regexp "^\n" nil expr-string hif-infix-to-prefix hif-tokenize expr not] 3 (#$ . 8861)])
#@84 Position at beginning of next #if, #ifdef, or #ifndef, including one on
this line.
(defalias 'hif-find-any-ifX #[nil "À	dÂ#Ãyˆ‡" [re-search-forward hif-ifx-regexp t 0] 4 (#$ . 9195)])
#@95 Position at beginning of next #ifdef, #ifndef, #else, #endif,
NOT including one on this line.
(defalias 'hif-find-next-relevant #[nil "ÀˆÁ\ndÃ#… ÄyˆÀ‡" [nil re-search-forward hif-ifx-else-endif-regexp t 0] 4 (#$ . 9385)])
#@99 Position at beginning of previous #ifdef, #ifndef, #else, #endif,
NOT including one on this line.
(defalias 'hif-find-previous-relevant #[nil "ÀyˆÁ\neÃ#… ÀyˆÄ‡" [0 re-search-backward hif-ifx-else-endif-regexp t nil] 4 (#$ . 9615)])
(defalias 'hif-looking-at-ifX #[nil "À	!‡" [looking-at hif-ifx-regexp] 2])
(defalias 'hif-looking-at-endif #[nil "À	!‡" [looking-at hif-endif-regexp] 2])
(defalias 'hif-looking-at-else #[nil "À	!‡" [looking-at hif-else-regexp] 2])
#@68 If positioned at #ifX or #else form, skip to corresponding #endif.
(defalias 'hif-ifdef-to-endif #[nil "À ˆÁ ƒ Â ˆÂ ‡Ã ƒ Â ‡Ä ƒ Å‡ÆÇ!‡" [hif-find-next-relevant hif-looking-at-ifX hif-ifdef-to-endif hif-looking-at-else hif-looking-at-endif done error "Mismatched #ifdef #endif pair"] 2 (#$ . 10085)])
#@68 If positioned at #endif form, skip backward to corresponding #ifX.
(defalias 'hif-endif-to-ifdef #[nil "`Á ˆ`Uƒ ÂÃ!ˆ)Ä ƒ Å ˆÅ ‡Æ ƒ# Å ‡Ç ƒ* È‡É‡" [start hif-find-previous-relevant error "Mismatched #ifdef #endif pair" hif-looking-at-endif hif-endif-to-ifdef hif-looking-at-else hif-looking-at-ifX done t] 2 (#$ . 10394)])
#@98 Move point to beginning of line of the next ifdef-endif.
With argument, do this that many times.
(defalias 'forward-ifdef #[(&optional arg) "„ ÁÂWƒ Ã[!ˆÂW…: [`Å „$ Æ ˆÅ ƒ/ Ç ˆ‚6 \fbˆÈÉ!ˆ)‚ ‡" [arg 1 0 backward-ifdef start hif-looking-at-ifX hif-find-next-relevant hif-ifdef-to-endif error "No following #ifdef"] 2 (#$ . 10726) "p"])
#@94 Move point to beginning of the previous ifdef-endif.
With argument, do this that many times.
(defalias 'backward-ifdef #[(&optional arg) "„ ÁÂWƒ Ã[!ˆÂW…= SÂyˆ`Å „' Æ ˆÅ ƒ2 Ç ˆ‚9 \fbˆÈÉ!ˆ)‚ ‡" [arg 1 0 forward-ifdef start hif-looking-at-endif hif-find-previous-relevant hif-endif-to-ifdef error "No previous #ifdef"] 2 (#$ . 11076) "p"])
#@55 Move point to beginning of nested ifdef or else-part.
(defalias 'down-ifdef #[nil "`Á ˆÂ †\f Ã ?… bˆÄÅ!)‡" [start hif-find-next-relevant hif-looking-at-ifX hif-looking-at-else error "No following #ifdef"] 2 (#$ . 11430) nil])
#@58 Move point to beginning of enclosing ifdef or else-part.
(defalias 'up-ifdef #[nil "Àyˆ`Â „ Ã ˆÂ ƒ Ä ˆ	`U… ÅÆ!)‡" [0 start hif-looking-at-endif hif-find-previous-relevant hif-endif-to-ifdef error "No previous #ifdef"] 2 (#$ . 11665) nil])
#@99 Move to the beginning of the next #ifX, #else, or #endif.
With argument, do this that many times.
(defalias 'next-ifdef #[(&optional arg) "„ ÁÂWƒ Ã[!ˆÂW…+ SÄ ˆlƒ ÂyˆÅÆ!ˆ‚ ‡" [arg 1 0 previous-ifdef hif-find-next-relevant error "No following #ifdefs, #elses, or #endifs"] 2 (#$ . 11914) "p"])
#@103 Move to the beginning of the previous #ifX, #else, or #endif.
With argument, do this that many times.
(defalias 'previous-ifdef #[(&optional arg) "„ ÁÂWƒ Ã[!ˆÂW…- S`Å ˆ\f`Uƒ) ÆÇ!ˆ)‚ ‡" [arg 1 0 next-ifdef start hif-find-previous-relevant error "No previous #ifdefs, #elses, or #endifs"] 2 (#$ . 12224) "p"])
(defalias 'hif-make-range #[(else-p start end &optional else) "	\nF‡" [else-p start else end] 4])
(defalias 'hif-range-else-p #[(range) "Áœ‡" [range 0] 2])
(defalias 'hif-range-start #[(range) "Áœ‡" [range 1] 2])
(defalias 'hif-range-else #[(range) "Áœ‡" [range 2] 2])
(defalias 'hif-range-end #[(range) "Áœ‡" [range 3] 2])
#@87 Returns a Range structure describing the current #if region.
Point is left unchanged.
(defalias 'hif-find-range #[nil "ŠÀyˆ`Á‰‰Æ ˆÇ ƒ È ˆÆ ˆ‚ É ƒ) Ê`‚+ `\fƒK Æ ˆÇ ƒ@ È ˆÆ ˆ‚2 É ƒI ËÌ!ˆ`Í\f\n$-‡" [0 nil end else else-p start hif-find-next-relevant hif-looking-at-ifX hif-ifdef-to-endif hif-looking-at-else t error "Found two elses in a row?  Broken!" hif-make-range] 5 (#$ . 12879)])
#@77 Hide the line containing point.  Does nothing if `hide-ifdef-lines' is nil.
(defalias 'hif-hide-line #[(point) "… Š	bˆÂ ÄŽÅyˆ`ÆU?… Ç`S`\"+‡" [hide-ifdef-lines point buffer-modified-p modp ((set-buffer-modified-p modp)) 0 1 hide-ifdef-region] 3 (#$ . 13280)])
#@75 Call `hide-ifdef-guts' after narrowing to end of START line and END line.
(defalias 'hif-recurse-on #[(start end) "ŠŒbˆÁˆ`\n}ˆÃ *‡" [start nil end hide-ifdef-guts] 2 (#$ . 13549)])
#@124 Called at #ifX expression, this hides those parts that should be
hidden, according to judgement of `hide-ifdef-evaluator'.
(defalias 'hif-possibly-hide #[nil "À Á ÄÅ\n!!ˆ!ƒA Ç\n!ƒ5 ÄÈ\n!!ˆÉÈ\n!Å\n!S\"ˆÊË\n!È\n!\"ˆ‚k ÊË\n!Å\n!\"ˆ‚k Ç\n!ƒc ÄÈ\n!!ˆÉË\n!È\n!S\"ˆÊÈ\n!Å\n!\"ˆ‚k É`Å\n!S\"ˆÄË\n!!ˆÅ\n!bˆÌ*‡" [hif-canonicalize hif-find-range range test hif-hide-line hif-range-end hide-ifdef-evaluator hif-range-else-p hif-range-else hide-ifdef-region hif-recurse-on hif-range-start nil] 4 (#$ . 13739)])
#@100 Does the work of `hide-ifdefs', except for the work that's pointless
to redo on a recursive entry.
(defalias 'hide-ifdef-guts #[nil "ŠebˆÀ … Á ˆ‚ )‡" [hif-find-any-ifX hif-possibly-hide] 1 (#$ . 14249)])
#@85 *Non-nil if `hide-ifdefs' should be called when Hide-Ifdef mode
is first activated.
(defvar hide-ifdef-initially nil (#$ . -14461))
#@71 *Set to non-nil if you want buffer to be read-only while hiding text.
(defvar hide-ifdef-read-only nil (#$ . -14599))
#@73 Internal variable.  Saves the value of `buffer-read-only' while hiding.
(defvar hif-outside-read-only nil (#$ . 14723))
#@71 *Set to t if you don't want to see the #ifX, #else, and #endif lines.
(defvar hide-ifdef-lines nil (#$ . -14849))
#@30 Toggle hide-ifdef-read-only.
(defalias 'hide-ifdef-toggle-read-only #[nil "?ÁÂƒ Ã‚ Ä\"ˆƒ † È ‡" [hide-ifdef-read-only message "Hide-Read-Only %s" "ON" "OFF" hide-ifdef-hiding hif-outside-read-only buffer-read-only force-mode-line-update] 3 (#$ . 14969) nil])
#@60 Replacement for `toggle-read-only' within Hide Ifdef mode.
(defalias 'hide-ifdef-toggle-outside-read-only #[nil "?ÁÂƒ Ã‚ Ä\"ˆƒ † È ‡" [hif-outside-read-only message "Read only %s" "ON" "OFF" hide-ifdef-hiding hide-ifdef-read-only buffer-read-only force-mode-line-update] 3 (#$ . 15247) nil])
#@52 Define a VAR so that #ifdef VAR would be included.
(defalias 'hide-ifdef-define #[(var) "À	Â\"ˆ… Ä ‡" [hif-set-var var 1 hide-ifdef-hiding hide-ifdefs] 3 (#$ . 15558) "SDefine what? "])
#@58 Undefine a VAR so that #ifdef VAR would not be included.
(defalias 'hide-ifdef-undef #[(var) "À	Â\"ˆ… Ä ‡" [hif-set-var var nil hide-ifdef-hiding hide-ifdefs] 3 (#$ . 15752) "SUndefine what? "])
#@279 Hide the contents of some #ifdefs.  
Assume that defined symbols have been added to `hide-ifdef-env'.  
The text hidden is the text that would not be included by the C
preprocessor if it were given the file with those symbols defined.

Turn off hiding by calling `show-ifdefs'.
(defalias 'hide-ifdefs #[nil "ÀÁ!ˆ\n„\f ÂÃ!ˆ\fƒ Å ˆÆÆÆÉ ˆ)\n†& \fÀÍ!‡" [message "Hiding..." hide-ifdef-mode 1 hide-ifdef-hiding show-ifdefs t inhibit-read-only selective-display hide-ifdef-guts hide-ifdef-read-only hif-outside-read-only buffer-read-only "Hiding done"] 2 (#$ . 15956) nil])
#@76 Cancel the effects of `hide-ifdef'.  The contents of all #ifdefs is shown.
(defalias 'show-ifdefs #[nil "ÂÄÆ ˆ)Â‰‡" [hif-outside-read-only buffer-read-only nil selective-display t inhibit-read-only hif-show-all hide-ifdef-hiding] 2 (#$ . 16540) nil])
#@77 Utility for hide and show `ifdef-block'.
Set top and bottom of ifdef block.
(defalias 'hif-find-ifdef-block #[nil "ÀŠÂyˆÃ „ Ä „ Å ˆ`Ç ˆ`S)ŠÂyˆÈ „) É ˆÄ ƒ7 Ç ˆÉ ˆ‚) 	`S^‰\n*‡" [nil max-bottom 0 hif-looking-at-else hif-looking-at-ifX up-ifdef top hif-ifdef-to-endif hif-looking-at-endif hif-find-next-relevant bottom] 2 (#$ . 16803)])
#@75 Hide the ifdef block (true or false part) enclosing or before the cursor.
(defalias 'hide-ifdef-block #[nil "„ ÀÁ!ˆÂÄ‰ÂÈ ˆÉ\"ˆ\nƒ, Ë!ˆËT!ˆÂ\f+†7 ‰‡" [hide-ifdef-mode 1 t selective-display nil inhibit-read-only bottom top hif-find-ifdef-block hide-ifdef-region hide-ifdef-lines hif-hide-line hide-ifdef-hiding hide-ifdef-read-only hif-outside-read-only buffer-read-only] 3 (#$ . 17149) nil])
#@75 Show the ifdef block (true or false part) enclosing or before the cursor.
(defalias 'show-ifdef-block #[nil "À\nƒ ŠÃyˆÄ`SÅˆ`\")‚' Å‰È ˆÄS\"*)‡" [t inhibit-read-only hide-ifdef-lines 0 hif-show-ifdef-region nil bottom top hif-find-ifdef-block] 3 (#$ . 17570) nil])
#@49 A global assoc list of pre-defined symbol lists
(defvar hide-ifdef-define-alist nil (#$ . 17851))
#@67 Compress the define list ENV into a list of defined symbols only.
(defalias 'hif-compress-define-list #[(env) "ÀÁ\n\"Ã‰ƒ @ƒ @\fBA‰„ \f*‡" [mapcar #[(arg) "À	@!…	 	@‡" [hif-lookup arg] 2] env nil new-defs defs] 4 (#$ . 17955)])
#@51 Set the association for NAME to `hide-ifdef-env'.
(defalias 'hide-ifdef-set-define-alist #[(name) "Á\n!BB‰‡" [name hif-compress-define-list hide-ifdef-env hide-ifdef-define-alist] 3 (#$ . 18198) "SSet define list: "])
#@60 Set `hide-ifdef-env' to the define list specified by NAME.
(defalias 'hide-ifdef-use-define-alist #[(name) "À	\n\"‰ƒ ÄÅA\"‚ ÇÈ	\"ˆ	… Ê )‡" [assoc name hide-ifdef-define-alist define-list mapcar #[(arg) "ÁB‡" [arg t] 2] hide-ifdef-env error "No define list for %s" hide-ifdef-hiding hide-ifdefs] 4 (#$ . 18425) "SUse define list: "])
(provide (quote hideif))
