ewmscp  ..
Public Member Functions | Private Attributes | List of all members
options::withAction< T > Class Template Reference

#include <Options.h>

Inheritance diagram for options::withAction< T >:
[legend]
Collaboration diagram for options::withAction< T >:
[legend]

Public Member Functions

template<class ... Types>
 withAction (std::function< void(T &)> aAction, Types ... args)
 
void fSetMe (std::istream &aStream, const internal::sourceItem &aSource) override
 
void fSetMeNoarg (const internal::sourceItem &aSource) override
 

Private Attributes

std::function< void(T &)> action
 

Detailed Description

template<class T>
class options::withAction< T >

Definition at line 887 of file Options.h.

Constructor & Destructor Documentation

◆ withAction()

template<class T >
template<class ... Types>
options::withAction< T >::withAction ( std::function< void(T &)>  aAction,
Types ...  args 
)
inline

Definition at line 890 of file Options.h.

890  :
891  T(args...),
892  action(aAction) {
893  }

Member Function Documentation

◆ fSetMe()

template<class T >
void options::withAction< T >::fSetMe ( std::istream &  aStream,
const internal::sourceItem aSource 
)
inlineoverride

Definition at line 894 of file Options.h.

894  {
895  T::fSetMe(aStream, aSource);
896  this->fCheckRange();
897  action(*this);
898  }

◆ fSetMeNoarg()

template<class T >
void options::withAction< T >::fSetMeNoarg ( const internal::sourceItem aSource)
inlineoverride

Definition at line 899 of file Options.h.

899  {
900  T::fSetMeNoarg(aSource);
901  this->fCheckRange();
902  action(*this);
903  }

Member Data Documentation

◆ action

template<class T >
std::function<void(T&)> options::withAction< T >::action
private

Definition at line 888 of file Options.h.


The documentation for this class was generated from the following file:
options::withAction::action
std::function< void(T &)> action
Definition: Options.h:888