Cppcheck
|
#include <pathanalysis.h>
Classes | |
struct | Info |
Public Types | |
enum class | Progress { Continue , Break } |
Public Member Functions | |
PathAnalysis (const Token *start, const Library &library) | |
void | forward (const std::function< Progress(const Info &)> &f) const |
Info | forwardFind (std::function< bool(const Info &)> pred) const |
Public Attributes | |
const Token * | start |
const Library * | library |
Private Member Functions | |
Progress | forwardRange (const Token *startToken, const Token *endToken, Info info, const std::function< Progress(const Info &)> &f) const |
Static Private Member Functions | |
static Progress | forwardRecursive (const Token *tok, Info info, const std::function< PathAnalysis::Progress(const Info &)> &f) |
static const Scope * | findOuterScope (const Scope *scope) |
static std::pair< bool, bool > | checkCond (const Token *tok, bool &known) |
Definition at line 32 of file pathanalysis.h.
|
strong |
Enumerator | |
---|---|
Continue | |
Break |
Definition at line 33 of file pathanalysis.h.
Definition at line 37 of file pathanalysis.h.
|
staticprivate |
Definition at line 49 of file pathanalysis.cpp.
References Token::hasKnownIntValue(), and Token::values().
Referenced by forwardRange().
Definition at line 30 of file pathanalysis.cpp.
References Scope::eSwitch, Scope::isLocal(), Scope::nestedIn, and Scope::type.
Referenced by forward().
Definition at line 175 of file pathanalysis.cpp.
References Scope::bodyEnd, findOuterScope(), forwardRange(), Token::scope(), and start.
Referenced by forwardFind().
Definition at line 51 of file pathanalysis.h.
|
private |
Definition at line 84 of file pathanalysis.cpp.
References assignExpr(), Break, checkCond(), Continue, PathAnalysis::Info::errorPath, forwardRecursive(), getCondTok(), PathAnalysis::Info::known, Token::link(), Token::linkAt(), Token::Match(), Token::next(), nextAfterAstRightmostLeaf(), precedes(), Token::simpleMatch(), start, PathAnalysis::Info::tok, and Token::tokAt().
Referenced by forward().
|
staticprivate |
Definition at line 70 of file pathanalysis.cpp.
References Token::astOperand1(), Token::astOperand2(), Break, Continue, and PathAnalysis::Info::tok.
Referenced by forwardRange().
const Library* PathAnalysis::library |
Definition at line 41 of file pathanalysis.h.
const Token* PathAnalysis::start |
Definition at line 40 of file pathanalysis.h.
Referenced by forward(), and forwardRange().