;ELC   
;;; compiled by kwzh@hal.gnu.ai.mit.edu on Thu Jun  8 22:23:56 1995
;;; from file /gd/gnu/emacs/19.0/lisp/ediff-merg.el
;;; emacs version 19.29.0.
;;; 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 "`ediff-merg.el' was compiled for Emacs 19.29 or later"))


(require (quote ediff-init))
#@134 *The variant to be used as a default for buffer C in merging.
Valid values are the symbols `default-A', `default-B', and `combined'.
(defvar ediff-default-variant (quote default-A) (#$ . -509))
#@233 *Pattern to be used for combining difference regions in buffers A and B.
The value is (STRING1 STRING2 STRING3). The combined text will look like this:

STRING1
diff region from variant A
STRING2
diff region from variant B
STRING3

(defvar ediff-combination-pattern (quote ("#ifdef NEW /* variant A */" "#else /* variant B */" "#endif /* NEW */")) (#$ . -710))
#@195 *If t, show only those diff regions where both buffers disagree with the ancestor.
This means that regions that have status prefer-A or prefer-B will be
skiped over. Nil means show all regions.
(defvar ediff-show-clashes-only nil (#$ . -1078))
(byte-code "!#" [make-variable-buffer-local ediff-show-clashes-only put permanent-local t] 4)
(defalias 'ediff-get-combined-region #[(n) "@\n\fŉ	p\np\nW !W !!W ͎q	=> S 	=J S 	=S )a =a !)~p\n ! !! ׎q	=  	=  	= ) = !)!~p\n ! !! ؎q	=  	=  	= )=!)!!~َp\nR!R!!Rڎq	=9N	=EN	=N)\\=\\!)ql	\n$y	\n${)=!.A@\n\fŉ	p\np\n!!!͎q	=	=	=)=!)	p\n4!4!!4׎q	=0	='0	=0)>=>!)!	p\n!!!؎q	=o	={	=)=!)!!	َp\n!!!ڎq	=	=	=)=!)q	\n$	\n${)=!.8" [ediff-combination-pattern "\n" n A ediff-control-buffer nil end start ctrl-buf buf-type StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) ediff-buffer-A B ediff-buffer-B C ediff-buffer-C this-command ediff-quit error "You've killed an essential Ediff buffer---Please quit Ediff" ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ediff-get-diff-posn beg 2] 11])
(put (quote ediff-get-combined-region) (quote byte-optimizer) (quote byte-compile-inline-expand))
(defalias 'ediff-set-state-of-all-diffs-in-all-buffers #[(ctl-buf) "\nW 	\f\"	T )" [0 n ediff-number-of-differences ediff-set-state-of-diff-in-all-buffers ctl-buf] 4])
(put (quote ediff-set-state-of-all-diffs-in-all-buffers) (quote byte-optimizer) (quote byte-compile-inline-expand))
(defalias 'ediff-set-state-of-diff-in-all-buffers #[(n ctl-buf) "\nÉppR !R !!R ˎq=9 \fN =E N =N )\\ =\\ !)wp ! !! Վq= \f =  = ) = !)!wp ! !! ֎q= \f =  = )=!)!!w׎pM!M!!M؎q=4\fI=@I=I)W=W!)qf$\fr${)=!.\nÉpp!!!ˎq=\f==)=!)p'!'!!'Վq=\f#=#=#)1=1!)!p{!{!!{֎q=b\fw=nw=w)=!)!!׎p!!!؎q=\f==)=!)q$\f${)=!.\nÉppX!X!!Xˎq=?\fT=KT=T)b=b!)}p!!!Վq=\f==)=!)!}p!!!֎q=\f==)=!)!!}׎pS!S!!S؎q=:\fO=FO=O)]=]!)ql$\fx${)=!.\"!JHI\"!JHI\"!JHI\"!JHI\"!JHI\"!JHI)\"!JHI\"!JHI\"!JHIZ\"!JHI\"!JHI\"!JHI%@'Épp!!!ˎq=\f==)=!)p!!!Վq=\f==)=!)!p[![!![֎q=B\fW=NW=W)e=e!)!!׎p!!!؎q=\f==)=!)q$\f${)=!.%A@'Épp>!>!!>ˎq=%\f:=1:=:)H=H!)cp!!!Վq=w\f==)=!)!cp!!!֎q=\f==)=!)!!c׎p9!9!!9؎q= \f5=,5=5)C=C!)qR$\f^${)m=m!.%8)\"!JHI\"!JHI\"!JHI\"!JHI\"!JHI\"!JHI+" [n A ctl-buf nil end start ctrl-buf buf-type StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) ediff-buffer-A B ediff-buffer-B C ediff-buffer-C this-command ediff-quit error "You've killed an essential Ediff buffer---Please quit Ediff" ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ediff-get-diff-posn beg regC regB regA intern format "ediff-difference-vector-%S" 3 "=diff(B)" "=diff(C)" "=diff(A)" ediff-combination-pattern "\n" ediff-control-buffer 2 "=diff(A+B)"] 13])
(defalias 'ediff-set-merge-mode #[nil "!\"" [normal-mode t remove-hook local-write-file-hooks ediff-set-merge-mode] 3])
(defalias 'ediff-do-merge #[(diff-num &optional remerging) "W \f\"ŉ	\nW	\"U: 3 Ђ4 	\n$[ ![ !![ \"!J	HH	ŉ	pp ! !! q= ! = # = ) $= !)p!!!q= !=#=)$=!)!pe!e!!eq=L!a=X#a=a)o$=o!)!!p!!!q=!=#=)$=!)q	$	${)$=!.	ŉ	ppK!K!!Kq=2!G=>#G=G)U$=U!)tp!!!q=!=#=)$=!)!tp!!!q=!=#=)$=!)!!tpF!F!!Fq=-!B=9#B=B)P$=P!)qa	$o	${)~$=~!.	ŉ	pp!!!q=!=#=)$=!) p)!)!!)q=!%=#%=%)3$=3!)! p}!}!!}q=d!y=p#y=y)$=!)!! p!!!q=!=#=)$=!)q	$	${)\n$=\n!../0!0.b0/.bZ0/456@56A@468*.b\"e\"\"!J	H\f\"I+!!!\"!J	HH󘃽	T\"	@ \"ق$	T	 ́A !," [diff-num 0 format "%S" ediff-default-variant nil state-of-merge do-not-copy default-state-of-merge n ediff-number-of-differences mod 10 message "%s buffers A & B into C ... region %d of %d" remerging "Re-merging" "Merging" ediff-buffer-C get-buffer buffer-name intern "ediff-difference-vector-%S" C 4 A ediff-control-buffer end start ctrl-buf buf-type StartBuffer ((set-buffer StartBuffer)) ediff-buffer-A B ediff-buffer-B this-command ediff-quit error "You've killed an essential Ediff buffer---Please quit Ediff" ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ediff-get-diff-posn beg reg-C reg-B reg-A "default-A" "default-B" "combined" regB regA ediff-combination-pattern "\n" 2 string-match "prefer" t "\\(default\\|combined\\)" ediff-combine-diffs batch ediff-copy-diff "-A" "Merging buffers A & B into C ... Done"] 9])
#@85 Remerge unmodified diff regions using a new default. Start with the current region.
(defalias 'ediff-re-merge #[nil "E!C\"\"$!\" *" [("default-A") ("default-B") ("combined") default-variant-alist delete symbol-name ediff-default-variant actual-alist intern completing-read format "Current merge default is `%S'. New default: " nil must-match ediff-do-merge ediff-current-difference remerge ediff-recenter] 6 (#$ . 8630) nil])
#@124 Shrink window C to just one line.
With a prefix argument, returns window C to its normal size.
Used only for merging jobs.
(defalias 'ediff-shrink-window-C #[(arg) " !=   7 !W, \n- \n!)WS !VS \n_\n!Vn !Vn \n_\n!" [ediff-merge-job error "ediff-shrink-window-C can be used only for merging jobs" arg - -1 nil window-height ediff-window-C 3 ediff-merge-window-share 0 "" ediff-window-config-saved ediff-recenter no-rehighlight 2 0.90000000000000002 ediff-window-A 1.1000000000000001] 2 (#$ . 9093) "P"])
#@151 Combine Nth diff regions of buffers A and B and place the combination in C.
Combining is done using the list in variable `ediff-combination-pattern'.
(defalias 'ediff-combine-diffs #[(n &optional batch-invocation) "	 S\n 		\np\fp\f\nf \n!f \n!!f ώ\nq=M b =Y b =b )p =p !)p\f\n \n! \n!! َ\nq=  =  = ) = !)!p\f\n\f\n!\f\n!!\fڎ\nq= = =)=!)!!ێp\f\na\n!a\n!!a܎\nq=H]=T]=])k=k!)q	{\n$\n${)=!.	\np\fp\f\n\n!\n!!ώ\nq===)=!)p\f\nA\n!A\n!!Aَ\nq=(==4===)K=K!)!p\f\n\n!\n!!ڎ\nq=|==)=!)!!ێp\f\n\n!\n!!܎\nq===)=!)q	\n$\n${) = !.\f@A@\f8*#%+#L " [n ediff-current-difference nil reg-combined regB regA A ediff-control-buffer end start ctrl-buf buf-type StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) ediff-buffer-A B ediff-buffer-B C ediff-buffer-C this-command ediff-quit error "You've killed an essential Ediff buffer---Please quit Ediff" ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ((set-buffer StartBuffer)) ediff-get-diff-posn beg ediff-combination-pattern "\n" 2 ediff-copy-diff batch-invocation ediff-recenter] 8 (#$ . 9672) "P"])
(defalias 'ediff-make-combined-diff #[(regA regB) "@\nA@8" [ediff-combination-pattern "\n" regA regB 2] 8])
(put (quote ediff-make-combined-diff) (quote byte-optimizer) (quote byte-compile-inline-expand))
(defalias 'ediff-looks-like-combined-merge #[(region-num) " !\f) \f!) \f!!) \"!JHH* \"##@A@8Ӊ p \f \f! \f!! \fqb###) %= !)    .\f" [ediff-merge-job string-match regexp-quote "(A+B)" ediff-buffer-C get-buffer buffer-name intern format "ediff-difference-vector-%S" C region-num 3 "" ediff-get-diff-posn beg end ediff-combination-pattern 2 nil reg-c-end reg-c-beg reg-b-end reg-b-beg reg-a-end reg-a-beg pat3 pat2 pat1 reg-end reg-beg combined StartBuffer ((set-buffer StartBuffer)) search-forward noerror 0 this-command ediff-quit error "You've killed an essential Ediff buffer---Please quit Ediff"] 13])
(provide (quote ediff-merg))
