clang-tools 22.0.0git
|
Enumerations | |
enum class | QualifierPolicy { Left , Right } |
This enum defines where the qualifier shall be preferably added. More... | |
enum class | QualifierTarget { Pointee , Value } |
This enum defines which entity is the target for adding the qualifier. This makes only a difference for pointer-types. Other types behave identical for either value of ConstTarget . More... |
Functions | |
FixItHint | changeVarDeclToReference (const VarDecl &Var, ASTContext &Context) |
Creates fix to make VarDecl a reference by adding &. | |
static bool | isValueType (const Type *T) |
static bool | isValueType (QualType QT) |
static bool | isMemberOrFunctionPointer (QualType QT) |
static bool | locDangerous (SourceLocation S) |
static std::optional< SourceLocation > | skipLParensBackwards (SourceLocation Start, const ASTContext &Context) |
static std::optional< FixItHint > | fixIfNotDangerous (SourceLocation Loc, StringRef Text) |
static std::string | buildQualifier (Qualifiers::TQ Qualifier, bool WhitespaceBefore=false) |
static std::optional< FixItHint > | changeValue (const VarDecl &Var, Qualifiers::TQ Qualifier, QualifierTarget QualTarget, QualifierPolicy QualPolicy, const ASTContext &Context) |
static std::optional< FixItHint > | changePointerItself (const VarDecl &Var, Qualifiers::TQ Qualifier, const ASTContext &Context) |
static std::optional< FixItHint > | changePointer (const VarDecl &Var, Qualifiers::TQ Qualifier, const Type *Pointee, QualifierTarget QualTarget, QualifierPolicy QualPolicy, const ASTContext &Context) |
static std::optional< FixItHint > | changeReferencee (const VarDecl &Var, Qualifiers::TQ Qualifier, QualType Pointee, QualifierTarget QualTarget, QualifierPolicy QualPolicy, const ASTContext &Context) |
std::optional< FixItHint > | addQualifierToVarDecl (const VarDecl &Var, const ASTContext &Context, Qualifiers::TQ Qualifier, QualifierTarget QualTarget=QualifierTarget::Pointee, QualifierPolicy QualPolicy=QualifierPolicy::Left) |
Creates fix to qualify VarDecl with the specified Qualifier . Requires that Var is isolated in written code like in int foo = 42;. | |
bool | areParensNeededForStatement (const Stmt &Node) |
static bool | needParensAfterUnaryOperator (const Expr &ExprNode) |
std::string | formatDereference (const Expr &ExprNode, const ASTContext &Context) |
|
strong |
This enum defines where the qualifier shall be preferably added.
Enumerator | |
---|---|
Left | |
Right |
Definition at line 23 of file FixItHintUtils.h.
|
strong |
This enum defines which entity is the target for adding the qualifier. This makes only a difference for pointer-types. Other types behave identical for either value of ConstTarget
.
Definition at line 31 of file FixItHintUtils.h.
std::optional< FixItHint > clang::tidy::utils::fixit::addQualifierToVarDecl | ( | const VarDecl & | Var, |
const ASTContext & | Context, | ||
Qualifiers::TQ | Qualifier, | ||
QualifierTarget | QualTarget, | ||
QualifierPolicy | QualPolicy ) |
Creates fix to qualify VarDecl with the specified Qualifier
. Requires that Var is isolated in written code like in int foo = 42;.
Definition at line 187 of file FixItHintUtils.cpp.
References changePointer(), changePointerItself(), changeReferencee(), changeValue(), isMemberOrFunctionPointer(), isValueType(), Left, Pointee, Right, and Value.
Referenced by clang::tidy::performance::UnnecessaryValueParamCheck::handleConstRefFix(), and clang::tidy::performance::recordFixes().
bool clang::tidy::utils::fixit::areParensNeededForStatement | ( | const Stmt & | Node | ) |
Definition at line 230 of file FixItHintUtils.cpp.
Referenced by clang::tidy::readability::RedundantCastingCheck::check(), and clang::tidy::readability::fixGenericExprCastToBool().
|
static |
Definition at line 75 of file FixItHintUtils.cpp.
Referenced by changePointer(), changePointerItself(), changeReferencee(), and changeValue().
|
static |
Definition at line 118 of file FixItHintUtils.cpp.
References buildQualifier(), changePointerItself(), clang::tidy::utils::lexer::findPreviousTokenKind(), fixIfNotDangerous(), isValueType(), Left, locDangerous(), Pointee, Right, skipLParensBackwards(), and Value.
Referenced by addQualifierToVarDecl().
|
static |
Definition at line 104 of file FixItHintUtils.cpp.
References buildQualifier(), fixIfNotDangerous(), locDangerous(), and skipLParensBackwards().
Referenced by addQualifierToVarDecl(), and changePointer().
|
static |
Definition at line 169 of file FixItHintUtils.cpp.
References buildQualifier(), clang::tidy::utils::lexer::findPreviousAnyTokenKind(), fixIfNotDangerous(), isValueType(), Left, Pointee, and skipLParensBackwards().
Referenced by addQualifierToVarDecl().
|
static |
Definition at line 84 of file FixItHintUtils.cpp.
References buildQualifier(), fixIfNotDangerous(), Left, Right, and skipLParensBackwards().
Referenced by addQualifierToVarDecl().
FixItHint clang::tidy::utils::fixit::changeVarDeclToReference | ( | const VarDecl & | Var, |
ASTContext & | Context ) |
Creates fix to make VarDecl a reference by adding &.
Definition at line 20 of file FixItHintUtils.cpp.
References clang::tidy::utils::lexer::getPreviousToken().
Referenced by clang::tidy::performance::UnnecessaryValueParamCheck::handleConstRefFix(), and clang::tidy::performance::recordFixes().
|
static |
Definition at line 66 of file FixItHintUtils.cpp.
References locDangerous().
Referenced by changePointer(), changePointerItself(), changeReferencee(), and changeValue().
std::string clang::tidy::utils::fixit::formatDereference | ( | const Expr & | ExprNode, |
const ASTContext & | Context ) |
Definition at line 282 of file FixItHintUtils.cpp.
References needParensAfterUnaryOperator().
Referenced by clang::tidy::readability::RedundantStringCStrCheck::check(), and clang::tidy::utils::withoutCStrReplacement().
|
static |
Definition at line 36 of file FixItHintUtils.cpp.
Referenced by addQualifierToVarDecl().
|
static |
Definition at line 31 of file FixItHintUtils.cpp.
Referenced by addQualifierToVarDecl(), changePointer(), changeReferencee(), and isValueType().
|
static |
Definition at line 35 of file FixItHintUtils.cpp.
References isValueType().
|
static |
Definition at line 41 of file FixItHintUtils.cpp.
Referenced by changePointer(), changePointerItself(), fixIfNotDangerous(), and skipLParensBackwards().
|
static |
Definition at line 267 of file FixItHintUtils.cpp.
Referenced by formatDereference().
|
static |
Definition at line 46 of file FixItHintUtils.cpp.
References clang::tidy::utils::lexer::findPreviousTokenStart(), clang::tidy::utils::lexer::getPreviousToken(), and locDangerous().
Referenced by changePointer(), changePointerItself(), changeReferencee(), and changeValue().