Lines Matching refs:Exp

44   auto *Exp = dyn_cast<Expr>(&Node);  in AST_MATCHER_P()  local
45 if (!Exp) { in AST_MATCHER_P()
79 return ComplexMatcher.matches(*Exp, Finder, Builder); in AST_MATCHER_P()
147 const Stmt *ExprMutationAnalyzer::findMutation(const Expr *Exp) { in findMutation() argument
148 return findMutationMemoized(Exp, in findMutation()
163 const Stmt *ExprMutationAnalyzer::findPointeeMutation(const Expr *Exp) { in findPointeeMutation() argument
164 return findMutationMemoized(Exp, {/*TODO*/}, PointeeResults); in findPointeeMutation()
172 const Expr *Exp, llvm::ArrayRef<MutationFinder> Finders, in findMutationMemoized() argument
174 const auto Memoized = MemoizedResults.find(Exp); in findMutationMemoized()
178 if (isUnevaluated(Exp)) in findMutationMemoized()
179 return MemoizedResults[Exp] = nullptr; in findMutationMemoized()
182 if (const Stmt *S = (this->*Finder)(Exp)) in findMutationMemoized()
183 return MemoizedResults[Exp] = S; in findMutationMemoized()
186 return MemoizedResults[Exp] = nullptr; in findMutationMemoized()
202 bool ExprMutationAnalyzer::isUnevaluated(const Stmt *Exp, const Stmt &Stm, in isUnevaluated() argument
208 stmt(canResolveToExpr(equalsNode(Exp)), in isUnevaluated()
228 hasDescendant(equalsNode(Exp)))), in isUnevaluated()
234 bool ExprMutationAnalyzer::isUnevaluated(const Expr *Exp) { in isUnevaluated() argument
235 return isUnevaluated(Exp, Stm, Context); in isUnevaluated()
260 const Stmt *ExprMutationAnalyzer::findDirectMutation(const Expr *Exp) { in findDirectMutation() argument
263 isAssignmentOperator(), hasLHS(canResolveToExpr(equalsNode(Exp)))); in findDirectMutation()
268 hasUnaryOperand(canResolveToExpr(equalsNode(Exp)))); in findDirectMutation()
276 on(canResolveToExpr(equalsNode(Exp)))), in findDirectMutation()
278 hasArgument(0, canResolveToExpr(equalsNode(Exp)))), in findDirectMutation()
284 allOf(ignoringImpCasts(canResolveToExpr(equalsNode(Exp))), in findDirectMutation()
291 canResolveToExpr(equalsNode(Exp)))), in findDirectMutation()
293 canResolveToExpr(equalsNode(Exp)))))))), in findDirectMutation()
299 equalsNode(Exp))))))))); in findDirectMutation()
309 hasUnaryOperand(canResolveToExpr(equalsNode(Exp)))); in findDirectMutation()
313 has(canResolveToExpr(equalsNode(Exp)))); in findDirectMutation()
321 argumentCountIs(1), hasArgument(0, canResolveToExpr(equalsNode(Exp)))); in findDirectMutation()
329 anyOf(canResolveToExpr(equalsNode(Exp)), in findDirectMutation()
330 memberExpr(hasObjectExpression(canResolveToExpr(equalsNode(Exp))))), in findDirectMutation()
342 hasAnyArgument(canResolveToExpr(equalsNode(Exp)))), in findDirectMutation()
344 hasAnyArgument(canResolveToExpr(equalsNode(Exp)))), in findDirectMutation()
350 parenListExpr(hasDescendant(expr(canResolveToExpr(equalsNode(Exp))))), in findDirectMutation()
353 initListExpr(hasAnyInit(expr(canResolveToExpr(equalsNode(Exp)))))); in findDirectMutation()
359 const auto AsLambdaRefCaptureInit = lambdaExpr(hasCaptureInit(Exp)); in findDirectMutation()
367 returnStmt(hasReturnValue(canResolveToExpr(equalsNode(Exp)))); in findDirectMutation()
371 hasRangeInit(declRefExpr(allOf(canResolveToExpr(equalsNode(Exp)), in findDirectMutation()
386 const Stmt *ExprMutationAnalyzer::findMemberMutation(const Expr *Exp) { in findMemberMutation() argument
390 canResolveToExpr(equalsNode(Exp)))), in findMemberMutation()
392 canResolveToExpr(equalsNode(Exp)))))) in findMemberMutation()
398 const Stmt *ExprMutationAnalyzer::findArrayElementMutation(const Expr *Exp) { in findArrayElementMutation() argument
402 anyOf(hasBase(canResolveToExpr(equalsNode(Exp))), in findArrayElementMutation()
406 equalsNode(Exp)))))))) in findArrayElementMutation()
412 const Stmt *ExprMutationAnalyzer::findCastMutation(const Expr *Exp) { in findCastMutation() argument
417 stmt(castExpr(hasSourceExpression(canResolveToExpr(equalsNode(Exp))), in findCastMutation()
429 expr(castExpr(hasSourceExpression(canResolveToExpr(equalsNode(Exp))), in findCastMutation()
443 hasArgument(0, canResolveToExpr(equalsNode(Exp)))) in findCastMutation()
449 const Stmt *ExprMutationAnalyzer::findRangeLoopMutation(const Expr *Exp) { in findRangeLoopMutation() argument
465 hasRangeInit(canResolveToExpr(equalsNode(Exp))))) in findRangeLoopMutation()
493 hasRangeInit(canResolveToExpr(equalsNode(Exp)))))) in findRangeLoopMutation()
507 hasRangeInit(canResolveToExpr(equalsNode(Exp))))), in findRangeLoopMutation()
512 const Stmt *ExprMutationAnalyzer::findReferenceMutation(const Expr *Exp) { in findReferenceMutation() argument
522 hasArgument(0, canResolveToExpr(equalsNode(Exp)))) in findReferenceMutation()
533 hasInitializer(anyOf(canResolveToExpr(equalsNode(Exp)), in findReferenceMutation()
535 canResolveToExpr(equalsNode(Exp)))))), in findReferenceMutation()
546 const Stmt *ExprMutationAnalyzer::findFunctionArgMutation(const Expr *Exp) { in findFunctionArgMutation() argument
548 canResolveToExpr(equalsNode(Exp)), in findFunctionArgMutation()
564 const auto *Exp = Nodes.getNodeAs<Expr>(NodeID<Expr>::value); in findFunctionArgMutation() local
567 return Exp; in findFunctionArgMutation()
589 return Exp; in findFunctionArgMutation()
594 return Exp; in findFunctionArgMutation()