From 2d291667582dc8129ed1c3c4e7d7333f3b8627f4 Mon Sep 17 00:00:00 2001 From: Sebastian Holtermann Date: Thu, 21 Feb 2019 20:11:22 +0100 Subject: Autogen: Use cm::make_unique to allocate jobs --- Source/cmQtAutoGeneratorMocUic.cxx | 29 ++++++++++++----------------- Source/cmQtAutoGeneratorMocUic.h | 9 +-------- 2 files changed, 13 insertions(+), 25 deletions(-) diff --git a/Source/cmQtAutoGeneratorMocUic.cxx b/Source/cmQtAutoGeneratorMocUic.cxx index c337ba4..e4b73e6 100644 --- a/Source/cmQtAutoGeneratorMocUic.cxx +++ b/Source/cmQtAutoGeneratorMocUic.cxx @@ -432,8 +432,8 @@ bool cmQtAutoGeneratorMocUic::JobParseT::ParseMocSource(WorkerT& wrk, // Convert pre jobs to actual jobs for (JobPre& jobPre : jobs) { - JobHandleT jobHandle(new JobMocT(std::move(jobPre.SourceFile), FileName, - std::move(jobPre.IncludeString))); + JobHandleT jobHandle = cm::make_unique( + std::move(jobPre.SourceFile), FileName, std::move(jobPre.IncludeString)); if (jobPre.self) { // Read dependencies from this source static_cast(*jobHandle).FindDependencies(wrk, meta.Content); @@ -451,8 +451,8 @@ bool cmQtAutoGeneratorMocUic::JobParseT::ParseMocHeader(WorkerT& wrk, bool success = true; std::string const macroName = wrk.Moc().FindMacro(meta.Content); if (!macroName.empty()) { - JobHandleT jobHandle( - new JobMocT(std::string(FileName), std::string(), std::string())); + JobHandleT jobHandle = cm::make_unique( + std::string(FileName), std::string(), std::string()); // Read dependencies from this source static_cast(*jobHandle).FindDependencies(wrk, meta.Content); success = wrk.Gen().ParallelJobPushMoc(jobHandle); @@ -518,8 +518,8 @@ bool cmQtAutoGeneratorMocUic::JobParseT::ParseUicInclude( std::string uiInputFile = UicFindIncludedFile(wrk, meta, includeString); if (!uiInputFile.empty()) { if (!wrk.Uic().skipped(uiInputFile)) { - JobHandleT jobHandle(new JobUicT(std::move(uiInputFile), FileName, - std::move(includeString))); + JobHandleT jobHandle = cm::make_unique( + std::move(uiInputFile), FileName, std::move(includeString)); success = wrk.Gen().ParallelJobPushUic(jobHandle); } else { // A skipped file is successful @@ -993,11 +993,6 @@ void cmQtAutoGeneratorMocUic::JobUicT::GenerateUic(WorkerT& wrk) } } -void cmQtAutoGeneratorMocUic::JobDeleterT::operator()(JobT* job) -{ - delete job; -} - cmQtAutoGeneratorMocUic::WorkerT::WorkerT(cmQtAutoGeneratorMocUic* gen, uv_loop_t* uvLoop) : Gen_(gen) @@ -1343,7 +1338,7 @@ bool cmQtAutoGeneratorMocUic::Init(cmMakefile* makefile) Moc_.PredefsCmd = InfoGetList("AM_MOC_PREDEFS_CMD"); // Install moc predefs job if (!Moc().PredefsCmd.empty()) { - JobQueues_.MocPredefs.emplace_back(new JobMocPredefsT()); + JobQueues_.MocPredefs.emplace_back(cm::make_unique()); } } @@ -1390,7 +1385,7 @@ bool cmQtAutoGeneratorMocUic::Init(cmMakefile* makefile) const bool uic = !Uic().skipped(hdr); if ((moc || uic) && uniqueHeaders.emplace(stringHash(hdr)).second) { JobQueues_.Headers.emplace_back( - new JobParseT(std::move(hdr), moc, uic, true)); + cm::make_unique(std::move(hdr), moc, uic, true)); } } // Add source jobs @@ -1417,15 +1412,15 @@ bool cmQtAutoGeneratorMocUic::Init(cmMakefile* makefile) const bool uic = srcUic && !Uic().skipped(header); if ((moc || uic) && uniqueHeaders.emplace(stringHash(header)).second) { - JobQueues_.Headers.emplace_back( - new JobParseT(std::move(header), moc, uic, true)); + JobQueues_.Headers.emplace_back(cm::make_unique( + std::move(header), moc, uic, true)); } } } } // Add source job JobQueues_.Sources.emplace_back( - new JobParseT(std::move(src), srcMoc, srcUic)); + cm::make_unique(std::move(src), srcMoc, srcUic)); } } } @@ -1797,7 +1792,7 @@ void cmQtAutoGeneratorMocUic::WorkerSwapJob(JobHandleT& jobHandle) { bool const jobProcessed(jobHandle); if (jobProcessed) { - jobHandle.reset(nullptr); + jobHandle.reset(); } { std::unique_lock jobsLock(JobsMutex_); diff --git a/Source/cmQtAutoGeneratorMocUic.h b/Source/cmQtAutoGeneratorMocUic.h index 989d9ab..e48d7f3 100644 --- a/Source/cmQtAutoGeneratorMocUic.h +++ b/Source/cmQtAutoGeneratorMocUic.h @@ -187,15 +187,8 @@ public: virtual void Process(WorkerT& wrk) = 0; }; - /// @brief Deleter for classes derived from Job - /// - struct JobDeleterT - { - void operator()(JobT* job); - }; - // Job management types - typedef std::unique_ptr JobHandleT; + typedef std::unique_ptr JobHandleT; typedef std::deque JobQueueT; /// @brief Parse source job -- cgit v0.12