28 virtual ~Statistic() =
default;
29 BOOST_TYPE_INDEX_REGISTER_RUNTIME_CLASS()
31 Statistic() =
default;
34 [[nodiscard]]
virtual std::unique_ptr<Statistic>
clone()
const = 0;
39 const Statistic& other)
const = 0;
41 virtual void assign_from(
const Statistic& other) = 0;
43 [[nodiscard]] std::string_view name()
const {
return name_; }
44 void name(std::string_view new_name) { name_ = new_name; }
46 [[nodiscard]]
virtual glz::generic_u64 dump_representation()
const = 0;
51 explicit Statistic(
const std::string_view name) : name_(name) {}