From 3a20baccd8b01a3eb72254e209a4c168a05de8a7 Mon Sep 17 00:00:00 2001 From: Jose Antonio Ortega Ruiz Date: Sun, 15 Mar 2009 15:55:46 +0100 Subject: Multiple values as evaluation result supported. --- elisp/geiser-eval.el | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'elisp/geiser-eval.el') diff --git a/elisp/geiser-eval.el b/elisp/geiser-eval.el index 8574cdc..847a198 100644 --- a/elisp/geiser-eval.el +++ b/elisp/geiser-eval.el @@ -142,7 +142,11 @@ EVAL, COMPILE, LOAD-FILE and COMPILE-FILE should be supported.")) (defsubst geiser-eval--retort-p (ret) (and (listp ret) (or (assoc 'error ret) (assoc 'result ret)))) -(defsubst geiser-eval--retort-result (ret) (cdr (assoc 'result ret))) + +(defun geiser-eval--retort-result (ret) + (let ((values (cdr (assoc 'result ret)))) + (if (> (length values) 1) (cons :values values) (car values)))) + (defsubst geiser-eval--retort-output (ret) (cdr (assoc 'output ret))) (defsubst geiser-eval--retort-error (ret) (cdr (assoc 'error ret))) (defsubst geiser-eval--retort-stack (ret) (cdr (assoc 'stack ret))) -- cgit v1.2.3