void SBWorkspace::getAllTargets(PotentialTargetsVec& targets) const { for (auto projectKV : m_openProjects) { SBProject* sbProject = projectKV.second; const PBXProject* pbxProject = sbProject->getPBXProject(); const PBXTargetList& projectTargets = pbxProject->getTargets(); std::transform(projectTargets.begin(), projectTargets.end(), back_inserter(targets), [sbProject](const PBXTarget* target) { return std::make_pair(target, sbProject); }); } }
SBWorkspace::TargetProjectPair SBWorkspace::findTargetWithName(const String& targetName) const { for (auto project : m_openProjects) { SBProject* sbProject = project.second; const PBXTarget* target = sbProject->getPBXProject()->getTargetWithName(targetName); if (target) { return make_pair(target, sbProject); } } SBLog::warning() << "Failed to find \"" << targetName << "\" target in workspace." << std::endl; return { NULL, NULL }; }