;ELC   
;;; Compiled
;;; in Emacs version 24.5.1
;;; 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!\207" [require ob-core org-compat comint] 2)
#@57 Check if BUFFER is a comint buffer with a live process.
(defalias 'org-babel-comint-buffer-livep #[(buffer) "\205 \301!\211\205 \302!\205 \303!\205 )\207" [buffer get-buffer buffer-live-p get-buffer-process] 3 (#$ . 502)])
#@171 Check BUFFER and execute BODY.
BUFFER is checked with `org-babel-comint-buffer-livep'.  BODY is
executed inside the protection of `save-excursion' and
`save-match-data'.
(defalias 'org-babel-comint-in-buffer '(macro . #[(buffer &rest body) "\302\303\304D\305\306EE\307\310\311\312	BBEDE\207" [buffer body progn unless org-babel-comint-buffer-livep error "Buffer %s does not exist or has no process" save-match-data with-current-buffer let ((comint-input-filter (lambda (input) nil)))] 8 (#$ . 742)]))
(byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put org-babel-comint-in-buffer lisp-indent-function 1 edebug-form-spec (form body)] 4)
#@495 Evaluate BODY in BUFFER and return process output.
Will wait until EOE-INDICATOR appears in the output, then return
all process output.  If REMOVE-ECHO and FULL-BODY are present and
non-nil, then strip echo'd body from the returned output.  META
should be a list containing the following where the last two
elements are optional.

 (BUFFER EOE-INDICATOR REMOVE-ECHO FULL-BODY)

This macro ensures that the filter is removed in case of an error
or user `keyboard-quit' during execution of body.
(defalias 'org-babel-comint-with-output '(macro . #[(meta &rest body) "@A@\3068\3078\310\f\311\312\313\314\315\316\317\320\321\322\323\324\325D\326BB\327BBDDE\330BB\331\332\333\323\n	\334\335\336\337\325\340	\341BBDF\342BBF\343BB\344BBBB\"BBBBE,\207" [meta full-body remove-echo eoe-indicator buffer body 2 3 org-babel-comint-in-buffer let* ((string-buffer #1="") (comint-output-filter-functions (cons (lambda (text) (setq string-buffer (concat string-buffer text))) comint-output-filter-functions)) dangling-text raw) (goto-char (process-mark (get-buffer-process (current-buffer)))) (let ((start (point)) (end (point-max))) (setq dangling-text (buffer-substring start end)) (delete-region start end)) append while progn (goto-char comint-last-input-end) not save-excursion and re-search-forward regexp-quote (nil t) ((re-search-forward comint-prompt-regexp nil t)) ((accept-process-output (get-buffer-process (current-buffer)))) (goto-char (process-mark (get-buffer-process (current-buffer)))) (insert dangling-text) if string-match replace-regexp-in-string "\n" "[\n]+" or (#1#) (string-buffer) ((setq raw (substring string-buffer (match-end 0)))) ((split-string string-buffer comint-prompt-regexp))] 23 (#$ . 1397)]))
(byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put org-babel-comint-with-output lisp-indent-function 1 edebug-form-spec (sexp body)] 4)
#@51 Pass CMD to BUFFER.
The input will not be echoed.
(defalias 'org-babel-comint-input-command #[(buffer cmd) "\304!\204 \305\306\"\210\307 \310\216rq\210\311\312\313!!b\210c\210\314 \210\315!,\207" [buffer save-match-data-internal comint-input-filter cmd org-babel-comint-buffer-livep error "Buffer %s does not exist or has no process" match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) #[(input) "\300\207" [nil] 1] process-mark get-buffer-process comint-send-input org-babel-comint-wait-for-output] 3 (#$ . 3275)])
#@142 Wait until output arrives from BUFFER.
Note: this is only safe when waiting for the result of a single
statement (not large blocks of code).
(defalias 'org-babel-comint-wait-for-output #[(buffer) "\305!\204 \306\307\"\210\310 \311\216rq\210\312b\210\313\f\314\315#\205- \316\224b\205- \317\320 !\321\230?\205: \322\323!!\210\202 ,\207" [buffer save-match-data-internal comint-input-filter comint-last-input-end comint-prompt-regexp org-babel-comint-buffer-livep error "Buffer %s does not exist or has no process" match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) #[(input) "\300\207" [nil] 1] re-search-forward nil t 0 face-name face-at-point "comint-highlight-prompt" accept-process-output get-buffer-process] 4 (#$ . 3852)])
#@137 Evaluate STRING in BUFFER invisibly.
Don't return until FILE exists.  Code in STRING must ensure that
FILE exists at end of evaluation.
(defalias 'org-babel-comint-eval-invisibly-and-wait-for-file #[(buffer file string &optional period) "\306!\204 \307\310\"\210\311	!\203 \312	!\210\313\314!\n\211GSH\315U\203' \n\202* \n\316P\"\210\317!\203> \320\321\320\322\f\323\"#\210)\311	!?\205P \324\206K \325!\210\202> \207" [buffer file string default-directory v period org-babel-comint-buffer-livep error "Buffer %s does not exist or has no process" file-exists-p delete-file process-send-string get-buffer-process 10 "\n" file-remote-p nil with-parsed-tramp-file-name tramp-flush-directory-property "" sit-for 0.25] 6 (#$ . 4642)])
(provide 'ob-comint)
