Cppcheck
Classes | Typedefs | Enumerations | Functions
ExprEngine Namespace Reference

Classes

class  DataBase
 
class  Value
 
class  UninitValue
 
class  IntRange
 
class  FloatRange
 
class  ConditionalValue
 
class  ArrayValue
 
class  StringLiteralValue
 
class  StructValue
 
class  AddressOfValue
 
class  BinOpResult
 
class  IntegerTruncation
 
class  FunctionCallArgumentValues
 
class  BailoutValue
 

Typedefs

typedef std::shared_ptr< ValueValuePtr
 
typedef std::function< void(const Token *, const ExprEngine::Value &, ExprEngine::DataBase *)> Callback
 

Enumerations

enum class  ValueType {
  UninitValue , IntRange , FloatRange , ConditionalValue ,
  ArrayValue , StringLiteralValue , StructValue , AddressOfValue ,
  BinOpResult , IntegerTruncation , FunctionCallArgumentValues , BailoutValue
}
 

Functions

std::string str (int128_t)
 
void CPPCHECKLIB executeAllFunctions (ErrorLogger *errorLogger, const Tokenizer *tokenizer, const Settings *settings, const std::vector< Callback > &callbacks, std::ostream &report)
 Execute all functions. More...
 
void executeFunction (const Scope *functionScope, ErrorLogger *errorLogger, const Tokenizer *tokenizer, const Settings *settings, const std::vector< Callback > &callbacks, std::ostream &report)
 
void runChecks (ErrorLogger *errorLogger, const Tokenizer *tokenizer, const Settings *settings)
 
void dump (ExprEngine::ValuePtr val)
 

Typedef Documentation

◆ Callback

typedef std::function<void (const Token *, const ExprEngine::Value &, ExprEngine::DataBase *)> ExprEngine::Callback

Definition at line 338 of file exprengine.h.

◆ ValuePtr

typedef std::shared_ptr<Value> ExprEngine::ValuePtr

Definition at line 74 of file exprengine.h.

Enumeration Type Documentation

◆ ValueType

enum ExprEngine::ValueType
strong
Enumerator
UninitValue 
IntRange 
FloatRange 
ConditionalValue 
ArrayValue 
StringLiteralValue 
StructValue 
AddressOfValue 
BinOpResult 
IntegerTruncation 
FunctionCallArgumentValues 
BailoutValue 

Definition at line 58 of file exprengine.h.

Function Documentation

◆ dump()

void ExprEngine::dump ( ExprEngine::ValuePtr  val)

Definition at line 3168 of file exprengine.cpp.

References dumpRecursive().

◆ executeAllFunctions()

void ExprEngine::executeAllFunctions ( ErrorLogger errorLogger,
const Tokenizer tokenizer,
const Settings settings,
const std::vector< Callback > &  callbacks,
std::ostream &  report 
)

Execute all functions.

Definition at line 2896 of file exprengine.cpp.

References executeFunction(), Scope::function, SymbolDatabase::functionScopes, Tokenizer::getSymbolDatabase(), and Function::name().

Referenced by runChecks().

◆ executeFunction()

void ExprEngine::executeFunction ( const Scope functionScope,
ErrorLogger errorLogger,
const Tokenizer tokenizer,
const Settings settings,
const std::vector< Callback > &  callbacks,
std::ostream &  report 
)

◆ runChecks()

void ExprEngine::runChecks ( ErrorLogger errorLogger,
const Tokenizer tokenizer,
const Settings settings 
)

◆ str()

std::string ExprEngine::str ( int128_t  value)