class RefactoringAction
Declaration
class RefactoringAction { /* full declaration omitted */ };
Description
A refactoring action is a class that defines a set of related refactoring action rules. These rules get grouped under a common umbrella - a single clang-refactor subcommand. A subclass of \c RefactoringAction is responsible for creating the set of grouped refactoring action rules that represent one refactoring operation. Although the rules in one action may have a number of different implementations, they should strive to produce a similar result. It should be easy for users to identify which refactoring action produced the result regardless of which refactoring action rule was used. The distinction between actions and rules enables the creation of action that uses very different rules, for example: - local vs global: a refactoring operation like "add missing switch cases" can be applied to one switch when it's selected in an editor, or to all switches in a project when an enum constant is added to an enum. - tool vs editor: some refactoring operation can be initiated in the editor when a declaration is selected, or in a tool when the name of the declaration is passed using a command-line argument.
Declared at: clang/include/clang/Tooling/Refactoring/RefactoringAction.h:39
Method Overview
- protected virtual clang::tooling::RefactoringActionRules createActionRules() const
- public clang::tooling::RefactoringActionRules createActiveActionRules()
- public virtual llvm::StringRef getCommand() const
- public virtual llvm::StringRef getDescription() const
- public virtual ~RefactoringAction()
Methods
¶virtual clang::tooling::RefactoringActionRules
createActionRules() const
virtual clang::tooling::RefactoringActionRules
createActionRules() const
Description
Returns a set of refactoring actions rules that are defined by this action.
Declared at: clang/include/clang/Tooling/Refactoring/RefactoringAction.h:54
¶clang::tooling::RefactoringActionRules
createActiveActionRules()
clang::tooling::RefactoringActionRules
createActiveActionRules()
Declared at: clang/include/clang/Tooling/Refactoring/RefactoringAction.h:49
¶virtual llvm::StringRef getCommand() const
virtual llvm::StringRef getCommand() const
Description
Returns the name of the subcommand that's used by clang-refactor for this action.
Declared at: clang/include/clang/Tooling/Refactoring/RefactoringAction.h:45
¶virtual llvm::StringRef getDescription() const
virtual llvm::StringRef getDescription() const
Declared at: clang/include/clang/Tooling/Refactoring/RefactoringAction.h:47
¶virtual ~RefactoringAction()
virtual ~RefactoringAction()
Declared at: clang/include/clang/Tooling/Refactoring/RefactoringAction.h:41