;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\304\305\306\"\207" [require ob comint org-macs add-to-list org-babel-tangle-lang-exts ("ocaml" . "ml")] 3) (defvar org-babel-default-header-args:ocaml nil) (defvar org-babel-ocaml-eoe-indicator "\"org-babel-ocaml-eoe\";;") (defvar org-babel-ocaml-eoe-output "org-babel-ocaml-eoe") (byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313\314\315& \207" [custom-declare-variable org-babel-ocaml-command funcall function #[0 "\300\207" [#1="ocaml"] 1 #1#] "Name of the command for executing Ocaml code." :version "24.4" :package-version (Org . "8.0") :group org-babel :type string] 12) #@61 Execute a block of Ocaml code with Babel. (fn BODY PARAMS) (defalias 'org-babel-execute:ocaml #[514 "\306\307!#\310\311\236A\"\312!\204\313\314\"\210\315 \316\317\320\321\322!\323\"\324$\216rq\210\212\325\326C\316\327\330\321\322!\331\"\332\333% B\334\335\336p!!b\210`d{\262|\266\337!\340\nQc\210\341 \210 b\210\212\342\343\f!\334\344#\205q\342 \334\344#)\204~\345\336p!!\210\202^\335\336p!!b\210\211c\210\346\242 \")\266\202,\262\343\f!\334C\347\334\350\316\327\351\321\322  \"\352\"\332\353%\350\354\355 !\"\"\"\266\202@\211\334\356\203\301\357\202\302\360\326\356\361\326##\266\202\362\236A\363\364\"\210\365\366\"\365\324\"\365\332\"\367\370\235?\205d\371\235\2045\372\235\2045\373\235\2045\374\235\2045\375\235\2045\376\235\2045\377\235\204-\201@\235\204-\201A\235\204-\201B\235\203Q\201C\235\204Q\372\235\203A\202d\377\235\203L\202d\202d\203b\203b\201D\"\202d\262\201E\201F \236A\201G\236A\"\201E\201H\236A\201I\236A\"#\266\203\207" [comint-input-filter comint-output-filter-functions org-babel-ocaml-eoe-indicator comint-last-input-end org-babel-ocaml-eoe-output comint-prompt-regexp org-babel-expand-body:generic org-babel-variable-assignments:ocaml org-babel-prep-session:ocaml :session org-babel-comint-buffer-livep error "Buffer %s does not exist or has no process" match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 #[257 "\300\207" [nil] 2 "\n\n(fn INPUT)"] "" 257 "\300\211\242P\240\207" [] 4 "\n\n(fn TEXT)" nil process-mark get-buffer-process org-babel-chomp ";;\n" tuareg-interactive-send-input re-search-forward regexp-quote t accept-process-output split-string delq mapcar "\301\242\203\n\301\302\240\210\207\303\300\"\205\301\304\240\210\302\207" [nil string-match t] "\n\n(fn LINE)" org-trim reverse replace-regexp-in-string "\\`\\([ ]*\n\\)+" "\\`[ \n ]+" "[ \n ]+\\'" :result-params string-match "\\(\\(.*\n\\)*\\)[^:\n]+ : \\([^=\n]+\\) =[[:space:]]+\\(\\(.\\|\n\\)+\\)$" match-string 1 org-babel-reassemble-table "none" "scalar" "verbatim" "html" "code" "pp" "file" "output" "raw" "org" "drawer" "table" org-babel-ocaml-parse-output org-babel-pick-name :colname-names :colnames :rowname-names :rownames] 18 (#$ . 1050)]) #@83 Prepare SESSION according to the header arguments in PARAMS. (fn SESSION PARAMS) (defalias 'org-babel-prep-session:ocaml #[514 "\302\303!\210\304\230\204\305\230\204;\203\202\306 \307\310\311\312\313!\314\"\315$\216\316\317!\2036\317 !\210\2029\320 \210)\210\321!)\207" [tuareg-interactive-buffer-name org-babel-ocaml-command require tuareg "none" "default" current-window-configuration make-byte-code 0 "\301\300!\207" vconcat vector [set-window-configuration] 2 fboundp tuareg-run-process-if-needed tuareg-run-caml get-buffer] 9 (#$ . 3360)]) #@79 Return list of ocaml statements assigning the block's variables. (fn PARAMS) (defalias 'org-babel-variable-assignments:ocaml #[257 "\300\301\302!\"\207" [mapcar #[257 "\300\301@\302A!#\207" [format "let %s = %s;;" org-babel-ocaml-elisp-to-ocaml] 6 "\n\n(fn PAIR)"] org-babel--get-vars] 5 (#$ . 3930)]) #@65 Return a string of ocaml code which evaluates to VAL. (fn VAL) (defalias 'org-babel-ocaml-elisp-to-ocaml #[257 "\211<\203\300\301\302\303#\304Q\207\305\306\"\207" ["[|" mapconcat org-babel-ocaml-elisp-to-ocaml "; " "|]" format "%S"] 6 (#$ . 4242)]) #@100 Parse VALUE of type TYPE. VALUE and TYPE are string output from an ocaml process. (fn VALUE TYPE) (defalias 'org-babel-ocaml-parse-output #[514 "\211\300\230\203\n\301!\207\211\302\230\204\211\303\230\203\304!\207\305\306\"\203%\307!\207\305\310\"\2030\311!\207\312\313\"\210\207" ["string" org-babel-read "int" "float" string-to-number string-match "list" org-babel-ocaml-read-list "array" org-babel-ocaml-read-array message "don't recognize type %s"] 5 (#$ . 4503)]) #@182 Convert RESULTS into an elisp table or string. If the results look like a table, then convert them into an Emacs-lisp table, otherwise return the results as a string. (fn RESULTS) (defalias 'org-babel-ocaml-read-list #[257 "\300\301\302\303#!\207" [org-babel-script-escape replace-regexp-in-string ";" ","] 6 (#$ . 4995)]) #@182 Convert RESULTS into an elisp table or string. If the results look like a table, then convert them into an Emacs-lisp table, otherwise return the results as a string. (fn RESULTS) (defalias 'org-babel-ocaml-read-array #[257 "\300\301\302\303\301\304\305\301\306\307\n###!\207" [org-babel-script-escape replace-regexp-in-string "\\[|" "[" "|\\]" "]" "; " ","] 12 (#$ . 5327)]) (provide 'ob-ocaml)