| Home | Libraries | People | FAQ | More

## Struct template extractor

boost::accumulators::extractor

## Synopsis

    // In header: <boost/accumulators/framework/extractor.hpp>

    template<typename Feature>
    struct extractor {
      // types
      typedef extractor< Feature > this_type;
      template<typename A1>
      struct result<this_type(A1)> {
      };

      // public member functions
      template<typename Arg1> unspecified operator()(Arg1 const &) const;
      template<typename AccumulatorSet, typename A1>
        unspecified operator()(AccumulatorSet const &, A1 const &) const;
      template<typename AccumulatorSet, typename A1, typename A2, ... >
        unspecified operator()(AccumulatorSet const &, A1 const &, A2 const &,
                               ...) ;
    };

## Description

Extracts the result associated with Feature from the specified accumulator_set.

### `extractor` public member functions

1.     template<typename Arg1> unspecified operator()(Arg1 const & arg1) const;

   Extract the result associated with Feature from the accumulator set

2.     template<typename AccumulatorSet, typename A1>
         unspecified operator()(AccumulatorSet const & acc, A1 const & a1) const;

   This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

   Parameters: |
   `a1` | Optional named parameter to be passed to the accumulator's result() function.

3.     template<typename AccumulatorSet, typename A1, typename A2, ... >
         unspecified operator()(AccumulatorSet const & acc, A1 const & a1,
                                A2 const & a2, ...) ;

   This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.