;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\305\306\307\310\311\312%\210\313\314\315\316\317DD\320\321\322%\210\313\323\315\316\324DD\325\321\326%\210\327\330\331\"\207" [require chess-game chess-database chess-message chess-module custom-declare-group chess-autosave nil "A special display that autosaves after each move." :group chess-display custom-declare-variable chess-autosave-file funcall function #[0 "\300\207" [#1="~/.chess-save"] 1 #1#] "Filename in which to autosave chess games." :type (choice file (const :tag "Do not auto-save" nil)) chess-autosave-database #[0 "\300\207" [nil] 1] "If non-nil, a chess database file in which completed games are appended.\nIf a function, it will receive a game object and is expected to do the\nwork of saving the game object to whichever database(s) it chooses.\nWhether it closes those databases or caches them for later use is up\nto the user." (choice (const :tag "Do not save completed games" nil) file function) chess-message-catalog english ((chess-read-autosave . "There is a chess autosave file, read it? ") (chess-delete-autosave . "Delete the autosave file? ") (chess-disable-autosave . "Disable autosaving for this game? ") (autosave-available . "There is an autosave file; type ~ after connecting to read it"))] 6) #@30 (fn GAME EVENT &rest ARGS) (defalias 'chess-autosave-handler #[642 "\303\267\202 \304p!\210\305\306\"q\210\307 \210\310\306\207\311!\205\f\312\313\314!!\203-\315\"\210\316 \207\312\313\317!!\2038\316 \207\312\313\320!!\205D\321\322\"\207\311!\205\f\323\310\324\325\313#!\207\321\326\"\210\327p!\207\211\204g\330\331!\210\332\3338\334\"@\211\205\320\211\335\336\337\340\341\342\343&\206\316\211\211\211:\205\225\211@\344!\205\223\211G\345U\262\262\204\242\346\347\350\351E\"\210\211@\262\211\344!\205\261\211G\345U\262\204\276\346\347\352\353E\"\210\211\354H\262\211\205\314\335\355\356#\262\262\266\202\204\332\357\"\207\316 \210\n\205\374\360\n!\203\353\n!\207\361\n!\211\205\372\362\"\210\363!\262\207\364\310!\210\365!\205\f\366!\207\310\207" [chess-autosave-file buffer-auto-save-file-name chess-autosave-database #s(hash-table size 6 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (initialize 6 check-autosave 23 announce-autosave 69 disable-autosave 85 post-move 94 destroy 253)) kill-buffer find-file-noselect t buffer-disable-undo nil file-readable-p y-or-n-p chess-string chess-read-autosave chess-autosave-read erase-buffer chess-delete-autosave chess-disable-autosave chess-autosave-handler disable-autosave autosave-available message apply destroy chess-module-destroy cl--assertion-failed game last 3 2 chess-ply-any-keyword :drawn :perpetual :repetition :flag-fell :resign :aborted vectorp 75 signal wrong-type-argument chess-ply ply chess-pos position 74 :stalemate :checkmate chess-autosave-write functionp chess-database-open chess-database-write chess-database-close set-buffer-modified-p file-exists-p delete-file] 14 (#$ . 1386)]) #@12 (fn PLY) (defalias 'chess-prin1-ply #[257 "\300c\210\211\211\211:\205\211@\301!\205\211G\302U\262\262\204%\303\304\305\306E\"\210\211@\262\307\310\211W\203D\211\311Hp\"\210\312c\266\211T\262\202+\266\313c\210\211\211\211:\205^\211@\301!\205\\\211G\302U\262\262\204k\303\304\305\306E\"\210\211A\262\211\203v\312c\210\211\203\236\211@\314=\203\211\211AA\262\202v\311@p\"\210\211A\203\227\312c\210\211A\262\202v\210\315c\207" ["([" vectorp 75 signal wrong-type-argument chess-ply ply 74 0 prin1 32 "nil]" :next-pos ")"] 8 (#$ . 3118)]) #@57 Write a chess GAME to FILE as raw Lisp. (fn GAME FILE) (defalias 'chess-autosave-write #[514 "\211\204 \300\301!\210\211\211\204\300\301!\210\3028\262GS\262\211\303U\204)o\203Dm\203D\304 \210\305\211\2046\300\301!\210\211A@\262p\"\210\306c\210\202Rdb\210\307\310!\210\311y\210`d|\210\312\313S\"!\210\314\315\"c\210\312\313!!\210\316c\210\317 \210\320\311!\207" [cl--assertion-failed game 3 1 erase-buffer prin1 "\n(\n;;## ply 0\n" re-search-backward "^;;## ply" nil chess-prin1-ply chess-game-ply format "\n;;## ply %d\n" ")\n" basic-save-buffer message] 7 (#$ . 3694)]) #@58 Read a chess game as raw Lisp from FILE. (fn GAME FILE) (defalias 'chess-autosave-read #[514 "eb\210\301p!\204\302\303!\210\211\204\211\304=\204\302\305!\210A\240\210\306C\204-\302\303!\210?\205^\304\211\204<\302\303!\210\211@\262\211\203Y\211@\307@A$\262A\266\202\202@\262\262\266\301p!\211\304\203\326\211\203\230\310@\211\211:\205\204\211@\311!\205\202\211G\312U\262\262\204\221\313\314\315\316E\"\210\211@\262\"\210A\203\313\317@\320A@\211\211:\205\270\211@\311!\205\266\211G\312U\262\262\204\305\313\314\315\316E\"\210\211@\262#\210@\262A\262\202e\204\340\302\303!\210AA\205\351C\241\210\321D\204\367\302\303!\210?\205(\304\211\204\302\303!\210\211@\262\211\203#\211@\307@A$\262A\266\202\202\n\262\262\207" [chess-game-inhibit-events read cl--assertion-failed game nil (or tags (eq tags nil)) set-tags apply chess-pos-set-preceding-ply vectorp 75 signal wrong-type-argument chess-ply ply chess-ply-set-keyword :next-pos setup-game] 17 (#$ . 4290)]) (provide 'chess-autosave)