11 template <
class Arg1,
class Arg2,
class Result>
12 struct binary_function<Arg1, Arg2&, Result> {
26 template <
typename A,
typename m>
31 return instance.*
data;
35 template <
typename A,
typename m>
40 return instance.*
data;
44 template <
typename A,
typename m>
49 template <
typename A,
typename m>
54 template <
typename A,
typename m>
59 return instance->*
data;
63 template <
typename A,
typename m>
68 return instance->*
data;
72 template <
typename A,
typename m>
77 template <
typename A,
typename m>
82 template <
typename G,
typename F>
83 struct bind_t : std::unary_function<typename F::argument_type, typename G::result_type> {
86 inline bind_t(
const F & f_,
const G & g_) :
f(f_),
g(g_) {};
87 inline typename G::result_type
operator()(
typename F::argument_type a)
const {
92 template <
typename G,
typename F>
93 inline struct bind_t<G,F>
bind( const G & g,
const F & f ){
114 template <
class A,
class B>
120 template <
class A,
class B>
126 template <
class A,
class B>
132 template <
class A,
class B>
138 template <
class A,
class B>
144 template <
class A,
class B>
162 template <
typename It,
typename m>
165 typedef typename std::iterator_traits<It>::value_type
ParentValue;
191 return (*iterator).*
data;
198 return (*iterator).*
data;
234 template <
typename Other>
241 template <
typename Other>
248 template <
typename Other>
268 template <
typename It,
typename m>
285 template <
typename It,
typename m>