Modernize `std::is_sorted` with ranges

In OGLConfig.cpp, `std::views::reverse` is used rather than sorting using `std::ranges::greater` in order to parallel other instances of reverse iteration in the function.
This commit is contained in:
mitaclaw 2024-09-28 22:23:45 -07:00
parent ebf7cebc32
commit 01d0bdf1bb
2 changed files with 4 additions and 3 deletions

View File

@ -613,7 +613,7 @@ bool GameFile::CheckIfTwoDiscGame(const std::string& game_id) const
"S6T",
"SDQ",
};
static_assert(std::is_sorted(two_disc_game_id_prefixes.begin(), two_disc_game_id_prefixes.end()));
static_assert(std::ranges::is_sorted(two_disc_game_id_prefixes));
std::string_view game_id_prefix(game_id.data(), GAME_ID_PREFIX_SIZE);
return std::binary_search(two_disc_game_id_prefixes.begin(), two_disc_game_id_prefixes.end(),

View File

@ -4,6 +4,7 @@
#include "VideoBackends/OGL/OGLConfig.h"
#include <cstdio>
#include <ranges>
#include <string>
#include <string_view>
@ -585,7 +586,7 @@ bool PopulateConfig(GLContext* m_main_gl_context)
glGetInternalformativ(GL_TEXTURE_2D_MULTISAMPLE_ARRAY, colorInternalFormat, GL_SAMPLES,
num_color_sample_counts,
reinterpret_cast<GLint*>(color_aa_modes.data()));
ASSERT_MSG(VIDEO, std::is_sorted(color_aa_modes.rbegin(), color_aa_modes.rend()),
ASSERT_MSG(VIDEO, std::ranges::is_sorted(color_aa_modes | std::views::reverse),
"GPU driver didn't return sorted color AA modes: [{}]",
fmt::join(color_aa_modes, ", "));
}
@ -614,7 +615,7 @@ bool PopulateConfig(GLContext* m_main_gl_context)
glGetInternalformativ(GL_TEXTURE_2D_MULTISAMPLE_ARRAY, depthInternalFormat, GL_SAMPLES,
num_depth_sample_counts,
reinterpret_cast<GLint*>(depth_aa_modes.data()));
ASSERT_MSG(VIDEO, std::is_sorted(depth_aa_modes.rbegin(), depth_aa_modes.rend()),
ASSERT_MSG(VIDEO, std::ranges::is_sorted(depth_aa_modes | std::views::reverse),
"GPU driver didn't return sorted depth AA modes: [{}]",
fmt::join(depth_aa_modes, ", "));
}