clang API Documentation
Definition at line 456 of file Consumed.cpp.
clang::consumed::ConsumedStmtVisitor::ConsumedStmtVisitor | ( | AnalysisDeclContext & | AC, |
ConsumedAnalyzer & | Analyzer, | ||
ConsumedStateMap * | StateMap | ||
) | [inline] |
Definition at line 507 of file Consumed.cpp.
void clang::consumed::ConsumedStmtVisitor::checkCallability | ( | const PropagationInfo & | PInfo, |
const FunctionDecl * | FunDecl, | ||
SourceLocation | BlameLoc | ||
) |
Definition at line 574 of file Consumed.cpp.
References clang::consumed::CS_None, clang::consumed::PropagationInfo::getAsState(), clang::Decl::getAttr(), clang::NamedDecl::getNameAsString(), clang::consumed::PropagationInfo::getVar(), isCallableInState(), clang::consumed::PropagationInfo::isTest(), clang::consumed::PropagationInfo::isVar(), and stateToString().
Referenced by clang::consumed::ConsumedAnalyzer::run().
PropagationInfo clang::consumed::ConsumedStmtVisitor::getInfo | ( | const Expr * | StmtNode | ) | const [inline] |
Definition at line 511 of file Consumed.cpp.
bool clang::consumed::ConsumedStmtVisitor::handleCall | ( | const CallExpr * | Call, |
const Expr * | ObjArg, | ||
const FunctionDecl * | FunD | ||
) |
Definition at line 608 of file Consumed.cpp.
References clang::consumed::CS_Consumed, clang::consumed::CS_Unknown, clang::CallExpr::getArg(), clang::consumed::PropagationInfo::getAsState(), clang::Decl::getAttr(), clang::Expr::getExprLoc(), clang::CallExpr::getNumArgs(), clang::FunctionDecl::getNumParams(), clang::FunctionDecl::getParamDecl(), clang::Type::getPointeeType(), clang::consumed::PropagationInfo::getTmp(), clang::ValueDecl::getType(), clang::consumed::PropagationInfo::getVar(), clang::QualType::isConstQualified(), isPointerOrRef(), isRValueRef(), isSetOnReadPtrType(), isTestingFunction(), clang::consumed::PropagationInfo::isTmp(), clang::consumed::PropagationInfo::isVar(), mapParamTypestateAttrState(), mapReturnTypestateAttrState(), mapSetTypestateAttrState(), clang::consumed::setStateForVarOrTmp(), stateToString(), and testsFor().
void clang::consumed::ConsumedStmtVisitor::reset | ( | ConsumedStateMap * | NewStateMap | ) | [inline] |
Definition at line 520 of file Consumed.cpp.
Referenced by clang::consumed::ConsumedAnalyzer::run().
void clang::consumed::ConsumedStmtVisitor::VisitBinaryOperator | ( | const BinaryOperator * | BinOp | ) |
Definition at line 700 of file Consumed.cpp.
References clang::BO_LAnd, clang::BO_LOr, clang::BO_PtrMemD, clang::BO_PtrMemI, clang::consumed::CS_None, clang::BinaryOperator::getLHS(), clang::BinaryOperator::getOpcode(), and clang::BinaryOperator::getRHS().
void clang::consumed::ConsumedStmtVisitor::VisitCallExpr | ( | const CallExpr * | Call | ) |
Definition at line 742 of file Consumed.cpp.
References clang::consumed::CS_Consumed, clang::CallExpr::getArg(), clang::CallExpr::getDirectCallee(), clang::NamedDecl::getNameAsString(), clang::CallExpr::getNumArgs(), and clang::Decl::isInStdNamespace().
void clang::consumed::ConsumedStmtVisitor::VisitCastExpr | ( | const CastExpr * | Cast | ) |
Definition at line 759 of file Consumed.cpp.
References clang::CastExpr::getSubExpr().
void clang::consumed::ConsumedStmtVisitor::VisitCXXBindTemporaryExpr | ( | const CXXBindTemporaryExpr * | Temp | ) |
Definition at line 763 of file Consumed.cpp.
References clang::CXXBindTemporaryExpr::getSubExpr().
void clang::consumed::ConsumedStmtVisitor::VisitCXXConstructExpr | ( | const CXXConstructExpr * | Call | ) |
Definition at line 774 of file Consumed.cpp.
References clang::consumed::CS_Consumed, clang::consumed::CS_None, clang::consumed::CS_Unknown, clang::CXXConstructExpr::getArg(), clang::Decl::getAttr(), clang::CXXConstructExpr::getConstructor(), clang::Type::getPointeeType(), clang::CXXMethodDecl::getThisType(), isConsumableType(), clang::CXXConstructorDecl::isCopyConstructor(), clang::CXXConstructorDecl::isDefaultConstructor(), clang::CXXConstructorDecl::isMoveConstructor(), isSetOnReadPtrType(), mapConsumableAttrState(), and mapReturnTypestateAttrState().
void clang::consumed::ConsumedStmtVisitor::VisitCXXMemberCallExpr | ( | const CXXMemberCallExpr * | Call | ) |
Definition at line 807 of file Consumed.cpp.
References clang::CXXMemberCallExpr::getImplicitObjectArgument(), and clang::CXXMemberCallExpr::getMethodDecl().
void clang::consumed::ConsumedStmtVisitor::VisitCXXOperatorCallExpr | ( | const CXXOperatorCallExpr * | Call | ) |
Definition at line 818 of file Consumed.cpp.
References clang::CallExpr::getArg(), clang::CallExpr::getDirectCallee(), getInfo(), and clang::CXXOperatorCallExpr::getOperator().
void clang::consumed::ConsumedStmtVisitor::VisitDeclRefExpr | ( | const DeclRefExpr * | DeclRef | ) |
Definition at line 840 of file Consumed.cpp.
References clang::consumed::CS_None, and clang::DeclRefExpr::getDecl().
void clang::consumed::ConsumedStmtVisitor::VisitDeclStmt | ( | const DeclStmt * | DelcS | ) |
Definition at line 846 of file Consumed.cpp.
References clang::DeclStmt::decls(), clang::DeclStmt::getSingleDecl(), and clang::DeclStmt::isSingleDecl().
void clang::consumed::ConsumedStmtVisitor::VisitMaterializeTemporaryExpr | ( | const MaterializeTemporaryExpr * | Temp | ) |
Definition at line 856 of file Consumed.cpp.
References clang::MaterializeTemporaryExpr::GetTemporaryExpr().
void clang::consumed::ConsumedStmtVisitor::VisitMemberExpr | ( | const MemberExpr * | MExpr | ) |
Definition at line 862 of file Consumed.cpp.
References clang::MemberExpr::getBase().
void clang::consumed::ConsumedStmtVisitor::VisitParmVarDecl | ( | const ParmVarDecl * | Param | ) |
Definition at line 867 of file Consumed.cpp.
References clang::consumed::CS_None, clang::consumed::CS_Unknown, clang::Decl::getAttr(), clang::Type::getPointeeType(), clang::ValueDecl::getType(), isConsumableType(), clang::Type::isReferenceType(), isRValueRef(), mapConsumableAttrState(), and mapParamTypestateAttrState().
Referenced by clang::consumed::ConsumedAnalyzer::run().
void clang::consumed::ConsumedStmtVisitor::VisitReturnStmt | ( | const ReturnStmt * | Ret | ) |
Definition at line 886 of file Consumed.cpp.
References clang::consumed::CS_None, clang::ReturnStmt::getLocStart(), clang::ReturnStmt::getReturnLoc(), clang::ReturnStmt::getRetValue(), and stateToString().
void clang::consumed::ConsumedStmtVisitor::VisitUnaryOperator | ( | const UnaryOperator * | UOp | ) |
Definition at line 906 of file Consumed.cpp.
References clang::UnaryOperator::getOpcode(), clang::UnaryOperator::getSubExpr(), clang::UO_AddrOf, and clang::UO_LNot.
void clang::consumed::ConsumedStmtVisitor::VisitVarDecl | ( | const VarDecl * | Var | ) |
Definition at line 926 of file Consumed.cpp.
References clang::consumed::CS_None, clang::consumed::CS_Unknown, clang::consumed::PropagationInfo::getAsState(), clang::VarDecl::getInit(), clang::ValueDecl::getType(), clang::VarDecl::hasInit(), clang::Expr::IgnoreImplicit(), and isConsumableType().