;ELC ;;; Compiled ;;; in Emacs version 26.3 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\300\307!\210\310\311\312\313!\"\210\310\314\315\313!\"\210\310\316\314\"\210\317\316\320\321#\210\322\313\323\314#\324\313\325\326\327$\207" [require cl-lib eieio jupiter-operation jupiter-insert jupiter-delete jupiter-compound jupiter-nop defalias jupiter-context-p eieio-make-class-predicate jupiter-context jupiter-context--eieio-childp eieio-make-child-predicate jupiter-context-child-p make-obsolete "use (cl-typep ... \\='jupiter-context) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal nil ((local-revision :initarg :local-revision :type (integer 0) :initform 0 :documentation "Revision number of the local data.") (remote-revision :initarg :remote-revision :type (integer 0) :initform 0 :documentation "Revision number of the remote data.") (local-log :initarg :local-log :type list :initform nil :documentation "List of local operations, that have not been\nacknowledged by the remote side.")) (:documentation "Objects of this class store the state of one side of a\nconcurrent modification activity, which is synchronized using the\njupiter algorithm.")] 6) #@72 Create a new object of class type `jupiter-context'. (fn &rest SLOTS) (defalias 'jupiter-context #[128 "\300\301\302#\207" [apply make-instance jupiter-context] 5 (#$ . 1599)]) (byte-code "\300\301\302\303#\300\207" [function-put jupiter-context compiler-macro jupiter-context--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'jupiter-context--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 1901)]) (byte-code "\300\301\302\303\302\304%\210\300\305\302\306\302\307%\210\300\310\302\311\312\313%\210\314\315!\207" [cl-generic-define-method jupiter-local-operation nil ((this jupiter-context) operation) #[514 "\211\300\301\302\303\"B\302\301\"B#\266\211\300\303\302\303\"T#\262\207" [eieio-oset local-log slot-value local-revision] 11 "Store OPERATION in the operation log of THIS and increase local revision count.\n\n(fn THIS OPERATION)"] jupiter-remote-operation ((this jupiter-context) local-revision _remote-revision operation) #[1028 "\211C\211\300\301\302\303\304\305\306\307!\310\"\311\312%\313\301\"\314\315$#\266\316\303\304\317\306\307!\320\"\321\322%\323\313\301\"!\"\210\211\300\324\313\324\"T#\266\211\242\207" [eieio-oset local-log cl-delete-if make-byte-code 257 "\211\300W\207" vconcat vector [] 3 "\n\n(fn REVISION)" slot-value :key car mapc "\300\301A\300\242\"\240\210\211\211\301\300\242A\"\241\207" [jupiter-transform] 6 "\n\n(fn LOG-OPERATION)" reverse :remote-revision] 17 "Transform OPERATION with revisions LOCAL-REVISION and REMOTE-REVISION using the local operations stored in THIS.\nLOCAL-REVISION is the local revision of THIS context, the remote\nsite is referring to.\n\n(fn THIS LOCAL-REVISION REMOTE-REVISION OPERATION)"] object-print ((this jupiter-context) &rest _strings) t #[642 "\300\301\302\303\"\"\300\304\302\305\"\"\300\306\302\307\"G\"$\207" [format " local %d" slot-value local-revision " remote %d" remote-revision " log-items %d" local-log] 13 "Add revisions and log length to string representation of THIS.\n\n(fn THIS &rest STRINGS)"] provide jupiter] 6)