| 118 | } |
| 119 | |
| 120 | bool ModModel::checkVersionFilters(const ModPlatform::IndexedVersion& v) |
| 121 | { |
| 122 | if (!m_filter) |
| 123 | return true; |
| 124 | auto loaders = static_cast<MinecraftInstance&>(m_base_instance).getPackProfile()->getSupportedModLoaders(); |
| 125 | if (m_filter->loaders) |
| 126 | loaders = m_filter->loaders; |
| 127 | return (!optedOut(v) && // is opted out(aka curseforge download link) |
| 128 | (!loaders.has_value() || !v.loaders || loaders.value() & v.loaders) && // loaders |
| 129 | checkSide(m_filter->side, v.side) && // side |
| 130 | (m_filter->releases.empty() || // releases |
| 131 | std::find(m_filter->releases.cbegin(), m_filter->releases.cend(), v.version_type) != m_filter->releases.cend()) && |
| 132 | m_filter->checkMcVersions(v.mcVersion)); // mcVersions |
| 133 | } |
| 134 | |
| 135 | } // namespace ResourceDownload |
no test coverage detected