Minor cleanup

This commit is contained in:
Victor Zverovich 2026-03-16 12:31:45 -07:00
parent e8244777ee
commit 4968433a6a

View File

@ -61,6 +61,7 @@
namespace { namespace {
#ifdef _WIN32 #ifdef _WIN32
// Return type of read and write functions. // Return type of read and write functions.
using rwresult = int; using rwresult = int;
@ -69,20 +70,6 @@ using rwresult = int;
inline unsigned convert_rwcount(size_t count) { inline unsigned convert_rwcount(size_t count) {
return count <= UINT_MAX ? static_cast<unsigned>(count) : UINT_MAX; return count <= UINT_MAX ? static_cast<unsigned>(count) : UINT_MAX;
} }
#elif FMT_USE_FCNTL
// Return type of read and write functions.
using rwresult = ssize_t;
inline auto convert_rwcount(size_t count) -> size_t { return count; }
#endif
} // namespace
FMT_BEGIN_NAMESPACE
#ifdef _WIN32
namespace detail {
namespace {
class system_message { class system_message {
system_message(const system_message&) = delete; system_message(const system_message&) = delete;
@ -111,8 +98,8 @@ class system_message {
} }
~system_message() { LocalFree(message_); } ~system_message() { LocalFree(message_); }
explicit operator bool() const noexcept { return result_ != 0; } explicit operator bool() const noexcept { return result_ != 0; }
operator basic_string_view<wchar_t>() const noexcept { operator fmt::basic_string_view<wchar_t>() const noexcept {
return basic_string_view<wchar_t>(message_, result_); return fmt::basic_string_view<wchar_t>(message_, result_);
} }
}; };
@ -122,7 +109,7 @@ class utf8_system_category final : public std::error_category {
std::string message(int error_code) const override { std::string message(int error_code) const override {
auto&& msg = system_message(error_code); auto&& msg = system_message(error_code);
if (msg) { if (msg) {
auto utf8_message = to_utf8<wchar_t>(); auto utf8_message = fmt::detail::to_utf8<wchar_t>();
if (utf8_message.convert(msg)) { if (utf8_message.convert(msg)) {
return utf8_message.str(); return utf8_message.str();
} }
@ -131,12 +118,22 @@ class utf8_system_category final : public std::error_category {
} }
}; };
#elif FMT_USE_FCNTL
// Return type of read and write functions.
using rwresult = ssize_t;
inline auto convert_rwcount(size_t count) -> size_t { return count; }
#endif
} // namespace } // namespace
} // namespace detail FMT_BEGIN_NAMESPACE
#ifdef _WIN32
FMT_API const std::error_category& system_category() noexcept { FMT_API const std::error_category& system_category() noexcept {
static const detail::utf8_system_category category; static const utf8_system_category category;
return category; return category;
} }
@ -166,6 +163,7 @@ void detail::format_windows_error(detail::buffer<char>& out, int error_code,
void report_windows_error(int error_code, const char* message) noexcept { void report_windows_error(int error_code, const char* message) noexcept {
do_report_error(detail::format_windows_error, error_code, message); do_report_error(detail::format_windows_error, error_code, message);
} }
#endif // _WIN32 #endif // _WIN32
buffered_file::~buffered_file() noexcept { buffered_file::~buffered_file() noexcept {