8#ifndef INCLUDED_BDLF_MEMFN
9#define INCLUDED_BDLF_MEMFN
200#include <bdlscm_version.h>
232template <
class OBJTYPE>
240 template <
class TYPE>
246 template <
class TYPE>
252 template <
class TYPE>
253 static inline OBJTYPE&
deref(TYPE& obj)
258 template <
class TYPE>
259 static inline OBJTYPE&
deref(
const TYPE& obj)
278template <
class PROTOTYPE>
298 typedef typename Traits::ArgumentList
Args;
360 MemFn(PROTOTYPE func);
376 template <
class INSTANCE>
387 template <
class INSTANCE>
398 template <
class INSTANCE>
409 template <
class INSTANCE>
411 ARG1 arg1, ARG2 arg2, ARG3 arg3)
const
413 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3);
421 template <
class INSTANCE>
423 ARG1 arg1, ARG2 arg2, ARG3 arg3,
426 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4);
434 template <
class INSTANCE>
436 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4,
439 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5);
447 template <
class INSTANCE>
449 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4,
450 ARG5 arg5, ARG6 arg6)
const
452 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
461 template <
class INSTANCE>
463 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4,
464 ARG5 arg5, ARG6 arg6, ARG7 arg7)
const
466 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
475 template <
class INSTANCE>
477 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4,
478 ARG5 arg5, ARG6 arg6, ARG7 arg7,
481 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
490 template <
class INSTANCE>
492 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4,
493 ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8,
496 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
497 arg6, arg7, arg8, arg9);
505 template <
class INSTANCE>
507 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4,
508 ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8,
509 ARG9 arg9, ARG10 arg10)
const
511 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
512 arg6, arg7, arg8, arg9, arg10);
520 template <
class INSTANCE>
522 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4,
523 ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8,
524 ARG9 arg9, ARG10 arg10, ARG11 arg11)
const
526 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
527 arg6, arg7, arg8, arg9, arg10,
536 template <
class INSTANCE>
538 ARG1 arg1, ARG2 arg2, ARG3 arg3,
539 ARG4 arg4, ARG5 arg5, ARG6 arg6,
540 ARG7 arg7, ARG8 arg8, ARG9 arg9,
541 ARG10 arg10, ARG11 arg11, ARG12 arg12)
const
543 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
544 arg6, arg7, arg8, arg9, arg10,
553 template <
class INSTANCE>
555 ARG1 arg1, ARG2 arg2, ARG3 arg3,
556 ARG4 arg4, ARG5 arg5, ARG6 arg6,
557 ARG7 arg7, ARG8 arg8, ARG9 arg9,
558 ARG10 arg10, ARG11 arg11, ARG12 arg12,
561 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
562 arg6, arg7, arg8, arg9, arg10,
563 arg11, arg12, arg13);
571 template <
class INSTANCE>
573 ARG1 arg1, ARG2 arg2, ARG3 arg3,
574 ARG4 arg4, ARG5 arg5, ARG6 arg6,
575 ARG7 arg7, ARG8 arg8, ARG9 arg9,
576 ARG10 arg10, ARG11 arg11, ARG12 arg12,
577 ARG13 arg13, ARG14 arg14)
const
579 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
580 arg6, arg7, arg8, arg9, arg10,
581 arg11, arg12, arg13, arg14);
589 template <
class INSTANCE>
600 template <
class INSTANCE>
611 template <
class INSTANCE>
622 template <
class INSTANCE>
624 ARG1 arg1, ARG2 arg2, ARG3 arg3)
const
626 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3);
634 template <
class INSTANCE>
636 ARG1 arg1, ARG2 arg2, ARG3 arg3,
639 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4);
647 template <
class INSTANCE>
649 ARG1 arg1, ARG2 arg2, ARG3 arg3,
650 ARG4 arg4, ARG5 arg5)
const
652 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5);
660 template <
class INSTANCE>
662 ARG1 arg1, ARG2 arg2, ARG3 arg3,
663 ARG4 arg4, ARG5 arg5, ARG6 arg6)
const
665 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
674 template <
class INSTANCE>
676 ARG1 arg1, ARG2 arg2, ARG3 arg3,
677 ARG4 arg4, ARG5 arg5, ARG6 arg6,
680 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
689 template <
class INSTANCE>
691 ARG1 arg1, ARG2 arg2, ARG3 arg3,
692 ARG4 arg4, ARG5 arg5, ARG6 arg6,
693 ARG7 arg7, ARG8 arg8)
const
695 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
704 template <
class INSTANCE>
706 ARG1 arg1, ARG2 arg2, ARG3 arg3,
707 ARG4 arg4, ARG5 arg5, ARG6 arg6,
708 ARG7 arg7, ARG8 arg8, ARG9 arg9)
const
710 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
711 arg6, arg7, arg8, arg9);
719 template <
class INSTANCE>
721 ARG1 arg1, ARG2 arg2, ARG3 arg3,
722 ARG4 arg4, ARG5 arg5, ARG6 arg6,
723 ARG7 arg7, ARG8 arg8, ARG9 arg9,
726 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
727 arg6, arg7, arg8, arg9, arg10);
735 template <
class INSTANCE>
737 ARG1 arg1, ARG2 arg2, ARG3 arg3,
738 ARG4 arg4, ARG5 arg5, ARG6 arg6,
739 ARG7 arg7, ARG8 arg8, ARG9 arg9,
740 ARG10 arg10, ARG11 arg11)
const
742 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
743 arg6, arg7, arg8, arg9, arg10,
752 template <
class INSTANCE>
754 ARG1 arg1, ARG2 arg2, ARG3 arg3,
755 ARG4 arg4, ARG5 arg5, ARG6 arg6,
756 ARG7 arg7, ARG8 arg8, ARG9 arg9,
757 ARG10 arg10, ARG11 arg11,
760 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
761 arg6, arg7, arg8, arg9, arg10,
770 template <
class INSTANCE>
772 ARG1 arg1, ARG2 arg2, ARG3 arg3,
773 ARG4 arg4, ARG5 arg5, ARG6 arg6,
774 ARG7 arg7, ARG8 arg8, ARG9 arg9,
775 ARG10 arg10, ARG11 arg11, ARG12 arg12,
778 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4,
779 arg5, arg6, arg7, arg8,
780 arg9, arg10, arg11, arg12,
789 template <
class INSTANCE>
791 ARG1 arg1, ARG2 arg2, ARG3 arg3,
792 ARG4 arg4, ARG5 arg5, ARG6 arg6,
793 ARG7 arg7, ARG8 arg8, ARG9 arg9,
794 ARG10 arg10, ARG11 arg11, ARG12 arg12,
795 ARG13 arg13, ARG14 arg14)
const
797 return (
Deref::deref(
object).*d_func_p)(arg1, arg2, arg3, arg4, arg5,
798 arg6, arg7, arg8, arg9, arg10,
799 arg11, arg12, arg13, arg14);
820template <
class PROTOTYPE,
class INSTANCE>
835 typedef typename Traits::ArgumentList
Args;
905 const INSTANCE&
object,
942 ARG5 arg5, ARG6 arg6)
const;
944 ARG5 arg5, ARG6 arg6,
947 ARG5 arg5, ARG6 arg6,
948 ARG7 arg7, ARG8 arg8)
const;
950 ARG5 arg5, ARG6 arg6,
951 ARG7 arg7, ARG8 arg8, ARG9 arg9)
const;
953 ARG5 arg5, ARG6 arg6,
954 ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10)
const;
956 ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8,
957 ARG9 arg9, ARG10 arg10, ARG11 arg11)
const;
959 ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8,
960 ARG9 arg9, ARG10 arg10, ARG11 arg11,
963 ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8,
964 ARG9 arg9, ARG10 arg10, ARG11 arg11, ARG12 arg12,
967 ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8,
968 ARG9 arg9, ARG10 arg10, ARG11 arg11, ARG12 arg12,
969 ARG13 arg13, ARG14 arg14)
const;
985 template <
class PROTOTYPE>
993 template <
class PROTOTYPE,
class INSTANCE>
996 const INSTANCE&
object);
1008template <
class PROTOTYPE>
1015template <
class PROTOTYPE>
1018: d_func_p(original.d_func_p)
1027template <
class PROTOTYPE,
class INSTANCE>
1032: d_func_p(original.d_func_p)
1033, d_obj(original.d_obj,
bslma::Default::allocator(basicAllocator))
1037template <
class PROTOTYPE,
class INSTANCE>
1041 const INSTANCE&
object,
1044, d_obj(object,
bslma::Default::allocator(basicAllocator))
1048template <
class PROTOTYPE,
class INSTANCE>
1055template <
class PROTOTYPE,
class INSTANCE>
1061 d_func_p = rhs.d_func_p;
1062 d_obj.object() = rhs.d_obj.
object();
1067template <
class PROTOTYPE,
class INSTANCE>
1072 return (Deref::deref(d_obj.object()).*d_func_p)();
1075template <
class PROTOTYPE,
class INSTANCE>
1080 return (Deref::deref(d_obj.object()).*d_func_p)(arg1);
1083template <
class PROTOTYPE,
class INSTANCE>
1088 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2);
1091template <
class PROTOTYPE,
class INSTANCE>
1095 ARG1 arg1, ARG2 arg2, ARG3 arg3)
const
1097 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3);
1100template <
class PROTOTYPE,
class INSTANCE>
1104 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4)
const
1106 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4);
1109template <
class PROTOTYPE,
class INSTANCE>
1113 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5)
const
1115 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1119template <
class PROTOTYPE,
class INSTANCE>
1123 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6)
const
1125 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1129template <
class PROTOTYPE,
class INSTANCE>
1133 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6,
1136 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1140template <
class PROTOTYPE,
class INSTANCE>
1144 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6,
1145 ARG7 arg7, ARG8 arg8)
const
1147 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1148 arg5, arg6, arg7, arg8);
1151template <
class PROTOTYPE,
class INSTANCE>
1155 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6,
1156 ARG7 arg7, ARG8 arg8, ARG9 arg9)
const
1158 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1159 arg5, arg6, arg7, arg8,
1163template <
class PROTOTYPE,
class INSTANCE>
1167 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6,
1168 ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10)
const
1170 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1171 arg5, arg6, arg7, arg8,
1175template <
class PROTOTYPE,
class INSTANCE>
1179 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6,
1180 ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11)
const
1182 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1183 arg5, arg6, arg7, arg8,
1184 arg9, arg10, arg11);
1187template <
class PROTOTYPE,
class INSTANCE>
1191 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6,
1192 ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11,
1195 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1196 arg5, arg6, arg7, arg8,
1197 arg9, arg10, arg11, arg12);
1200template <
class PROTOTYPE,
class INSTANCE>
1204 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6,
1205 ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11,
1206 ARG12 arg12, ARG13 arg13)
const
1208 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1209 arg5, arg6, arg7, arg8,
1210 arg9, arg10, arg11, arg12,
1214template <
class PROTOTYPE,
class INSTANCE>
1218 ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5,
1219 ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10,
1220 ARG11 arg11, ARG12 arg12, ARG13 arg13, ARG14 arg14)
const
1222 return (Deref::deref(d_obj.object()).*d_func_p)(arg1, arg2, arg3, arg4,
1223 arg5, arg6, arg7, arg8,
1224 arg9, arg10, arg11, arg12,
1233template <
class PROTOTYPE>
1241template <
class PROTOTYPE,
class INSTANCE>
1259template <
class PROTOTYPE,
class INSTANCE>
1267template <
class PROTOTYPE,
class INSTANCE>
1275template <
class PROTOTYPE>
1280template <
class PROTOTYPE>
Definition bdlf_memfn.h:821
Traits::ClassType ObjectType
Definition bdlf_memfn.h:839
MemFn_Dereference< ObjectType > Deref
Definition bdlf_memfn.h:851
MemFnInstance(PROTOTYPE func, const INSTANCE &object, bslma::Allocator *basicAllocator=0)
Definition bdlf_memfn.h:1039
PROTOTYPE ProtoType
Definition bdlf_memfn.h:849
~MemFnInstance()
Destroy this object.
Definition bdlf_memfn.h:1050
Traits::ArgumentList Args
Definition bdlf_memfn.h:835
MemFnInstance & operator=(const MemFnInstance &rhs)
Definition bdlf_memfn.h:1058
PROTOTYPE Prototype
Definition bdlf_memfn.h:843
ResultType operator()() const
Definition bdlf_memfn.h:1070
Traits::ResultType ResultType
Definition bdlf_memfn.h:831
Definition bdlf_memfn.h:279
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7) const
Definition bdlf_memfn.h:462
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5) const
Definition bdlf_memfn.h:648
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8) const
Definition bdlf_memfn.h:690
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8) const
Definition bdlf_memfn.h:476
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2) const
Definition bdlf_memfn.h:399
ResultType operator()(const INSTANCE &object, ARG1 arg1) const
Definition bdlf_memfn.h:601
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3) const
Definition bdlf_memfn.h:623
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9) const
Definition bdlf_memfn.h:705
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11, ARG12 arg12) const
Definition bdlf_memfn.h:537
PROTOTYPE ProtoType
Definition bdlf_memfn.h:312
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10) const
Definition bdlf_memfn.h:506
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11, ARG12 arg12) const
Definition bdlf_memfn.h:753
Traits::ResultType ResultType
Definition bdlf_memfn.h:294
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9) const
Definition bdlf_memfn.h:491
~MemFn()=default
Destroy this object.
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2) const
Definition bdlf_memfn.h:612
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11, ARG12 arg12, ARG13 arg13) const
Definition bdlf_memfn.h:771
ResultType operator()(INSTANCE &object, ARG1 arg1) const
Definition bdlf_memfn.h:388
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5) const
Definition bdlf_memfn.h:435
Traits::ArgumentList Args
Definition bdlf_memfn.h:298
MemFn(PROTOTYPE func)
Definition bdlf_memfn.h:1010
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10) const
Definition bdlf_memfn.h:720
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11, ARG12 arg12, ARG13 arg13, ARG14 arg14) const
Definition bdlf_memfn.h:572
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4) const
Definition bdlf_memfn.h:635
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6) const
Definition bdlf_memfn.h:448
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11) const
Definition bdlf_memfn.h:521
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11, ARG12 arg12, ARG13 arg13) const
Definition bdlf_memfn.h:554
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7) const
Definition bdlf_memfn.h:675
ResultType operator()(const INSTANCE &object) const
Definition bdlf_memfn.h:590
ResultType operator()(INSTANCE &object) const
Definition bdlf_memfn.h:377
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11, ARG12 arg12, ARG13 arg13, ARG14 arg14) const
Definition bdlf_memfn.h:790
Traits::ClassType ObjectType
Definition bdlf_memfn.h:302
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6, ARG7 arg7, ARG8 arg8, ARG9 arg9, ARG10 arg10, ARG11 arg11) const
Definition bdlf_memfn.h:736
PROTOTYPE Prototype
Definition bdlf_memfn.h:306
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3) const
Definition bdlf_memfn.h:410
ResultType operator()(const INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4, ARG5 arg5, ARG6 arg6) const
Definition bdlf_memfn.h:661
ResultType operator()(INSTANCE &object, ARG1 arg1, ARG2 arg2, ARG3 arg3, ARG4 arg4) const
Definition bdlf_memfn.h:422
Definition bslalg_constructorproxy.h:368
OBJECT_TYPE & object() BSLS_KEYWORD_NOEXCEPT
Return a reference to the modifiable object held by this proxy.
Definition bslalg_constructorproxy.h:1187
Definition bslma_allocator.h:457
Definition bslmf_forwardingtype.h:428
#define BSLMF_ASSERT(expr)
Definition bslmf_assert.h:229
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition bdlf_bind.h:976
Definition balxml_encoderoptions.h:68
Definition bdlbb_blob.h:576
Definition bdlf_memfn.h:978
static MemFn< PROTOTYPE > memFn(PROTOTYPE func)
Definition bdlf_memfn.h:1236
Definition bdlf_memfn.h:233
static OBJTYPE & deref(TYPE &obj)
Definition bdlf_memfn.h:253
static OBJTYPE & derefImp(const TYPE &obj, bsl::true_type *)
Definition bdlf_memfn.h:247
static OBJTYPE & derefImp(OBJTYPE &obj, bsl::false_type *)
Definition bdlf_memfn.h:235
static OBJTYPE & deref(const TYPE &obj)
Definition bdlf_memfn.h:259
static OBJTYPE & derefImp(TYPE &obj, bsl::true_type *)
Definition bdlf_memfn.h:241
Definition bslmf_integralconstant.h:244
Definition bslma_usesbslmaallocator.h:343
Definition bslmf_haspointersemantics.h:78
Definition bslmf_isbitwisecopyable.h:298
Definition bslmf_isbitwisemoveable.h:718
@ IS_MEMBER_FUNCTION_PTR
Definition bslmf_memberfunctionpointertraits.h:1393
Definition bslmf_memberfunctionpointertraits.h:150
This struct is empty and represents a nil type.
Definition bslmf_nil.h:131