clang-tidy has already provided some simple refactoring-like checks (e.g. modernize-use-auto,
modernize-use-using), so we can leverage the power of clang-tidy to implement tweaks.
clang-tidy-based tweaks compared to clang-tidy check:
- For refactoring checks, tweaks maybe a better UI compared to showing as diagnostics (we only show on the UI when users do it intendedly)
- faster, we run the check on a single AST node rather than the whole AST