clang-tools 6.0.0

Functions
clang::tidy::utils::decl_ref_expr Namespace Reference

## Functions
SmallPtrSet< const DeclRefExpr *, 16 > | constReferenceDeclRefExprs (const VarDecl &VarDecl, const Stmt &Stmt, ASTContext &Context)
| Returns set of all `DeclRefExprs` to `VarDecl` within `Stmt` where `VarDecl` is guaranteed to be accessed in a const fashion. More...
SmallPtrSet< const DeclRefExpr *, 16 > | constReferenceDeclRefExprs (const VarDecl &VarDecl, const Decl &Decl, ASTContext &Context)
| Returns set of all `DeclRefExprs` to `VarDecl` within `Decl` where `VarDecl` is guaranteed to be accessed in a const fashion. More...
bool | isOnlyUsedAsConst (const VarDecl &Var, const Stmt &Stmt, ASTContext &Context)
| Returns true if all `DeclRefExpr` to the variable within `Stmt` do not modify it. More...
SmallPtrSet< const DeclRefExpr *, 16 > | allDeclRefExprs (const VarDecl &VarDecl, const Stmt &Stmt, ASTContext &Context)
| Returns set of all `DeclRefExprs` to `VarDecl` within `Stmt`. More...
SmallPtrSet< const DeclRefExpr *, 16 > | allDeclRefExprs (const VarDecl &VarDecl, const Decl &Decl, ASTContext &Context)
| Returns set of all `DeclRefExprs` to `VarDecl` within `Decl`. More...
bool | isCopyConstructorArgument (const DeclRefExpr &DeclRef, const Decl &Decl, ASTContext &Context)
| Returns `true` if `DeclRefExpr` is the argument of a copy-constructor call expression within `Decl`. More...
bool | isCopyAssignmentArgument (const DeclRefExpr &DeclRef, const Decl &Decl, ASTContext &Context)
| Returns `true` if `DeclRefExpr` is the argument of a copy-assignment operator CallExpr within `Decl`. More...

## Function Documentation

## ◆ allDeclRefExprs() [1/2]

llvm::SmallPtrSet< const DeclRefExpr *, 16 > clang::tidy::utils::decl_ref_expr::allDeclRefExprs | ( | const VarDecl & | VarDecl,
|  | const Stmt & | Stmt,
|  | ASTContext & | Context
| ) |  |

Returns set of all `DeclRefExprs` to `VarDecl` within `Stmt`.

Definition at line 121 of file DeclRefExprUtils.cpp.

Referenced by clang::tidy::performance::UnnecessaryValueParamCheck::check().

## ◆ allDeclRefExprs() [2/2]

llvm::SmallPtrSet< const DeclRefExpr *, 16 > clang::tidy::utils::decl_ref_expr::allDeclRefExprs | ( | const VarDecl & | VarDecl,
|  | const Decl & | Decl,
|  | ASTContext & | Context
| ) |  |

Returns set of all `DeclRefExprs` to `VarDecl` within `Decl`.

Definition at line 131 of file DeclRefExprUtils.cpp.

## ◆ constReferenceDeclRefExprs() [1/2]

llvm::SmallPtrSet< const DeclRefExpr *, 16 > clang::tidy::utils::decl_ref_expr::constReferenceDeclRefExprs | ( | const VarDecl & | VarDecl,
|  | const Stmt & | Stmt,
|  | ASTContext & | Context
| ) |  |

Returns set of all `DeclRefExprs` to `VarDecl` within `Stmt` where `VarDecl` is guaranteed to be accessed in a const fashion.

Definition at line 46 of file DeclRefExprUtils.cpp.

Referenced by clang::tidy::performance::UnnecessaryValueParamCheck::check().

## ◆ constReferenceDeclRefExprs() [2/2]

llvm::SmallPtrSet< const DeclRefExpr *, 16 > clang::tidy::utils::decl_ref_expr::constReferenceDeclRefExprs | ( | const VarDecl & | VarDecl,
|  | const Decl & | Decl,
|  | ASTContext & | Context
| ) |  |

Returns set of all `DeclRefExprs` to `VarDecl` within `Decl` where `VarDecl` is guaranteed to be accessed in a const fashion.

Definition at line 77 of file DeclRefExprUtils.cpp.

## ◆ isCopyAssignmentArgument()

bool clang::tidy::utils::decl_ref_expr::isCopyAssignmentArgument | ( | const DeclRefExpr & | DeclRef,
|  | const Decl & | Decl,
|  | ASTContext & | Context
| ) |  |

Returns `true` if `DeclRefExpr` is the argument of a copy-assignment operator CallExpr within `Decl`.

Definition at line 155 of file DeclRefExprUtils.cpp.

Referenced by clang::tidy::performance::UnnecessaryValueParamCheck::check().

## ◆ isCopyConstructorArgument()

bool clang::tidy::utils::decl_ref_expr::isCopyConstructorArgument | ( | const DeclRefExpr & | DeclRef,
|  | const Decl & | Decl,
|  | ASTContext & | Context
| ) |  |

Returns `true` if `DeclRefExpr` is the argument of a copy-constructor call expression within `Decl`.

Definition at line 141 of file DeclRefExprUtils.cpp.

Referenced by clang::tidy::performance::UnnecessaryValueParamCheck::check().

## ◆ isOnlyUsedAsConst()

bool clang::tidy::utils::decl_ref_expr::isOnlyUsedAsConst | ( | const VarDecl & | Var,
|  | const Stmt & | Stmt,
|  | ASTContext & | Context
| ) |  |

Returns true if all `DeclRefExpr` to the variable within `Stmt` do not modify it.

Returns `true` if only const methods or operators are called on the variable or the variable is a const reference or value argument to a `callExpr()`.

Definition at line 108 of file DeclRefExprUtils.cpp.

Referenced by clang::tidy::performance::ForRangeCopyCheck::check(), and clang::tidy::performance::UnnecessaryCopyInitialization::check().