polybori::symmetric_composition< BinaryOp, UnaryOperation > Class Template Reference

Compose a binary function with a default constructable unary function for both arguments. More...

`#include <pbori_func.h>`

Inheritance diagram for polybori::symmetric_composition< BinaryOp, UnaryOperation >:

## Public Types

typedef BinaryOp | binary_op_type
| Define types corresponding to template arguments. More...
typedef UnaryOperation | unary_op_type
typedef binary_composition< binary_op_type, unary_op_type, unary_op_type > | base
Public Types inherited from polybori::binary_composition< BinaryOp, UnaryOperation, UnaryOperation >
typedef base::result_type | result_type
| Getting inherited types. More...
typedef BinaryOp | base
| Define types corresponding to template arguments. More...
typedef UnaryOperation | first_op_type
typedef UnaryOperation | second_op_type

## Public Member Functions

| symmetric_composition (const binary_op_type &binop=binary_op_type(), const unary_op_type &unop=unary_op_type())
Public Member Functions inherited from polybori::binary_composition< BinaryOp, UnaryOperation, UnaryOperation >
| binary_composition (const base &binop=base(), const first_op_type &unop1=first_op_type(), const second_op_type &unop2=second_op_type())
result_type | operator() (const FirstType &first, const SecondType &second) const
| The composed operation for constant arguments. More...
result_type | operator() (FirstType &first, const SecondType &second) const
| The composed operation for constant second argument. More...
result_type | operator() (const FirstType &first, SecondType &second) const
| The composed operation for constant first argument. More...

## Additional Inherited Members

Protected Attributes inherited from polybori::binary_composition< BinaryOp, UnaryOperation, UnaryOperation >
first_op_type | first_op
second_op_type | second_op

## Detailed Description

### template<class BinaryOp, class UnaryOperation>
class polybori::symmetric_composition< BinaryOp, UnaryOperation >

Compose a binary function with a default constructable unary function for both arguments.

## Member Typedef Documentation

template<class BinaryOp , class UnaryOperation >

typedef binary_composition<binary_op_type, unary_op_type, unary_op_type> polybori::symmetric_composition< BinaryOp, UnaryOperation >::base

template<class BinaryOp , class UnaryOperation >

typedef BinaryOp polybori::symmetric_composition< BinaryOp, UnaryOperation >::binary_op_type

Define types corresponding to template arguments.

template<class BinaryOp , class UnaryOperation >

typedef UnaryOperation polybori::symmetric_composition< BinaryOp, UnaryOperation >::unary_op_type

## Constructor & Destructor Documentation

template<class BinaryOp , class UnaryOperation >

polybori::symmetric_composition< BinaryOp, UnaryOperation >::symmetric_composition | ( | const binary_op_type & | binop = `binary_op_type()`,
|  | const unary_op_type & | unop = `unary_op_type()`
| ) |  |

inline

The documentation for this class was generated from the following file:

- pbori_func.h