| 139 | } |
| 140 | |
| 141 | bool isDefaultArgument(clang::Expr &E, unsigned AIdx) { |
| 142 | auto Args = getArgExprs(E); |
| 143 | if (AIdx >= Args.size()) |
| 144 | throw std::invalid_argument("Request Index exceeds available arguments"); |
| 145 | |
| 146 | auto *Arg = Args[AIdx]; |
| 147 | if (!Arg) |
| 148 | throw std::runtime_error("Unexpected nullptr of llvm instance"); |
| 149 | |
| 150 | return isa<CXXDefaultArgExpr>(Arg); |
| 151 | } |
| 152 | |
| 153 | bool isImplicitArgument(clang::Expr &E, unsigned AIdx) { |
| 154 | auto Args = getArgExprs(E); |