libjmmcg  build_2783
A C++ library containing an eclectic mix of useful, advanced components.
jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th > Class Template Reference

#include <functional.hpp>

Public Types

typedef four_args num_args
 
typedef FnType::object_type object_type
 
typedef FnType::result_type result_type
 
typedef FnType fun_type
 
typedef Arg1T first_argument_type
 
typedef Arg2T second_argument_type
 
typedef Arg3T third_argument_type
 
typedef Arg3T fourth_argument_type
 
typedef Cracker1st< first_argument_typecrkd_first_argument_type
 
typedef Cracker2nd< second_argument_typecrkd_second_argument_type
 
typedef Cracker3rd< third_argument_typecrkd_third_argument_type
 
typedef Cracker4th< fourth_argument_typecrkd_fourth_argument_type
 

Public Member Functions

__stdcall binder4args (const FnType &x, const first_argument_type &v, const second_argument_type &b, const third_argument_type &c, const fourth_argument_type &d) noexcept(true)
 
__stdcall binder4args (const binder4args &x) noexcept(true)
 
__stdcall ~binder4args (void) noexcept(true)
 
const FnType &__fastcall Op (void) const noexcept(true)
 
result_type __fastcall operator() (void) const
 
result_type __fastcall operator() (void)
 

Public Attributes

const first_argument_type arg1
 
const second_argument_type arg2
 
const third_argument_type arg3
 
const fourth_argument_type arg4
 

Detailed Description

template<typename FnType, typename Arg1T, typename Arg2T, typename Arg3T, typename Arg4T, template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
class jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >

Definition at line 838 of file functional.hpp.

Member Typedef Documentation

◆ crkd_first_argument_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef Cracker1st<first_argument_type> jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::crkd_first_argument_type

Definition at line 848 of file functional.hpp.

◆ crkd_fourth_argument_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef Cracker4th<fourth_argument_type> jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::crkd_fourth_argument_type

Definition at line 851 of file functional.hpp.

◆ crkd_second_argument_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef Cracker2nd<second_argument_type> jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::crkd_second_argument_type

Definition at line 849 of file functional.hpp.

◆ crkd_third_argument_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef Cracker3rd<third_argument_type> jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::crkd_third_argument_type

Definition at line 850 of file functional.hpp.

◆ first_argument_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef Arg1T jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::first_argument_type

Definition at line 844 of file functional.hpp.

◆ fourth_argument_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef Arg3T jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::fourth_argument_type

Definition at line 847 of file functional.hpp.

◆ fun_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef FnType jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::fun_type

Definition at line 843 of file functional.hpp.

◆ num_args

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef four_args jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::num_args

Definition at line 840 of file functional.hpp.

◆ object_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef FnType::object_type jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::object_type

Definition at line 841 of file functional.hpp.

◆ result_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef FnType::result_type jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::result_type

Definition at line 842 of file functional.hpp.

◆ second_argument_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef Arg2T jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::second_argument_type

Definition at line 845 of file functional.hpp.

◆ third_argument_type

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
typedef Arg3T jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::third_argument_type

Definition at line 846 of file functional.hpp.

Constructor & Destructor Documentation

◆ binder4args() [1/2]

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
__stdcall jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::binder4args ( const FnType &  x,
const first_argument_type v,
const second_argument_type b,
const third_argument_type c,
const fourth_argument_type d 
)
inlinenoexcept

◆ binder4args() [2/2]

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
__stdcall jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::binder4args ( const binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th > &  x)
inlinenoexcept

◆ ~binder4args()

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
__stdcall jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::~binder4args ( void  )
inlinenoexcept

Definition at line 864 of file functional.hpp.

Member Function Documentation

◆ Op()

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
const FnType& __fastcall jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::Op ( void  ) const
inlinenoexcept

Definition at line 867 of file functional.hpp.

◆ operator()() [1/2]

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
result_type __fastcall jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::operator() ( void  )
inline

◆ operator()() [2/2]

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
result_type __fastcall jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::operator() ( void  ) const
inline

Member Data Documentation

◆ arg1

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
const first_argument_type jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::arg1

◆ arg2

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
const second_argument_type jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::arg2

◆ arg3

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
const third_argument_type jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::arg3

◆ arg4

template<typename FnType , typename Arg1T , typename Arg2T , typename Arg3T , typename Arg4T , template< class > class Cracker1st = NullCrack, template< class > class Cracker2nd = NullCrack, template< class > class Cracker3rd = NullCrack, template< class > class Cracker4th = NullCrack>
const fourth_argument_type jmmcg::binder4args< FnType, Arg1T, Arg2T, Arg3T, Arg4T, Cracker1st, Cracker2nd, Cracker3rd, Cracker4th >::arg4

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