| 330 | } |
| 331 | |
| 332 | std::shared_ptr<GameFeature> GameFeatures::gameFeature(std::type_info const& info) const |
| 333 | { |
| 334 | if (info == ModDataCheckerIndex) { |
| 335 | return modDataChecker().isValid() ? m_modDataChecker : nullptr; |
| 336 | } |
| 337 | |
| 338 | if (info == ModDataContentIndex) { |
| 339 | return modDataContent().isValid() ? m_modDataContent : nullptr; |
| 340 | } |
| 341 | |
| 342 | auto it = m_currentFeatures.find(info); |
| 343 | if (it == m_currentFeatures.end() || it->second.empty()) { |
| 344 | return nullptr; |
| 345 | } |
| 346 | |
| 347 | return it->second.front(); |
| 348 | } |
no test coverage detected