Cppcheck
|
#include "clangimport.h"
#include "errortypes.h"
#include "mathlib.h"
#include "settings.h"
#include "standards.h"
#include "symboldatabase.h"
#include "token.h"
#include "tokenize.h"
#include "tokenlist.h"
#include "utils.h"
#include "vfvalue.h"
#include <algorithm>
#include <cctype>
#include <cstring>
#include <iostream>
#include <iterator>
#include <list>
#include <map>
#include <memory>
#include <set>
#include <sstream>
#include <stack>
#include <string>
#include <utility>
#include <vector>
#include <numeric>
Go to the source code of this file.
Classes | |
struct | clangimport::Data |
struct | clangimport::Data::Decl |
class | clangimport::AstNode |
Namespaces | |
clangimport | |
Typedefs | |
using | clangimport::AstNodePtr = std::shared_ptr< AstNode > |
Functions | |
static std::string | unquote (const std::string &s) |
static std::vector< std::string > | splitString (const std::string &line) |
static void | setTypes (TokenList &tokenList) |
static void | setValues (const Tokenizer &tokenizer, const SymbolDatabase *symbolDatabase) |
Variables | |
static const std::string | AccessSpecDecl = "AccessSpecDecl" |
static const std::string | ArraySubscriptExpr = "ArraySubscriptExpr" |
static const std::string | BinaryOperator = "BinaryOperator" |
static const std::string | BreakStmt = "BreakStmt" |
static const std::string | CallExpr = "CallExpr" |
static const std::string | CaseStmt = "CaseStmt" |
static const std::string | CharacterLiteral = "CharacterLiteral" |
static const std::string | ClassTemplateDecl = "ClassTemplateDecl" |
static const std::string | ClassTemplateSpecializationDecl = "ClassTemplateSpecializationDecl" |
static const std::string | ConditionalOperator = "ConditionalOperator" |
static const std::string | ConstantExpr = "ConstantExpr" |
static const std::string | CompoundAssignOperator = "CompoundAssignOperator" |
static const std::string | CompoundStmt = "CompoundStmt" |
static const std::string | ContinueStmt = "ContinueStmt" |
static const std::string | CStyleCastExpr = "CStyleCastExpr" |
static const std::string | CXXBindTemporaryExpr = "CXXBindTemporaryExpr" |
static const std::string | CXXBoolLiteralExpr = "CXXBoolLiteralExpr" |
static const std::string | CXXConstructorDecl = "CXXConstructorDecl" |
static const std::string | CXXConstructExpr = "CXXConstructExpr" |
static const std::string | CXXDefaultArgExpr = "CXXDefaultArgExpr" |
static const std::string | CXXDeleteExpr = "CXXDeleteExpr" |
static const std::string | CXXDestructorDecl = "CXXDestructorDecl" |
static const std::string | CXXForRangeStmt = "CXXForRangeStmt" |
static const std::string | CXXFunctionalCastExpr = "CXXFunctionalCastExpr" |
static const std::string | CXXMemberCallExpr = "CXXMemberCallExpr" |
static const std::string | CXXMethodDecl = "CXXMethodDecl" |
static const std::string | CXXNewExpr = "CXXNewExpr" |
static const std::string | CXXNullPtrLiteralExpr = "CXXNullPtrLiteralExpr" |
static const std::string | CXXOperatorCallExpr = "CXXOperatorCallExpr" |
static const std::string | CXXRecordDecl = "CXXRecordDecl" |
static const std::string | CXXStaticCastExpr = "CXXStaticCastExpr" |
static const std::string | CXXStdInitializerListExpr = "CXXStdInitializerListExpr" |
static const std::string | CXXTemporaryObjectExpr = "CXXTemporaryObjectExpr" |
static const std::string | CXXThisExpr = "CXXThisExpr" |
static const std::string | CXXThrowExpr = "CXXThrowExpr" |
static const std::string | DeclRefExpr = "DeclRefExpr" |
static const std::string | DeclStmt = "DeclStmt" |
static const std::string | DefaultStmt = "DefaultStmt" |
static const std::string | DoStmt = "DoStmt" |
static const std::string | EnumConstantDecl = "EnumConstantDecl" |
static const std::string | EnumDecl = "EnumDecl" |
static const std::string | ExprWithCleanups = "ExprWithCleanups" |
static const std::string | FieldDecl = "FieldDecl" |
static const std::string | FloatingLiteral = "FloatingLiteral" |
static const std::string | ForStmt = "ForStmt" |
static const std::string | FunctionDecl = "FunctionDecl" |
static const std::string | FunctionTemplateDecl = "FunctionTemplateDecl" |
static const std::string | GotoStmt = "GotoStmt" |
static const std::string | IfStmt = "IfStmt" |
static const std::string | ImplicitCastExpr = "ImplicitCastExpr" |
static const std::string | InitListExpr = "InitListExpr" |
static const std::string | IntegerLiteral = "IntegerLiteral" |
static const std::string | LabelStmt = "LabelStmt" |
static const std::string | LinkageSpecDecl = "LinkageSpecDecl" |
static const std::string | MaterializeTemporaryExpr = "MaterializeTemporaryExpr" |
static const std::string | MemberExpr = "MemberExpr" |
static const std::string | NamespaceDecl = "NamespaceDecl" |
static const std::string | NullStmt = "NullStmt" |
static const std::string | ParenExpr = "ParenExpr" |
static const std::string | ParmVarDecl = "ParmVarDecl" |
static const std::string | RecordDecl = "RecordDecl" |
static const std::string | ReturnStmt = "ReturnStmt" |
static const std::string | StringLiteral = "StringLiteral" |
static const std::string | SwitchStmt = "SwitchStmt" |
static const std::string | TemplateArgument = "TemplateArgument" |
static const std::string | TypedefDecl = "TypedefDecl" |
static const std::string | UnaryOperator = "UnaryOperator" |
static const std::string | UnaryExprOrTypeTraitExpr = "UnaryExprOrTypeTraitExpr" |
static const std::string | VarDecl = "VarDecl" |
static const std::string | WhileStmt = "WhileStmt" |
|
static |
Definition at line 1519 of file clangimport.cpp.
References TokenList::front(), Token::next(), Token::simpleMatch(), Token::str(), and Token::tokAt().
Referenced by clangimport::parseClangAstDump().
|
static |
Definition at line 1532 of file clangimport.cpp.
References Scope::definedType, Variable::dimensions(), Tokenizer::getSettings(), Token::linkAt(), Token::next(), ValueType::parseDecl(), Settings::platform, Token::previous(), SymbolDatabase::scopeList, ValueFlow::Value::setKnown(), Token::simpleMatch(), Type::sizeOf, Tokenizer::tokens(), ValueType::typeSize(), Variable::valueType(), and Scope::varlist.
Referenced by clangimport::parseClangAstDump().
|
static |
Definition at line 125 of file clangimport.cpp.
Referenced by clangimport::AstNode::addTypeTokens().
|
static |
Definition at line 119 of file clangimport.cpp.
Referenced by clangimport::AstNode::addTypeTokens(), clangimport::AstNode::createTokens(), clangimport::AstNode::createTokensForCXXRecord(), clangimport::AstNode::createTokensFunctionDecl(), clangimport::AstNode::createTokensVarDecl(), clangimport::AstNode::getSpelling(), clangimport::AstNode::getTemplateParameters(), and clangimport::AstNode::getType().
|
static |
Definition at line 48 of file clangimport.cpp.
Referenced by clangimport::AstNode::createScope().
|
static |
Definition at line 49 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 50 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 51 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 52 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 53 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 54 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 55 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 56 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 59 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::getSpelling().
|
static |
Definition at line 60 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::createTokensFunctionDecl().
|
static |
Definition at line 57 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 58 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 61 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 62 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 63 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 64 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 66 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 65 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), clangimport::AstNode::createTokensFunctionDecl(), and clangimport::AstNode::getSpelling().
|
static |
Definition at line 67 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokensCall().
|
static |
Definition at line 68 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 69 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::createTokensFunctionDecl().
|
static |
Definition at line 70 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 71 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 72 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 73 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::getSpelling().
|
static |
Definition at line 74 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 75 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 76 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::createTokensCall().
|
static |
Definition at line 77 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 78 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 79 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 80 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 81 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 82 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 83 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::getSpelling().
|
static |
Definition at line 84 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 85 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 86 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 87 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 88 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 89 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 90 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 91 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 92 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 93 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::getSpelling().
|
static |
Definition at line 94 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 95 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 96 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 97 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 98 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 99 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 100 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 101 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 102 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 103 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 104 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 105 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 106 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 107 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokensFunctionDecl().
|
static |
Definition at line 108 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), clangimport::AstNode::createTokens1(), and clangimport::AstNode::getSpelling().
|
static |
Definition at line 109 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 110 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 111 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 112 of file clangimport.cpp.
Referenced by clangimport::AstNode::getTemplateParameters().
|
static |
Definition at line 113 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::createTokens1().
|
static |
Definition at line 115 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::getSpelling().
|
static |
Definition at line 114 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().
|
static |
Definition at line 116 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens(), and clangimport::AstNode::createTokens1().
|
static |
Definition at line 117 of file clangimport.cpp.
Referenced by clangimport::AstNode::createTokens().