20#include <fmt/format.h>
23class fmt::formatter<TVector3>
26 static constexpr auto parse(format_parse_context& ctx) {
return ctx.end(); }
27 template <
typename FmtContent>
28 constexpr auto format(
const TVector3& vec, FmtContent& ctn)
const
30 return format_to(ctn.out(),
"[x: {}, y: {}, z: {}]", vec.X(), vec.Y(), vec.Z());
34template <
typename DataType>
35class fmt::formatter<
R3B::ValueError<DataType>>
39 static constexpr auto parse(format_parse_context& ctx) {
return ctx.end(); }
40 template <
typename FmtContent>
43 return format_to(ctn.out(),
"{}+/-{}", value_error.
value, value_error.
error);
47template <
typename DataType>
48class fmt::formatter<
R3B::LRPair<DataType>>
51 static constexpr auto parse(format_parse_context& ctx) {
return ctx.end(); }
52 template <
typename FmtContent>
55 return format_to(ctn.out(),
"[left: {}, right: {}]", data_pair.
left(), data_pair.
right());
63 static constexpr auto parse(format_parse_context& ctx) {
return ctx.end(); }
64 template <
typename FmtContent>
69 return format_to(ctn.out(),
"{}",
"left");
71 return format_to(ctn.out(),
"{}",
"right");
auto left() -> DataType &
auto right() -> DataType &