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)>