Context actions for C++
JetBrains Rider provides the following context actions for Cpp:
|Add '= default' specifier to a function without definition|
Marks a function without definition as defaulted.
|Add '= delete' specifier to a function without definition|
Marks a function without definition as deleted.
Adds braces around statement.
|Add pure specifier to a virtual function without definition|
Marks a virtual function without definition with a pure specifier.
Arranges const and volatile qualifiers in a declaration according to the syntax style.
|Arrange 'virtual' and 'override' specifiers on an overriding function|
Arrange 'virtual' and 'override' specifiers on an overriding function according to the syntax style.
|Convert #include directive from angle-bracket to quoted form|
Convert #include directive from angle-bracket to quoted form.
|Convert #include directive from quoted to angle-bracket form|
Convert #include directive quoted to angle-bracket form.
|Convert '?:' expression to 'if' statement|
Converts a ternary conditional operator to an equivalent 'if' statement.
|Convert a type alias into a typedef declaration|
Replaces a type alias with an equivalent typedef declaration.
|Convert a typedef declaration into a type alias|
Replaces a typedef declaration with an equivalent type alias.
|Convert an enum to a string|
Creates a function from a template that converts an enum to a string.
For more information, see Convert enum to string (generate enum-to-string helper).
|Convert 'if' statement to '?:' expression|
Converts an 'if' statement to an equivalent ternary conditional operator.
|Convert to nested namespace definition|
Replaces a series of nested namespaces with a single namespace using the nested namespace definition syntax.
|Convert to nested namespaces|
Replaces a nested namespace definition with a series of nested namespaces.
|Convert to non-raw string literal|
Converts raw string literal to non-raw.
|Convert to raw string literal|
Converts string literal to raw.
|Convert to regular return type|
Converts a trailing return type into a regular return type in a function declaration.
|Convert to trailing return type|
Converts a regular return type into a trailing return type in a function declaration.
|Create derived class|
Creates a derived class.
|Create derived class|
Creates a derived class.
|Create derived interface|
Creates a derived interface.
|Create derived interface class|
Creates a derived interface class.
|Create derived interface struct|
Creates a derived interface struct.
|Create derived ref class|
Creates a derived ref class.
|Create derived struct|
Creates a derived struct.
Generate documentation for a function, macro definition, namespace, class, enum, typedef, alias declaration, global variable or a class member from a template.
For more information, see Document entity.
|Flip operator arguments|
Flips left and right operands for selected operator, e.g. '0 == i' to 'i == 0'.
|Flip relational operator|
Flips operands of binary relational operators.
|Format compound statement|
Formats the compound statement under the caret.
Generates missing case statements for the given switch statement.
For more information, see Generate missing case statements.
|Generate definition by declaration|
Generate definition by declaration.
|Generate definitions by declarations|
Generate definitions by declarations.
|Generate inline definition|
Generate inline definition.
|Generate missing members|
Generate missing members.
|Generate mock methods|
Generate mock methods.
|Generate overriding members|
Generate overriding members.
|Initialize field from constructor parameter|
Initializes field from constructor parameter.
|Invert '?:' condition|
Inverts guard condition of a ternary statement and swaps the branches' code accordingly.
|Invert 'if' statement|
Inverts guard condition of an 'if' statement and swaps the branches' code accordingly.
Joins several declarations into a declaration with multiple declarators.
|Make member initializer a default member initializer|
Moves member initializer from member initializer list to default member initializer.
|Merge nested 'if' statements|
Merges two nested 'if' statements to a single 'if' statement that checks conjunction of the original conditions.
|Move function implementation out of class scope|
Moves function implementation out of class scope.
For more information, see Move implementation out of class scope.
|Move function implementation to source file|
Moves function implementation to a source file.
|Move function implementations|
Move function implementations.
|Negate logical expression|
Negates logical expression.
Removes unnecessary braces around one or more statements in the code.
|Replace 'auto' with explicit type declaration|
Replaces 'auto' with explicit type declaration.
Replace decltype with the underlying type.
|Replace 'decltype(auto)' with explicit type declaration|
Replaces 'decltype(auto)' with explicit type declaration.
|Replace explicit type with 'auto'|
Replace an explicit type in a variable declaration with 'auto'.
|Replace slashes in an include file path|
Replaces slashes in an include file path according to the syntax style.
|Replace UNREFERENCED_PARAMETER to [[maybe_unused]]|
Replace macro UNREFERENCED_PARAMETER to attribute [[maybe_unused]].
|Sort #include directives|
Sort #include directives
|Sort member initializers by the order of initialization|
Sort member initializers in an initializer list by the order of initialization.
|Specify template arguments explicitly|
Specifies template arguments explicitly.
|Split declaration and assignment|
Replaces 'var' with explicit type declaration.
|Split declaration with multiple declarators|
Splits declaration containing multiple declarators into multiple declarations.
|Substitute macro call|
Substitute macro call.
|Substitute macro call with all nested calls|
Substitute macro call with all nested calls.
|Substitute template type alias|
Replace template type alias with the underlying type.
Replace typedef with the underlying type.
|Substitute typedef and all nested typedefs|
Replace typedef and all nested typedefs with the underlying type.
|Switch between typename and class keywords|
Replaces typename with class and vice versa in template parameter definition.