]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
crimson: specialize fmt::formatter<>() for crimson types
authorKefu Chai <tchaikov@gmail.com>
Fri, 18 Feb 2022 15:23:54 +0000 (23:23 +0800)
committerKefu Chai <tchaikov@gmail.com>
Fri, 18 Feb 2022 16:22:37 +0000 (00:22 +0800)
commitbb9d099ede8b9df36dba735a95bc1600fdd11408
tree12e60328722922b156cd7da017336fb58a3f2ae0
parent3fd91d7e6d9315244aeff02070721ef4a021b0b3
crimson: specialize fmt::formatter<>() for crimson types

otherwise we'd have FTBFS like

/usr/include/fmt/core.h:1727:3: error: static_assert failed due to requirement 'formattable' "Cannot format an argument. To make type T formattable provide a formatter<T> specialization: https://fmt.dev/latest/api$
  static_assert(
  ^
/usr/include/fmt/core.h:1853:23: note: in instantiation of function template specialization 'fmt::detail::make_arg<true, fmt::basic_format_context<fmt::appender, char>, fmt::detail::type::custom_type, crimson::os:$
        data_{detail::make_arg<

please note, delta_op_t is lifted out of the templated outer class
to avoid the headache of specialization of template of template in
another namespace.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
src/crimson/os/seastore/onode_manager/staged-fltree/node_types.h
src/crimson/os/seastore/seastore.cc
src/crimson/os/seastore/segment_manager/block.cc
src/test/crimson/seastore/onode_tree/test_value.h