Generic pair of accumulators.
More...
#include <pair.hh>
List of all members.
Public Types |
| typedef T | argument |
| typedef Accumulator< void > | category |
| typedef pair< A1, A2, T > | exact_t |
typedef std::pair< A1::result,
A2::result > | q_result |
typedef mln::metal::unqualif
< std::pair< A1::result,
A2::result > >::ret | result |
| typedef A1::result | result_1 |
| typedef A2::result | result_2 |
Public Member Functions |
| A1::result | first () const |
| bool | is_valid () const |
| | Check whether this accu is able to return a result.
|
| | pair () |
| A2::result | second () const |
| std::pair< A1::result, A2::result > | subj_ () |
| void | take_as_init (const T &t) |
| | Take as initialization the value t.
|
| void | take_as_init_ (const T &t) |
| | Default implementation of "take as initialization".
|
| void | take_n_times (unsigned n, const T &t) |
| | Take n times the value t.
|
| void | take_n_times_ (unsigned n, const T &t) |
| | Default implementation of "take n times".
|
|
|
| void | init () |
| | Manipulators.
|
| void | take_as_init_ (const argument &t) |
| void | take (const argument &t) |
| void | take (const pair< A1, A2, T > &other) |
|
|
std::pair< typename A1::result,
typename A2::result > | to_result () const |
| | Get the value of the accumulator.
|
| void | get_result (result_1 &r1, result_2 &r2) const |
Protected Attributes |
| A1 | a1_ |
| A2 | a2_ |
Detailed Description
template<typename A1, typename A2, typename T = mln_argument(A1)>
struct mln::accu::pair< A1, A2, T >
Generic pair of accumulators.
The parameter T is the type of values.
- Todo:
- Check that, when T is not provided, A1 and A2 have the same value.
Member Typedef Documentation
template<typename A1, typename A2, typename T = mln_argument(A1)>
template<typename A1, typename A2, typename T = mln_argument(A1)>
template<typename A1, typename A2, typename T = mln_argument(A1)>
Constructor & Destructor Documentation
template<typename A1 , typename A2 , typename T >
Member Function Documentation
template<typename A1 , typename A2 , typename T >
template<typename A1 , typename A2 , typename T >
template<typename A1 , typename A2 , typename T >
template<typename A1 , typename A2 , typename T >
Check whether this accu is able to return a result.
Always true here.
template<typename A1 , typename A2 , typename T >
template<typename A1, typename A2, typename T>
template<typename A1 , typename A2 , typename T >
Take as initialization the value t.
Dev note: this is a final method; override if needed by take_as_init_ (ending with '_').
template<typename A1 , typename A2 , typename T >
Default implementation of "take as initialization".
Take n times the value t.
Dev note: this is a final method; override if needed by take_as_init_ (ending with '_').
Default implementation of "take n times".
template<typename A1 , typename A2 , typename T >
| std::pair< typename A1::result, typename A2::result > mln::accu::pair< A1, A2, T >::to_result |
( |
|
) |
const [inline] |
Get the value of the accumulator.
Member Data Documentation
template<typename A1, typename A2, typename T = mln_argument(A1)>
template<typename A1, typename A2, typename T = mln_argument(A1)>