arXiv · 2502.17716
Refactoring Detection in C++ Programs with RefactoringMiner++
Abstract
Commits often involve refactorings -- behavior-preserving code modifications aiming at software design improvements. Refactoring operations pose a challenge to code reviewers, as distinguishing them from behavior-altering changes is often not a trivial task. Accordingly, research on automated refactoring detection tools has flourished over the past two decades, however, the majority of suggested tools is limited to Java projects. In this work, we present RefactoringMiner++, a refactoring detection tool based on the current state of the art: RefactoringMiner 3. While the latter focuses exclusively on Java, our tool is -- to the best of our knowledge -- the first publicly available refactoring detection tool for C++ projects. RefactoringMiner's thorough evaluation provides confidence in our tool's performance. In addition, we test RefactoringMiner++ on a small seeded dataset and demonstrate the tool's capability in a short demo involving both refactorings and behavior-altering changes. A screencast demonstrating our tool can be found at https://cloud.tugraz.at/index.php/s/oCzmjfFSaBxNZoe.
Explore related subjects
Keep this discovery
Benjamin Ritz, Aleksandar Karakaš, Denis Helic. 2025-02-24. Refactoring Detection in C++ Programs with RefactoringMiner++. https://arxiv.org/abs/2502.17716
Cite the original work for its findings. Save a collection to share your selection of sources.