File tree Expand file tree Collapse file tree 1 file changed +11
-1
lines changed Expand file tree Collapse file tree 1 file changed +11
-1
lines changed Original file line number Diff line number Diff line change @@ -2383,12 +2383,22 @@ If ARG is non-nil, you may modify the watcher expression before creation."
23832383 (interactive )
23842384 (gdb-create-watcher-from-switch t ))
23852385
2386+ (defun gdb-eval-expression-dwim ()
2387+ " Evaluate a region if it is active, otherwise evaluate symbol at point."
2388+ (interactive )
2389+ (if (use-region-p )
2390+ (gdb--eval-expression (buffer-substring-no-properties (region-beginning ) (region-end )))
2391+ (gdb--eval-expression (thing-at-point 'symbol ))))
2392+
23862393(defun gdb-eval-expression ()
23872394 " Evaluate expression once and print result."
23882395 (interactive )
2396+ (gdb--eval-expression (gdb--read-line " Expression to evaluate: " )))
2397+
2398+ (defun gdb--eval-expression (expression )
2399+ " Evaluate given expression and print result."
23892400 (gdb--with-valid-session
23902401 (let* ((frame (or (gdb--session-selected-frame session) (user-error " No frame is selected" )))
2391- (expression (gdb--read-line " Expression to evaluate: " ))
23922402 result)
23932403 (when expression
23942404 (setq result (gdb--get-data (concat " -data-evaluate-expression " (gdb--escape-argument expression))
You can’t perform that action at this time.
0 commit comments