]> gitweb.factorcode.org Git - factor.git/commitdiff
FUEL: make it so fuel-con-error is shown in *fuel debug*
authorBjörn Lindqvist <bjourne@gmail.com>
Fri, 25 Apr 2014 15:39:44 +0000 (17:39 +0200)
committerJohn Benediktsson <mrjbq7@gmail.com>
Fri, 25 Apr 2014 15:49:50 +0000 (08:49 -0700)
misc/fuel/fuel-debug.el
misc/fuel/fuel-eval.el

index 7cedfb0fbc3495515fa9f7c00d0a9c07707736b5..1a3d4ddbfad91e78ee629bfc5b189ffb2f359c81 100644 (file)
@@ -143,13 +143,16 @@ the debugger."
       (fuel-debug--display-output ret)
       (delete-blank-lines)
       (newline)
-      (when (and (not err) success-msg)
+      (cond
+       ((and (not err) success-msg)
         (message "%s" success-msg)
         (insert "\n" success-msg "\n"))
-      (when err
+       ((eq (car err) 'fuel-con-error)
+        (fuel-debug--display-parse-error (second err)))
+       (err
         (fuel-debug--display-restarts err)
         (delete-blank-lines)
-        (newline))
+        (newline)))
       (fuel-debug--display-uses ret)
       (let ((hstr (fuel-debug--help-string err fuel-debug--file)))
         (if fuel-debug-show-short-help
@@ -202,6 +205,7 @@ the debugger."
     (newline)))
 
 (defun fuel-debug--display-output (ret)
+  "Diplays the retort `ret' in fuels debug buffer."
   (let* ((last (fuel-eval--retort-output fuel-debug--last-ret))
          (current (fuel-eval--retort-output ret))
          (llen (length last))
@@ -216,6 +220,11 @@ the debugger."
     (when err
       (insert (format "\nError: %S\n\n" (fuel-eval--error-name err))))))
 
+(defun fuel-debug--display-parse-error (str)
+  (insert
+   (format
+    "FUEL failed to parse the connection response, displayed below:\n\n%s\n\n" str)))
+
 (defun fuel-debug--display-restarts (err)
   (let* ((rs (fuel-eval--error-restarts err))
          (rsn (length rs)))
index 39b94494b13f62daec508f7e3683b570c720d67e..10be5fd793206203e6994d6fd84f9802c22d4db4 100644 (file)
 (defsubst fuel-eval--retort-p (ret)
   (and (listp ret) (= 3 (length ret))))
 
-(defsubst fuel-eval--make-parse-error-retort (str)
-  (fuel-eval--retort-make (cons 'fuel-parse-retort-error str) nil))
-
 (defun fuel-eval--parse-retort (ret)
   (fuel-log--info "RETORT: %S" ret)
-  (if (fuel-eval--retort-p ret) ret
-    (fuel-eval--make-parse-error-retort ret)))
+  (if (fuel-eval--retort-p ret)
+      ret
+    (list ret nil nil)))
 
 (defsubst fuel-eval--error-name (err) (car err))