
(provide (quote db-search))

(deflocalvar dbf-field-search-defaults nil "Vector of defaults for field search.
It is one element longer than the number of fields; the element indexed by
dbf-displayspecs-length is the default for a search over all fields.")

(defvar database-search-mode-map (copy-keymap database-edit-mode-map))

(defvar dbm-and-connective "[ 	]+and[ 	]+")

(defvar dbm-or-connective "[ 	]+or[ 	]+")

(defvar dbm-not-prefix "^[ 	]*not[ 	]+")

(defvar dbm-<-prefix "^<")

(defvar dbm->-prefix "^>")

(defvar dbm-=-prefix "^=")

(defun db-parse-match-pattern (string displayspec) (byte-code "Ï	\"ƒ! ÐÑ!ÒÓ	ÑÔÑ!O\"Ó	
ÕO\"E)‚À Ï	\"ƒB ÐÑ!ÖÓ	ÑÔÑ!O\"Ó	ÕO\"E)‚À Ï	\"ƒX ×Ó	ÐÑ!ÕO\"D‚À Ï	\"ƒn ØÙ	ÐÑ!ÕO\"D‚À Ï	\"ƒ„ ÚÙ	ÐÑ!ÕO\"D‚À Ï		\"ƒš ÛÙ	ÐÑ!ÕO\"D‚À ÜH†£ ÝH	ƒ½ Þßà�*‚¿ *‡" [dbm-and-connective string and-end displayspec dbm-or-connective or-end dbm-not-prefix dbm-<-prefix dbm->-prefix dbm-=-prefix t dac-d->a dac-fieldtext vararg-common-1 vararg-common-2 string-match match-end 0 db-match-and db-parse-match-pattern match-beginning nil db-match-or db-match-not db-match-< db-parse-match-object db-match-> db-match-= 14 12 err (byte-code "Â	\"‡" [vararg-common-1 vararg-common-2 funcall] 3) ((wrong-number-of-arguments (byte-code "Ã	ÂÂÂ%‡" [vararg-common-1 vararg-common-2 nil funcall] 6)) (error (byte-code "À… Â	@	A\"ˆ‚  ‡" [t err signal] 4)))] 26))

(defun db-parse-match-object (string displayspec) (byte-code "Àˆ
ÇH	ƒ 	ÈÉÊ�*‚ *‡" [nil dac-d->a displayspec dac-fieldtext string vararg-common-1 vararg-common-2 12 err (byte-code "Â	\"‡" [vararg-common-1 vararg-common-2 funcall] 3) ((wrong-number-of-arguments (byte-code "Ã	ÂÂÂ%‡" [vararg-common-1 vararg-common-2 nil funcall] 6)) (error (byte-code "À… Â	@	A\"ˆ‚  ‡" [t err signal] 4)))] 3))

(defun db-print-match-pattern (pattern displayspec) (byte-code "	<… 	@É=ƒ  Ê	A@
\"ËÊ	AA@
\"Q‚ª Ì=ƒ8 Ê	A@
\"ÍÊ	AA@
\"Q‚ª Î=ƒI ÏÊ	A@
\"P‚ª Ð=ƒZ ÑÒ	A@
\"P‚ª Ó=ƒk ÔÒ	A@
\"P‚ª Õ=ƒ| ÖÒ	A@
\"P‚ª 
×H†… 
ØH	ƒš ÙÚÛ�*‚› ;ƒ¨ ‚© Ü+)‡" [pat-type pattern displayspec t adc-a->d adc-fieldtext adc-result vararg-common-1 vararg-common-2 db-match-and db-print-match-pattern "  AND  " db-match-or " OR " db-match-not "NOT " db-match-< "< " db-print-match-object db-match-> "> " db-match-= "= " 13 11 err (byte-code "Â	\"‡" [vararg-common-1 vararg-common-2 funcall] 3) ((wrong-number-of-arguments (byte-code "Ã	ÂÂ$‡" [vararg-common-1 vararg-common-2 nil funcall] 5)) (error (byte-code "À… Â	@	A\"ˆ‚  ‡" [t err signal] 4))) "<ERROR>"] 11))

(defun db-print-match-object (string displayspec) (byte-code "Àˆ
ÈH	ƒ 	ÉÊË�*‚ ;ƒ% ‚& Ì+‡" [nil adc-a->d displayspec adc-fieldtext string adc-result vararg-common-1 vararg-common-2 11 err (byte-code "Â	\"‡" [vararg-common-1 vararg-common-2 funcall] 3) ((wrong-number-of-arguments (byte-code "Ã	ÂÂ$‡" [vararg-common-1 vararg-common-2 nil funcall] 5)) (error (byte-code "À… Â	@	A\"ˆ‚  ‡" [t err signal] 4))) "<ERROR>"] 3))

(defun db-match (pattern target recordfieldspec) (byte-code "Àˆ	<ƒ˜ 	@Æ
=ƒ% Ç	A@#…\" Ç	AA@#‚” È
=ƒ@ Ç	A@#†= Ç	AA@#‚” É
=ƒQ Ç	A@#?‚” Ê
=ƒe ËÌÍ!	A@#U‚” Î
=ƒy ÏÌÍ!	A@#U‚” Ð
=ƒ� ÑÌÍ!	A@#U‚” ÌÒH	#)‚Ÿ ÌÒH	#‡" [nil pattern pat-type target recordfieldspec t db-match-and db-match db-match-or db-match-not db-match-< 1 funcall recordfieldspec-order-function db-match-> -1 db-match-= 0 7] 16))
