#ifndef LLVM_CLANG_STATICANALYZER_CORE_PATHSENSITIVE_STORE_H
#define LLVM_CLANG_STATICANALYZER_CORE_PATHSENSITIVE_STORE_H
#include "clang/AST/Type.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ProgramState_Fwd.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/SVals.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/StoreRef.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/SymExpr.h"
#include "clang/Basic/LLVM.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/SmallVector.h"
#include <cassert>
#include <cstdint>
#include <memory>
#include <optional>
namespace clang {
class ASTContext;
class CastExpr;
class CompoundLiteralExpr;
class CXXBasePath;
class Decl;
class Expr;
class LocationContext;
class ObjCIvarDecl;
class StackFrameContext;
namespace ento {
class CallEvent;
class ProgramStateManager;
class ScanReachableSymbols;
class SymbolReaper;
InvalidatedSymbols;
class StoreManager { … };
inline StoreRef::StoreRef(Store store, StoreManager & smgr)
: … { … }
inline StoreRef::StoreRef(const StoreRef &sr)
: … { … }
inline StoreRef::~StoreRef() { … }
inline StoreRef &StoreRef::operator=(StoreRef const &newStore) { … }
std::unique_ptr<StoreManager>
CreateRegionStoreManager(ProgramStateManager &StMgr);
}
}
#endif