bsl::binary_compose

This class provides a function object adaptor for three other functors. When given two adaptable unary functions g1 and g2, and a third adaptable binary function f, and if g1 and g2s argument type is convertible to fs argument type, this class can be used to create a function object h that is equivalent to f(g1(x), g2(x)).

Synopsis

Declared in <bslstp_exfunctional.h>

template<
    class OPERATION1,
    class OPERATION2,
    class OPERATION3>
class binary_compose;

Type Aliases

NameDescription
argument_type This typedef is an alias to OPERATION2::argument_type.
result_type This typedef is an alias to OPERATION1::result_type.

Member Functions

NameDescription
binary_compose [constructor]Create a binary_compose object from the specified fn1, fn2, and fn3 functors.
operator() Function call operators

Protected Data Members

NameDescription
d_fn1 First functor f in the composition f(g1(x), g2(x)).
d_fn2 Second functor g1 in the composition f(g1(x), g2(x)).
d_fn3 Third functor g2 in the composition f(g1(x), g2(x)).

Non-Member Functions

NameDescription
compose2Return a binary_compose function object constructed using the specified fn1 binary function, and the specified fn2 and fn3 unary functions. The returned function object is equivalent to fn1(fn2(x), fn3(x)).