...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::accumulators::droppable_accumulator_base
// In header: <boost/accumulators/framework/accumulators/droppable_accumulator.hpp> template<typename Accumulator> struct droppable_accumulator_base : public Accumulator { // types typedef droppable_accumulator_base base; typedef mpl::true_ is_droppable; typedef Accumulator::result_type result_type; // construct/copy/destruct template<typename Args> droppable_accumulator_base(Args const &); droppable_accumulator_base(droppable_accumulator_base const &); // public member functions template<typename Args> void operator()(Args const &); template<typename Args> void add_ref(Args const &); template<typename Args> void drop(Args const &); bool is_dropped() const; };
droppable_accumulator_base
public
construct/copy/destructtemplate<typename Args> droppable_accumulator_base(Args const & args);
droppable_accumulator_base(droppable_accumulator_base const & that);