@@ -248,48 +248,40 @@ Bind the value of the provided KEYS and execute BODY."
248
248
(put 'nrepl-dbind-response 'lisp-indent-function 2 )
249
249
250
250
(defun nrepl-make-response-handler
251
- (buffer value-handler stdout-handler stderr-handler done-handler
252
- &optional eval-error-handler)
251
+ (buffer value-handler stdout-handler stderr-handler done-handler
252
+ &optional eval-error-handler)
253
253
" Make a response handler for BUFFER.
254
254
Uses the specified VALUE-HANDLER, STDOUT-HANDLER, STDERR-HANDLER,
255
255
DONE-HANDLER, and EVAL-ERROR-HANDLER as appropriate."
256
- (let ((buffer buffer)
257
- (value-handler value-handler)
258
- (stdout-handler stdout-handler)
259
- (stderr-handler stderr-handler)
260
- (done-handler done-handler)
261
- (eval-error-handler eval-error-handler))
262
- (lambda (response )
263
- (nrepl-dbind-response response (value ns out err status id ex root-ex
264
- session)
265
- (cond (value
266
- (with-current-buffer buffer
267
- (if ns
268
- (setq nrepl-buffer-ns ns)))
269
- (if value-handler
270
- (funcall value-handler buffer value)))
271
- (out
272
- (if stdout-handler
273
- (funcall stdout-handler buffer out)))
274
- (err
275
- (if stderr-handler
276
- (funcall stderr-handler buffer err)))
277
- (status
278
- (if (member " interrupted" status)
279
- (message " Evaluation interrupted. " ))
280
- (if (member " eval-error" status)
281
- (funcall (or eval-error-handler nrepl-err-handler)
282
- buffer ex root-ex session))
283
- (if (member " namespace-not-found" status)
284
- (message " Namespace not found. " ))
285
- (if (member " need-input" status)
286
- (cider-need-input buffer))
287
- (if (member " done" status)
288
- (progn
289
- (puthash id (gethash id nrepl-pending-requests) nrepl-completed-requests)
290
- (remhash id nrepl-pending-requests)
291
- (if done-handler
292
- (funcall done-handler buffer))))))))))
256
+ (lambda (response )
257
+ (nrepl-dbind-response response (value ns out err status id ex root-ex
258
+ session)
259
+ (cond (value
260
+ (with-current-buffer buffer
261
+ (when ns (setq nrepl-buffer-ns ns)))
262
+ (when value-handler
263
+ (funcall value-handler buffer value)))
264
+ (out
265
+ (when stdout-handler
266
+ (funcall stdout-handler buffer out)))
267
+ (err
268
+ (when stderr-handler
269
+ (funcall stderr-handler buffer err)))
270
+ (status
271
+ (when (member " interrupted" status)
272
+ (message " Evaluation interrupted. " ))
273
+ (when (member " eval-error" status)
274
+ (funcall (or eval-error-handler nrepl-err-handler)
275
+ buffer ex root-ex session))
276
+ (when (member " namespace-not-found" status)
277
+ (message " Namespace not found. " ))
278
+ (when (member " need-input" status)
279
+ (cider-need-input buffer))
280
+ (when (member " done" status)
281
+ (puthash id (gethash id nrepl-pending-requests) nrepl-completed-requests)
282
+ (remhash id nrepl-pending-requests)
283
+ (when done-handler
284
+ (funcall done-handler buffer))))))))
293
285
294
286
; ;; communication
295
287
(defun nrepl-default-handler (response )
0 commit comments