MCPcopy Create free account
hub / github.com/Kitware/CMake / AddWatch

Method AddWatch

Source/cmVariableWatch.cxx:26–44  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

24cmVariableWatch::~cmVariableWatch() = default;
25
26bool cmVariableWatch::AddWatch(std::string const& variable, WatchMethod method,
27 void* client_data /*=0*/,
28 DeleteData delete_data /*=0*/)
29{
30 auto p = std::make_shared<cmVariableWatch::Pair>();
31 p->Method = method;
32 p->ClientData = client_data;
33 p->DeleteDataCall = delete_data;
34 cmVariableWatch::VectorOfPairs& vp = this->WatchMap[variable];
35 for (auto& pair : vp) {
36 if (pair->Method == method && client_data &&
37 client_data == pair->ClientData) {
38 // Callback already exists
39 return false;
40 }
41 }
42 vp.push_back(std::move(p));
43 return true;
44}
45
46void cmVariableWatch::RemoveWatch(std::string const& variable,
47 WatchMethod method, void* client_data /*=0*/)

Callers 2

cmVariableWatchCommandFunction · 0.80
WatchUnusedCliMethod · 0.80

Calls 2

moveFunction · 0.85
push_backMethod · 0.80

Tested by

no test coverage detected