;ELC   
;;; Compiled
;;; in Emacs version 29.3
;;; with all optimizations.



(byte-code "\300\301!\210\300\302!\207" [require cl-lib subr-x] 2)#@69 compiler-macro for inlining `rg-history-p'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'rg-history-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block rg-history-p (and (memq (type-of cl-x) cl-struct-rg-history-tags) t)) nil] 9 (#$ . 150)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop rg-history-p compiler-macro rg-history-p--cmacro] 4)#@13 

(fn CL-X)
(defalias 'rg-history-p #[257 "\301!>\205	 \302\207" [cl-struct-rg-history-tags type-of t] 3 (#$ . 536)])
(byte-code "\300\301\302\303#\300\301\304\305#\306\307\310\301#\300\207" [function-put rg-history-p side-effect-free error-free pure t define-symbol-prop rg-history cl-deftype-satisfies] 6)#@72 compiler-macro for inlining `rg-history-past'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'rg-history-past--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block rg-history-past (progn (or (rg-history-p cl-x) (signal 'wrong-type-argument (list 'rg-history cl-x))) (aref cl-x 1))) nil] 9 (#$ . 851)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop rg-history-past compiler-macro rg-history-past--cmacro] 4)#@60 Access slot "past" of `rg-history' struct CL-X.

(fn CL-X)
(defalias 'rg-history-past #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-rg-history-tags type-of signal wrong-type-argument rg-history 1] 5 (#$ . 1297)])
(byte-code "\300\301\302\303#\300\207" [function-put rg-history-past side-effect-free t] 4)#@75 compiler-macro for inlining `rg-history-present'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'rg-history-present--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block rg-history-present (progn (or (rg-history-p cl-x) (signal 'wrong-type-argument (list 'rg-history cl-x))) (aref cl-x 2))) nil] 9 (#$ . 1628)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop rg-history-present compiler-macro rg-history-present--cmacro] 4)#@63 Access slot "present" of `rg-history' struct CL-X.

(fn CL-X)
(defalias 'rg-history-present #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-rg-history-tags type-of signal wrong-type-argument rg-history 2] 5 (#$ . 2090)])
(byte-code "\300\301\302\303#\300\207" [function-put rg-history-present side-effect-free t] 4)#@74 compiler-macro for inlining `rg-history-future'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'rg-history-future--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block rg-history-future (progn (or (rg-history-p cl-x) (signal 'wrong-type-argument (list 'rg-history cl-x))) (aref cl-x 3))) nil] 9 (#$ . 2430)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop rg-history-future compiler-macro rg-history-future--cmacro] 4)#@62 Access slot "future" of `rg-history' struct CL-X.

(fn CL-X)
(defalias 'rg-history-future #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-rg-history-tags type-of signal wrong-type-argument rg-history 3] 5 (#$ . 2887)])
(byte-code "\300\301\302\303#\300\207" [function-put rg-history-future side-effect-free t] 4)#@100 compiler-macro for inlining `rg-history-create'.

(fn CL-WHOLE &cl-quote &key PAST PRESENT FUTURE)
(defalias 'rg-history-create--cmacro #[385 "\300\301\"A@\300\302\"A@\300\303\"A@\211\203H \211@\304>\2031 \211A\204) \305\306@\"\210\211AA\262\202 \307>A@\203? \310\262\202 \305\311@\"\210\202 \210\312\313\314\310\310&\207" [plist-member :past :present :future (:past :present :future :allow-other-keys) error "Missing argument for %s" :allow-other-keys nil "Keyword argument %s not one of (:past :present :future)" cl--defsubst-expand (past present future) (cl-block rg-history-create (record 'rg-history past present future))] 14 (#$ . 3225)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop rg-history-create compiler-macro rg-history-create--cmacro] 4)#@78 Constructor for objects of type `rg-history'.

(fn &key PAST PRESENT FUTURE)
(defalias 'rg-history-create #[128 "\300\301\"A@\300\302\"A@\300\303\"A@\211\203H \211@\304>\2031 \211A\204) \305\306@\"\210\211AA\262\202 \307>A@\203? \310\262\202 \305\311@\"\210\202 \210\312\313$\207" [plist-member :past :present :future (:past :present :future :allow-other-keys) error "Missing argument for %s" :allow-other-keys nil "Keyword argument %s not one of (:past :present :future)" record rg-history] 9 (#$ . 4018)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\207" [function-put rg-history-create side-effect-free t cl-struct-define rg-history nil cl-structure-object record ((cl-tag-slot) (past) (present) (future)) cl-struct-rg-history-tags] 11)#@65 Push a new ITEM to the rg-history INSTANCE.

(fn ITEM INSTANCE)
(defalias 'rg-history-push #[514 "\301!>\204 \302\303\304D\"\210\211\305H\211\203. \301!>\204% \302\303\304D\"\210\306\306HBI\210\210\301!>\204> \302\303\304D\"\210\211\305I\210\301!>\204R \302\303\304D\"\210\211\307\310I\207" [cl-struct-rg-history-tags type-of signal wrong-type-argument rg-history 2 1 3 nil] 8 (#$ . 4806)])#@85 Move back in the rg-history INSTANCE.
Return the new current search.

(fn INSTANCE)
(defalias 'rg-history-back #[257 "\301!>\204 \302\303\304D\"\210\211\305H\211\305AI\210\262\242\211\205^ \301!>\204/ \302\303\304D\"\210\306H\301!>\204A \302\303\304D\"\210\307\307HBI\266\301!>\204Z \302\303\304D\"\210\306I\207" [cl-struct-rg-history-tags type-of signal wrong-type-argument rg-history 1 2 3] 8 (#$ . 5219)])#@88 Move forward in the rg-history INSTANCE.
Return the new current search.

(fn INSTANCE)
(defalias 'rg-history-forward #[257 "\301!>\204 \302\303\304D\"\210\211\305H\211\305AI\210\262\242\211\205^ \301!>\204/ \302\303\304D\"\210\306H\301!>\204A \302\303\304D\"\210\307\307HBI\266\301!>\204Z \302\303\304D\"\210\306I\207" [cl-struct-rg-history-tags type-of signal wrong-type-argument rg-history 3 2 1] 8 (#$ . 5656)])
(provide 'rg-history)
