title: How to pass current-prefix-arg to this-command
body: <p>I want to reuse <code>current-prefix-arg</code> when calling <code>this-command</code>. I can imagine ways of capturing its value and passing it to modified functions. But, this doesn't seem like a great solution. How can I reuse it (eg. push it back onto a sort of call stack, or whatever emacs uses)? </p>
  
  <p>The example is a simple function to increment/decrement numbers in region I was just writing where I want to temporarily bind <kbd>i</kbd> to increment or decrement if it was called with prefix. Can I do this without adding another argument to the function, but just using the original prefix?</p>
  
  <pre><code>(defun my-toggle-increment-numbers (start end)
    "Simple function to increment numbers in region. Decrement with prefix."
    (interactive "r")
    (let (deactivate-mark)
      (goto-char start)
      (while (re-search-forward "\\([[:digit:]]+\\)" end 'move)
        (replace-match (number-to-string
                        (+ (if current-prefix-arg -1 1)
                           (string-to-number (match-string 1))))
                       nil nil nil 1))
      ;; what is good way to reused the current-prefix-argument value when
      ;; calling this-command?
      (set-transient-map
       (let ((km (make-sparse-keymap)))
         (define-key km "i" this-command)
         km)
       t)))
  </code></pre>