LSSTApplications
18.0.0+106,18.0.0+50,19.0.0,19.0.0+1,19.0.0+10,19.0.0+11,19.0.0+13,19.0.0+17,19.0.0+2,19.0.0-1-g20d9b18+6,19.0.0-1-g425ff20,19.0.0-1-g5549ca4,19.0.0-1-g580fafe+6,19.0.0-1-g6fe20d0+1,19.0.0-1-g7011481+9,19.0.0-1-g8c57eb9+6,19.0.0-1-gb5175dc+11,19.0.0-1-gdc0e4a7+9,19.0.0-1-ge272bc4+6,19.0.0-1-ge3aa853,19.0.0-10-g448f008b,19.0.0-12-g6990b2c,19.0.0-2-g0d9f9cd+11,19.0.0-2-g3d9e4fb2+11,19.0.0-2-g5037de4,19.0.0-2-gb96a1c4+3,19.0.0-2-gd955cfd+15,19.0.0-3-g2d13df8,19.0.0-3-g6f3c7dc,19.0.0-4-g725f80e+11,19.0.0-4-ga671dab3b+1,19.0.0-4-gad373c5+3,19.0.0-5-ga2acb9c+2,19.0.0-5-gfe96e6c+2,w.2020.01
LSSTDataManagementBasePackage
|
A functor-wrapper used in the implementation of SchemaMapper::forEach. More...
#include <SchemaMapperImpl.h>
Public Member Functions | |
template<typename T > | |
void | operator() (std::pair< Key< T >, Key< T > > const &pair) const |
Call the wrapped function. More... | |
void | operator() (KeyPairVariant const &v) const |
Invoke the visitation. More... | |
template<typename T > | |
VisitorWrapper (T &&func) | |
Construct the wrappper. More... | |
A functor-wrapper used in the implementation of SchemaMapper::forEach.
See SchemaImpl::VisitorWrapper for discussion of the motivation.
Definition at line 54 of file SchemaMapperImpl.h.
|
inlineexplicit |
Construct the wrappper.
Definition at line 74 of file SchemaMapperImpl.h.
|
inline |
Call the wrapped function.
Definition at line 57 of file SchemaMapperImpl.h.
|
inline |
Invoke the visitation.
The call to boost::apply_visitor will call the appropriate template of operator().
This overload allows a VisitorWrapper to be applied directly on a variant object with function-call syntax, allowing us to use it on our vector of variants with std::for_each and other STL algorithms.
Definition at line 70 of file SchemaMapperImpl.h.