13 #ifndef GIL_APPLY_OPERATION_HPP
14 #define GIL_APPLY_OPERATION_HPP
28 #ifndef GIL_REDUCE_CODE_BLOAT
30 namespace boost {
namespace gil {
34 template <
typename Types,
typename UnaryOp> BOOST_FORCEINLINE
36 return apply_operation_base<Types>(arg._bits, arg._index ,op);
41 template <
typename Types,
typename UnaryOp> BOOST_FORCEINLINE
43 return apply_operation_basec<Types>(arg._bits, arg._index ,op);
48 template <
typename Types1,
typename Types2,
typename BinaryOp> BOOST_FORCEINLINE
50 return apply_operation_base<Types1,Types2>(arg1._bits, arg1._index, arg2._bits, arg2._index, op);
Constructs for static-to-dynamic integer convesion.
Support for run-time instantiated types.
BOOST_FORCEINLINE BinaryOp::result_type apply_operation(const variant< Types1 > &arg1, const variant< Types2 > &arg2, BinaryOp op)
Invokes a generic constant operation (represented as a binary function object) on two variants...
Definition: apply_operation.hpp:49
Represents a concrete instance of a run-time specified type from a set of typesA concept is typically...
Definition: variant.hpp:89
Given an object with run-time specified type (denoted as an array of Bits, dynamic index...