reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
106 switch (E->getStmtClass()) { 147 return !E->isLValue() ? ClassifyTemporary(E->getType()) : Cl::CL_LValue; 147 return !E->isLValue() ? ClassifyTemporary(E->getType()) : Cl::CL_LValue; 199 return ClassifyInternal(Ctx, cast<ConstantExpr>(E)->getSubExpr()); 204 cast<SubstNonTypeTemplateParmExpr>(E)->getReplacement()); 211 if (cast<ArraySubscriptExpr>(E)->getBase()->getType()->isVectorType()) 212 return ClassifyInternal(Ctx, cast<ArraySubscriptExpr>(E)->getBase()); 216 auto *Base = cast<ArraySubscriptExpr>(E)->getBase()->IgnoreImpCasts(); 225 if (E->getType() == Ctx.UnknownAnyTy) 226 return isa<FunctionDecl>(cast<DeclRefExpr>(E)->getDecl()) 228 return ClassifyDecl(Ctx, cast<DeclRefExpr>(E)->getDecl()); 232 return ClassifyMemberExpr(Ctx, cast<MemberExpr>(E)); 235 switch (cast<UnaryOperator>(E)->getOpcode()) { 244 return ClassifyInternal(Ctx, cast<UnaryOperator>(E)->getSubExpr()); 250 const Expr *Op = cast<UnaryOperator>(E)->getSubExpr()->IgnoreParens(); 271 return ClassifyExprValueKind(Lang, E, E->getValueKind()); 271 return ClassifyExprValueKind(Lang, E, E->getValueKind()); 275 return ClassifyExprValueKind(Lang, E, 276 cast<PseudoObjectExpr>(E)->getValueKind()); 281 return ClassifyExprValueKind(Lang, E, E->getValueKind()); 281 return ClassifyExprValueKind(Lang, E, E->getValueKind()); 286 return ClassifyInternal(Ctx, cast<ParenExpr>(E)->getSubExpr()); 292 if (cast<GenericSelectionExpr>(E)->isResultDependent()) 294 return ClassifyInternal(Ctx,cast<GenericSelectionExpr>(E)->getResultExpr()); 300 return ClassifyBinaryOp(Ctx, cast<BinaryOperator>(E)); 308 return ClassifyUnnamed(Ctx, cast<CallExpr>(E)->getCallReturnType(Ctx)); 312 Ctx, cast<CXXRewrittenBinaryOperator>(E)->getSemanticForm()); 316 return ClassifyInternal(Ctx, cast<ChooseExpr>(E)->getChosenSubExpr()); 321 if (cast<ExtVectorElementExpr>(E)->containsDuplicateElements()) 323 if (cast<ExtVectorElementExpr>(E)->isArrow()) 325 return ClassifyInternal(Ctx, cast<ExtVectorElementExpr>(E)->getBase()); 329 return ClassifyInternal(Ctx, cast<CXXDefaultArgExpr>(E)->getExpr()); 333 return ClassifyInternal(Ctx, cast<CXXDefaultInitExpr>(E)->getExpr()); 337 return ClassifyInternal(Ctx, cast<CXXBindTemporaryExpr>(E)->getSubExpr()); 341 return ClassifyInternal(Ctx, cast<ExprWithCleanups>(E)->getSubExpr()); 354 return ClassifyUnnamed(Ctx, cast<ExplicitCastExpr>(E)->getTypeAsWritten()); 358 cast<CXXUnresolvedConstructExpr>(E)->getTypeAsWritten()); 362 const auto *co = cast<BinaryConditionalOperator>(E); 369 const auto *co = cast<ConditionalOperator>(E); 377 cast<ObjCMessageExpr>(E)->getMethodDecl()) { 392 return ClassifyUnnamed(Ctx, E->getType()); 395 return ClassifyInternal(Ctx, cast<DesignatedInitExpr>(E)->getInit()); 398 const CompoundStmt *S = cast<StmtExpr>(E)->getSubStmt(); 408 return ClassifyInternal(Ctx, cast<PackExpansionExpr>(E)->getPattern()); 411 return cast<MaterializeTemporaryExpr>(E)->isBoundToLvalueReference() 420 if (E->isRValue()) 421 return ClassifyExprValueKind(Lang, E, E->getValueKind()); 421 return ClassifyExprValueKind(Lang, E, E->getValueKind()); 422 assert(cast<InitListExpr>(E)->getNumInits() == 1 && 424 return ClassifyInternal(Ctx, cast<InitListExpr>(E)->getInit(0)); 428 return ClassifyInternal(Ctx, cast<CoroutineSuspendExpr>(E)->getResumeExpr());