MCPcopy Create free account
hub / github.com/KDE/kdevelop / reparseProject

Method reparseProject

kdevplatform/shell/projectcontroller.cpp:1362–1379  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1360}
1361
1362void ProjectController::reparseProject(IProject* project, bool forceUpdate, bool forceAll)
1363{
1364 Q_D(ProjectController);
1365
1366 if (auto* oldJob = d->m_parseJobs.value(project)) {
1367 oldJob->kill(); // Removes oldJob from m_parseJobs.
1368 }
1369
1370 auto& job = d->m_parseJobs[project];
1371 job = new ParseProjectJob(project, forceUpdate, forceAll || parseAllProjectSources());
1372 connect(job, &KJob::finished, this, [d, project](KJob* job) {
1373 const auto it = d->m_parseJobs.constFind(project);
1374 if (it != d->m_parseJobs.cend() && *it == job) {
1375 d->m_parseJobs.erase(it);
1376 }
1377 });
1378 ICore::self()->runController()->registerJob(job);
1379}
1380
1381}
1382

Callers 5

applyMethod · 0.80
reloadMethod · 0.80
onMesonInfoChangedMethod · 0.80
saveToMethod · 0.80
reloadMethod · 0.80

Calls 5

registerJobMethod · 0.80
runControllerMethod · 0.80
valueMethod · 0.45
killMethod · 0.45
constFindMethod · 0.45

Tested by

no test coverage detected