Porytiles
Loading...
Searching...
No Matches
optional_size_format.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <cstddef>
4#include <format>
5#include <optional>
6
23template <>
24struct std::formatter<std::optional<std::size_t>> {
25 constexpr auto parse(std::format_parse_context &ctx)
26 {
27 return ctx.begin();
28 }
29
30 auto format(const std::optional<std::size_t> &value, auto &ctx) const
31 {
32 if (value.has_value()) {
33 return std::format_to(ctx.out(), "{}", value.value());
34 }
35 return std::format_to(ctx.out(), "unset");
36 }
37};
auto format(const std::optional< std::size_t > &value, auto &ctx) const
constexpr auto parse(std::format_parse_context &ctx)