Function: trashed-restore-file
trashed-restore-file is a natively compiled function defined in
trashed.el.
Signature
(trashed-restore-file FILE NEWNAME)
Documentation
Restore FILE to NEWNAME.
Return nil if it successfully restored, t if an error occurred or it was cancelled by user.
Source Code
;; Defined in /nix/store/7ppdacjhnynz276lxxnfw8sdz6r2k6h2-emacs-packages-deps/share/emacs/site-lisp/elpa/trashed-20230811.157/trashed.el
(defun trashed-restore-file (file newname)
"Restore FILE to NEWNAME.
Return nil if it successfully restored, t if an error occurred
or it was cancelled by user."
(let (delete-by-moving-to-trash)
(make-directory (file-name-directory newname) t)
(condition-case err
(rename-file file newname)
((file-already-exists file-error)
(if (or (eq (car err) 'file-already-exists)
(and (eq (car err) 'file-error)
(string= (cadr err) "File is a directory")))
(if (apply trashed-action-confirmer
(list (format
"%s already exists; overwrite it? "
newname)))
(rename-file file newname t)
t)
(error "%s" (error-message-string err)))))))