53 using get_func_t = std::function<void(
void*,
void*&,
size_t)>;
58 template <
typename InitF,
typename StartF,
typename StopF,
typename GetF,
59 typename DelF,
typename SetupF,
typename PushF,
typename PopF,
60 typename SampleF,
typename UpdateStatsF>
61 opaque(
bool _valid,
size_t _typeid, InitF&& _init, StartF&& _start, StopF&& _stop,
62 GetF&& _get, DelF&& _del, SetupF&& _setup, PushF&& _push, PopF&& _pop,
63 SampleF&& _sample, UpdateStatsF&& _stats);
82 void get(
void*& ptr,
size_t _hash)
const;
104template <
typename Toolset>
108template <
typename Toolset>
112template <
typename Toolset,
typename Arg,
typename... Args>
116template <
typename Toolset>
123template <
typename Toolset,
typename Arg,
typename... Args>
127template <
typename Toolset>
131template <
typename Toolset>
135template <
typename Toolset>
opaque get_opaque(Arg &&arg, Args &&... args)
std::set< size_t > get_typeids()
std::set< size_t > get_typeids()
char const std::string & _prefix
const std::string & string_view_cref_t
std::function< void(void *, void *&, size_t)> get_func_t
void get(void *&ptr, size_t _hash) const
stats_func_t m_update_stats
std::function< void(void *)> stop_func_t
void update_statistics(bool) const
opaque & operator=(opaque &&)=default
std::function< void(void *)> sample_func_t
opaque & operator=(const opaque &)=default
opaque(opaque &&)=default
std::function< void(void *, bool)> stats_func_t
void push(string_view_cref_t _prefix, scope::config _scope)
std::function< void *(void *, string_view_cref_t, scope::config)> setup_func_t
std::function< void(void *)> start_func_t
std::function< void()> init_func_t
void setup(string_view_cref_t _prefix, scope::config _scope)
std::function< void(void *&, string_view_cref_t, scope::config)> push_func_t
std::function< void(void *)> delete_func_t
std::function< void(void *)> pop_func_t
opaque(const opaque &)=default
this data type encodes the options of storage scope. The default is hierarchical (tree) scope....