OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // This file automatically generated by testing/generate_gmock_mutant.py. | 5 // This file automatically generated by testing/generate_gmock_mutant.py. |
6 // DO NOT EDIT. | 6 // DO NOT EDIT. |
7 | 7 |
8 #ifndef TESTING_GMOCK_MUTANT_H_ | 8 #ifndef TESTING_GMOCK_MUTANT_H_ |
9 #define TESTING_GMOCK_MUTANT_H_ | 9 #define TESTING_GMOCK_MUTANT_H_ |
10 | 10 |
(...skipping 632 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
643 #if defined (OS_WIN) | 643 #if defined (OS_WIN) |
644 template <typename R, typename T, typename U> | 644 template <typename R, typename T, typename U> |
645 inline MutantFunctor<R, Tuple0> | 645 inline MutantFunctor<R, Tuple0> |
646 CreateFunctor(T* obj, R (__stdcall U::*method)()) { | 646 CreateFunctor(T* obj, R (__stdcall U::*method)()) { |
647 MutantRunner<R, Tuple0>* t = | 647 MutantRunner<R, Tuple0>* t = |
648 new Mutant<R, T, R (__stdcall U::*)(), | 648 new Mutant<R, T, R (__stdcall U::*)(), |
649 Tuple0, Tuple0> | 649 Tuple0, Tuple0> |
650 (obj, method, MakeTuple()); | 650 (obj, method, MakeTuple()); |
651 return MutantFunctor<R, Tuple0>(t); | 651 return MutantFunctor<R, Tuple0>(t); |
652 } | 652 } |
| 653 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 654 template <typename R, typename T, typename U> |
| 655 inline MutantFunctor<R, Tuple0> |
| 656 CreateFunctor(T** obj, R (__stdcall U::*method)()) { |
| 657 MutantRunner<R, Tuple0>* t = |
| 658 new MutantLateObjectBind<R, T, R (__stdcall U::*)(), |
| 659 Tuple0, Tuple0> |
| 660 (obj, method, MakeTuple()); |
| 661 return MutantFunctor<R, Tuple0>(t); |
| 662 } |
| 663 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
653 #endif // OS_WIN | 664 #endif // OS_WIN |
654 | 665 |
655 // 0 - 1 | 666 // 0 - 1 |
656 template <typename R, typename T, typename U, typename A1> | 667 template <typename R, typename T, typename U, typename A1> |
657 inline MutantFunctor<R, Tuple1<A1> > | 668 inline MutantFunctor<R, Tuple1<A1> > |
658 CreateFunctor(T* obj, R (U::*method)(A1)) { | 669 CreateFunctor(T* obj, R (U::*method)(A1)) { |
659 MutantRunner<R, Tuple1<A1> >* t = | 670 MutantRunner<R, Tuple1<A1> >* t = |
660 new Mutant<R, T, R (U::*)(A1), | 671 new Mutant<R, T, R (U::*)(A1), |
661 Tuple0, Tuple1<A1> > | 672 Tuple0, Tuple1<A1> > |
662 (obj, method, MakeTuple()); | 673 (obj, method, MakeTuple()); |
(...skipping 25 matching lines...) Expand all Loading... |
688 #if defined (OS_WIN) | 699 #if defined (OS_WIN) |
689 template <typename R, typename T, typename U, typename A1> | 700 template <typename R, typename T, typename U, typename A1> |
690 inline MutantFunctor<R, Tuple1<A1> > | 701 inline MutantFunctor<R, Tuple1<A1> > |
691 CreateFunctor(T* obj, R (__stdcall U::*method)(A1)) { | 702 CreateFunctor(T* obj, R (__stdcall U::*method)(A1)) { |
692 MutantRunner<R, Tuple1<A1> >* t = | 703 MutantRunner<R, Tuple1<A1> >* t = |
693 new Mutant<R, T, R (__stdcall U::*)(A1), | 704 new Mutant<R, T, R (__stdcall U::*)(A1), |
694 Tuple0, Tuple1<A1> > | 705 Tuple0, Tuple1<A1> > |
695 (obj, method, MakeTuple()); | 706 (obj, method, MakeTuple()); |
696 return MutantFunctor<R, Tuple1<A1> >(t); | 707 return MutantFunctor<R, Tuple1<A1> >(t); |
697 } | 708 } |
| 709 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 710 template <typename R, typename T, typename U, typename A1> |
| 711 inline MutantFunctor<R, Tuple1<A1> > |
| 712 CreateFunctor(T** obj, R (__stdcall U::*method)(A1)) { |
| 713 MutantRunner<R, Tuple1<A1> >* t = |
| 714 new MutantLateObjectBind<R, T, R (__stdcall U::*)(A1), |
| 715 Tuple0, Tuple1<A1> > |
| 716 (obj, method, MakeTuple()); |
| 717 return MutantFunctor<R, Tuple1<A1> >(t); |
| 718 } |
| 719 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
698 #endif // OS_WIN | 720 #endif // OS_WIN |
699 | 721 |
700 // 0 - 2 | 722 // 0 - 2 |
701 template <typename R, typename T, typename U, typename A1, typename A2> | 723 template <typename R, typename T, typename U, typename A1, typename A2> |
702 inline MutantFunctor<R, Tuple2<A1, A2> > | 724 inline MutantFunctor<R, Tuple2<A1, A2> > |
703 CreateFunctor(T* obj, R (U::*method)(A1, A2)) { | 725 CreateFunctor(T* obj, R (U::*method)(A1, A2)) { |
704 MutantRunner<R, Tuple2<A1, A2> >* t = | 726 MutantRunner<R, Tuple2<A1, A2> >* t = |
705 new Mutant<R, T, R (U::*)(A1, A2), | 727 new Mutant<R, T, R (U::*)(A1, A2), |
706 Tuple0, Tuple2<A1, A2> > | 728 Tuple0, Tuple2<A1, A2> > |
707 (obj, method, MakeTuple()); | 729 (obj, method, MakeTuple()); |
(...skipping 25 matching lines...) Expand all Loading... |
733 #if defined (OS_WIN) | 755 #if defined (OS_WIN) |
734 template <typename R, typename T, typename U, typename A1, typename A2> | 756 template <typename R, typename T, typename U, typename A1, typename A2> |
735 inline MutantFunctor<R, Tuple2<A1, A2> > | 757 inline MutantFunctor<R, Tuple2<A1, A2> > |
736 CreateFunctor(T* obj, R (__stdcall U::*method)(A1, A2)) { | 758 CreateFunctor(T* obj, R (__stdcall U::*method)(A1, A2)) { |
737 MutantRunner<R, Tuple2<A1, A2> >* t = | 759 MutantRunner<R, Tuple2<A1, A2> >* t = |
738 new Mutant<R, T, R (__stdcall U::*)(A1, A2), | 760 new Mutant<R, T, R (__stdcall U::*)(A1, A2), |
739 Tuple0, Tuple2<A1, A2> > | 761 Tuple0, Tuple2<A1, A2> > |
740 (obj, method, MakeTuple()); | 762 (obj, method, MakeTuple()); |
741 return MutantFunctor<R, Tuple2<A1, A2> >(t); | 763 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
742 } | 764 } |
| 765 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 766 template <typename R, typename T, typename U, typename A1, typename A2> |
| 767 inline MutantFunctor<R, Tuple2<A1, A2> > |
| 768 CreateFunctor(T** obj, R (__stdcall U::*method)(A1, A2)) { |
| 769 MutantRunner<R, Tuple2<A1, A2> >* t = |
| 770 new MutantLateObjectBind<R, T, R (__stdcall U::*)(A1, A2), |
| 771 Tuple0, Tuple2<A1, A2> > |
| 772 (obj, method, MakeTuple()); |
| 773 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
| 774 } |
| 775 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
743 #endif // OS_WIN | 776 #endif // OS_WIN |
744 | 777 |
745 // 0 - 3 | 778 // 0 - 3 |
746 template <typename R, typename T, typename U, typename A1, typename A2, | 779 template <typename R, typename T, typename U, typename A1, typename A2, |
747 typename A3> | 780 typename A3> |
748 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 781 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
749 CreateFunctor(T* obj, R (U::*method)(A1, A2, A3)) { | 782 CreateFunctor(T* obj, R (U::*method)(A1, A2, A3)) { |
750 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 783 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
751 new Mutant<R, T, R (U::*)(A1, A2, A3), | 784 new Mutant<R, T, R (U::*)(A1, A2, A3), |
752 Tuple0, Tuple3<A1, A2, A3> > | 785 Tuple0, Tuple3<A1, A2, A3> > |
(...skipping 28 matching lines...) Expand all Loading... |
781 template <typename R, typename T, typename U, typename A1, typename A2, | 814 template <typename R, typename T, typename U, typename A1, typename A2, |
782 typename A3> | 815 typename A3> |
783 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 816 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
784 CreateFunctor(T* obj, R (__stdcall U::*method)(A1, A2, A3)) { | 817 CreateFunctor(T* obj, R (__stdcall U::*method)(A1, A2, A3)) { |
785 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 818 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
786 new Mutant<R, T, R (__stdcall U::*)(A1, A2, A3), | 819 new Mutant<R, T, R (__stdcall U::*)(A1, A2, A3), |
787 Tuple0, Tuple3<A1, A2, A3> > | 820 Tuple0, Tuple3<A1, A2, A3> > |
788 (obj, method, MakeTuple()); | 821 (obj, method, MakeTuple()); |
789 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); | 822 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
790 } | 823 } |
| 824 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 825 template <typename R, typename T, typename U, typename A1, typename A2, |
| 826 typename A3> |
| 827 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
| 828 CreateFunctor(T** obj, R (__stdcall U::*method)(A1, A2, A3)) { |
| 829 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
| 830 new MutantLateObjectBind<R, T, R (__stdcall U::*)(A1, A2, A3), |
| 831 Tuple0, Tuple3<A1, A2, A3> > |
| 832 (obj, method, MakeTuple()); |
| 833 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
| 834 } |
| 835 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
791 #endif // OS_WIN | 836 #endif // OS_WIN |
792 | 837 |
793 // 0 - 4 | 838 // 0 - 4 |
794 template <typename R, typename T, typename U, typename A1, typename A2, | 839 template <typename R, typename T, typename U, typename A1, typename A2, |
795 typename A3, typename A4> | 840 typename A3, typename A4> |
796 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 841 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
797 CreateFunctor(T* obj, R (U::*method)(A1, A2, A3, A4)) { | 842 CreateFunctor(T* obj, R (U::*method)(A1, A2, A3, A4)) { |
798 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 843 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
799 new Mutant<R, T, R (U::*)(A1, A2, A3, A4), | 844 new Mutant<R, T, R (U::*)(A1, A2, A3, A4), |
800 Tuple0, Tuple4<A1, A2, A3, A4> > | 845 Tuple0, Tuple4<A1, A2, A3, A4> > |
(...skipping 28 matching lines...) Expand all Loading... |
829 template <typename R, typename T, typename U, typename A1, typename A2, | 874 template <typename R, typename T, typename U, typename A1, typename A2, |
830 typename A3, typename A4> | 875 typename A3, typename A4> |
831 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 876 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
832 CreateFunctor(T* obj, R (__stdcall U::*method)(A1, A2, A3, A4)) { | 877 CreateFunctor(T* obj, R (__stdcall U::*method)(A1, A2, A3, A4)) { |
833 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 878 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
834 new Mutant<R, T, R (__stdcall U::*)(A1, A2, A3, A4), | 879 new Mutant<R, T, R (__stdcall U::*)(A1, A2, A3, A4), |
835 Tuple0, Tuple4<A1, A2, A3, A4> > | 880 Tuple0, Tuple4<A1, A2, A3, A4> > |
836 (obj, method, MakeTuple()); | 881 (obj, method, MakeTuple()); |
837 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); | 882 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
838 } | 883 } |
| 884 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 885 template <typename R, typename T, typename U, typename A1, typename A2, |
| 886 typename A3, typename A4> |
| 887 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
| 888 CreateFunctor(T** obj, R (__stdcall U::*method)(A1, A2, A3, A4)) { |
| 889 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
| 890 new MutantLateObjectBind<R, T, R (__stdcall U::*)(A1, A2, A3, A4), |
| 891 Tuple0, Tuple4<A1, A2, A3, A4> > |
| 892 (obj, method, MakeTuple()); |
| 893 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
| 894 } |
| 895 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
839 #endif // OS_WIN | 896 #endif // OS_WIN |
840 | 897 |
841 // 1 - 0 | 898 // 1 - 0 |
842 template <typename R, typename T, typename U, typename P1, typename X1> | 899 template <typename R, typename T, typename U, typename P1, typename X1> |
843 inline MutantFunctor<R, Tuple0> | 900 inline MutantFunctor<R, Tuple0> |
844 CreateFunctor(T* obj, R (U::*method)(X1), const P1& p1) { | 901 CreateFunctor(T* obj, R (U::*method)(X1), const P1& p1) { |
845 MutantRunner<R, Tuple0>* t = | 902 MutantRunner<R, Tuple0>* t = |
846 new Mutant<R, T, R (U::*)(X1), | 903 new Mutant<R, T, R (U::*)(X1), |
847 Tuple1<P1>, Tuple0> | 904 Tuple1<P1>, Tuple0> |
848 (obj, method, MakeTuple(p1)); | 905 (obj, method, MakeTuple(p1)); |
(...skipping 25 matching lines...) Expand all Loading... |
874 #if defined (OS_WIN) | 931 #if defined (OS_WIN) |
875 template <typename R, typename T, typename U, typename P1, typename X1> | 932 template <typename R, typename T, typename U, typename P1, typename X1> |
876 inline MutantFunctor<R, Tuple0> | 933 inline MutantFunctor<R, Tuple0> |
877 CreateFunctor(T* obj, R (__stdcall U::*method)(X1), const P1& p1) { | 934 CreateFunctor(T* obj, R (__stdcall U::*method)(X1), const P1& p1) { |
878 MutantRunner<R, Tuple0>* t = | 935 MutantRunner<R, Tuple0>* t = |
879 new Mutant<R, T, R (__stdcall U::*)(X1), | 936 new Mutant<R, T, R (__stdcall U::*)(X1), |
880 Tuple1<P1>, Tuple0> | 937 Tuple1<P1>, Tuple0> |
881 (obj, method, MakeTuple(p1)); | 938 (obj, method, MakeTuple(p1)); |
882 return MutantFunctor<R, Tuple0>(t); | 939 return MutantFunctor<R, Tuple0>(t); |
883 } | 940 } |
| 941 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 942 template <typename R, typename T, typename U, typename P1, typename X1> |
| 943 inline MutantFunctor<R, Tuple0> |
| 944 CreateFunctor(T** obj, R (__stdcall U::*method)(X1), const P1& p1) { |
| 945 MutantRunner<R, Tuple0>* t = |
| 946 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1), |
| 947 Tuple1<P1>, Tuple0> |
| 948 (obj, method, MakeTuple(p1)); |
| 949 return MutantFunctor<R, Tuple0>(t); |
| 950 } |
| 951 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
884 #endif // OS_WIN | 952 #endif // OS_WIN |
885 | 953 |
886 // 1 - 1 | 954 // 1 - 1 |
887 template <typename R, typename T, typename U, typename P1, typename A1, | 955 template <typename R, typename T, typename U, typename P1, typename A1, |
888 typename X1> | 956 typename X1> |
889 inline MutantFunctor<R, Tuple1<A1> > | 957 inline MutantFunctor<R, Tuple1<A1> > |
890 CreateFunctor(T* obj, R (U::*method)(X1, A1), const P1& p1) { | 958 CreateFunctor(T* obj, R (U::*method)(X1, A1), const P1& p1) { |
891 MutantRunner<R, Tuple1<A1> >* t = | 959 MutantRunner<R, Tuple1<A1> >* t = |
892 new Mutant<R, T, R (U::*)(X1, A1), | 960 new Mutant<R, T, R (U::*)(X1, A1), |
893 Tuple1<P1>, Tuple1<A1> > | 961 Tuple1<P1>, Tuple1<A1> > |
(...skipping 28 matching lines...) Expand all Loading... |
922 template <typename R, typename T, typename U, typename P1, typename A1, | 990 template <typename R, typename T, typename U, typename P1, typename A1, |
923 typename X1> | 991 typename X1> |
924 inline MutantFunctor<R, Tuple1<A1> > | 992 inline MutantFunctor<R, Tuple1<A1> > |
925 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, A1), const P1& p1) { | 993 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, A1), const P1& p1) { |
926 MutantRunner<R, Tuple1<A1> >* t = | 994 MutantRunner<R, Tuple1<A1> >* t = |
927 new Mutant<R, T, R (__stdcall U::*)(X1, A1), | 995 new Mutant<R, T, R (__stdcall U::*)(X1, A1), |
928 Tuple1<P1>, Tuple1<A1> > | 996 Tuple1<P1>, Tuple1<A1> > |
929 (obj, method, MakeTuple(p1)); | 997 (obj, method, MakeTuple(p1)); |
930 return MutantFunctor<R, Tuple1<A1> >(t); | 998 return MutantFunctor<R, Tuple1<A1> >(t); |
931 } | 999 } |
| 1000 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1001 template <typename R, typename T, typename U, typename P1, typename A1, |
| 1002 typename X1> |
| 1003 inline MutantFunctor<R, Tuple1<A1> > |
| 1004 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, A1), const P1& p1) { |
| 1005 MutantRunner<R, Tuple1<A1> >* t = |
| 1006 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, A1), |
| 1007 Tuple1<P1>, Tuple1<A1> > |
| 1008 (obj, method, MakeTuple(p1)); |
| 1009 return MutantFunctor<R, Tuple1<A1> >(t); |
| 1010 } |
| 1011 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
932 #endif // OS_WIN | 1012 #endif // OS_WIN |
933 | 1013 |
934 // 1 - 2 | 1014 // 1 - 2 |
935 template <typename R, typename T, typename U, typename P1, typename A1, | 1015 template <typename R, typename T, typename U, typename P1, typename A1, |
936 typename A2, typename X1> | 1016 typename A2, typename X1> |
937 inline MutantFunctor<R, Tuple2<A1, A2> > | 1017 inline MutantFunctor<R, Tuple2<A1, A2> > |
938 CreateFunctor(T* obj, R (U::*method)(X1, A1, A2), const P1& p1) { | 1018 CreateFunctor(T* obj, R (U::*method)(X1, A1, A2), const P1& p1) { |
939 MutantRunner<R, Tuple2<A1, A2> >* t = | 1019 MutantRunner<R, Tuple2<A1, A2> >* t = |
940 new Mutant<R, T, R (U::*)(X1, A1, A2), | 1020 new Mutant<R, T, R (U::*)(X1, A1, A2), |
941 Tuple1<P1>, Tuple2<A1, A2> > | 1021 Tuple1<P1>, Tuple2<A1, A2> > |
(...skipping 28 matching lines...) Expand all Loading... |
970 template <typename R, typename T, typename U, typename P1, typename A1, | 1050 template <typename R, typename T, typename U, typename P1, typename A1, |
971 typename A2, typename X1> | 1051 typename A2, typename X1> |
972 inline MutantFunctor<R, Tuple2<A1, A2> > | 1052 inline MutantFunctor<R, Tuple2<A1, A2> > |
973 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, A1, A2), const P1& p1) { | 1053 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, A1, A2), const P1& p1) { |
974 MutantRunner<R, Tuple2<A1, A2> >* t = | 1054 MutantRunner<R, Tuple2<A1, A2> >* t = |
975 new Mutant<R, T, R (__stdcall U::*)(X1, A1, A2), | 1055 new Mutant<R, T, R (__stdcall U::*)(X1, A1, A2), |
976 Tuple1<P1>, Tuple2<A1, A2> > | 1056 Tuple1<P1>, Tuple2<A1, A2> > |
977 (obj, method, MakeTuple(p1)); | 1057 (obj, method, MakeTuple(p1)); |
978 return MutantFunctor<R, Tuple2<A1, A2> >(t); | 1058 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
979 } | 1059 } |
| 1060 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1061 template <typename R, typename T, typename U, typename P1, typename A1, |
| 1062 typename A2, typename X1> |
| 1063 inline MutantFunctor<R, Tuple2<A1, A2> > |
| 1064 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, A1, A2), const P1& p1) { |
| 1065 MutantRunner<R, Tuple2<A1, A2> >* t = |
| 1066 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, A1, A2), |
| 1067 Tuple1<P1>, Tuple2<A1, A2> > |
| 1068 (obj, method, MakeTuple(p1)); |
| 1069 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
| 1070 } |
| 1071 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
980 #endif // OS_WIN | 1072 #endif // OS_WIN |
981 | 1073 |
982 // 1 - 3 | 1074 // 1 - 3 |
983 template <typename R, typename T, typename U, typename P1, typename A1, | 1075 template <typename R, typename T, typename U, typename P1, typename A1, |
984 typename A2, typename A3, typename X1> | 1076 typename A2, typename A3, typename X1> |
985 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 1077 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
986 CreateFunctor(T* obj, R (U::*method)(X1, A1, A2, A3), const P1& p1) { | 1078 CreateFunctor(T* obj, R (U::*method)(X1, A1, A2, A3), const P1& p1) { |
987 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 1079 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
988 new Mutant<R, T, R (U::*)(X1, A1, A2, A3), | 1080 new Mutant<R, T, R (U::*)(X1, A1, A2, A3), |
989 Tuple1<P1>, Tuple3<A1, A2, A3> > | 1081 Tuple1<P1>, Tuple3<A1, A2, A3> > |
(...skipping 29 matching lines...) Expand all Loading... |
1019 template <typename R, typename T, typename U, typename P1, typename A1, | 1111 template <typename R, typename T, typename U, typename P1, typename A1, |
1020 typename A2, typename A3, typename X1> | 1112 typename A2, typename A3, typename X1> |
1021 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 1113 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
1022 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, A1, A2, A3), const P1& p1) { | 1114 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, A1, A2, A3), const P1& p1) { |
1023 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 1115 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
1024 new Mutant<R, T, R (__stdcall U::*)(X1, A1, A2, A3), | 1116 new Mutant<R, T, R (__stdcall U::*)(X1, A1, A2, A3), |
1025 Tuple1<P1>, Tuple3<A1, A2, A3> > | 1117 Tuple1<P1>, Tuple3<A1, A2, A3> > |
1026 (obj, method, MakeTuple(p1)); | 1118 (obj, method, MakeTuple(p1)); |
1027 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); | 1119 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
1028 } | 1120 } |
| 1121 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1122 template <typename R, typename T, typename U, typename P1, typename A1, |
| 1123 typename A2, typename A3, typename X1> |
| 1124 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
| 1125 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, A1, A2, A3), const P1& p1) { |
| 1126 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
| 1127 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, A1, A2, A3), |
| 1128 Tuple1<P1>, Tuple3<A1, A2, A3> > |
| 1129 (obj, method, MakeTuple(p1)); |
| 1130 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
| 1131 } |
| 1132 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1029 #endif // OS_WIN | 1133 #endif // OS_WIN |
1030 | 1134 |
1031 // 1 - 4 | 1135 // 1 - 4 |
1032 template <typename R, typename T, typename U, typename P1, typename A1, | 1136 template <typename R, typename T, typename U, typename P1, typename A1, |
1033 typename A2, typename A3, typename A4, typename X1> | 1137 typename A2, typename A3, typename A4, typename X1> |
1034 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 1138 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
1035 CreateFunctor(T* obj, R (U::*method)(X1, A1, A2, A3, A4), const P1& p1) { | 1139 CreateFunctor(T* obj, R (U::*method)(X1, A1, A2, A3, A4), const P1& p1) { |
1036 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 1140 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
1037 new Mutant<R, T, R (U::*)(X1, A1, A2, A3, A4), | 1141 new Mutant<R, T, R (U::*)(X1, A1, A2, A3, A4), |
1038 Tuple1<P1>, Tuple4<A1, A2, A3, A4> > | 1142 Tuple1<P1>, Tuple4<A1, A2, A3, A4> > |
(...skipping 30 matching lines...) Expand all Loading... |
1069 typename A2, typename A3, typename A4, typename X1> | 1173 typename A2, typename A3, typename A4, typename X1> |
1070 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 1174 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
1071 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, A1, A2, A3, A4), | 1175 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, A1, A2, A3, A4), |
1072 const P1& p1) { | 1176 const P1& p1) { |
1073 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 1177 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
1074 new Mutant<R, T, R (__stdcall U::*)(X1, A1, A2, A3, A4), | 1178 new Mutant<R, T, R (__stdcall U::*)(X1, A1, A2, A3, A4), |
1075 Tuple1<P1>, Tuple4<A1, A2, A3, A4> > | 1179 Tuple1<P1>, Tuple4<A1, A2, A3, A4> > |
1076 (obj, method, MakeTuple(p1)); | 1180 (obj, method, MakeTuple(p1)); |
1077 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); | 1181 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
1078 } | 1182 } |
| 1183 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1184 template <typename R, typename T, typename U, typename P1, typename A1, |
| 1185 typename A2, typename A3, typename A4, typename X1> |
| 1186 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
| 1187 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, A1, A2, A3, A4), |
| 1188 const P1& p1) { |
| 1189 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
| 1190 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, A1, A2, A3, A4), |
| 1191 Tuple1<P1>, Tuple4<A1, A2, A3, A4> > |
| 1192 (obj, method, MakeTuple(p1)); |
| 1193 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
| 1194 } |
| 1195 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1079 #endif // OS_WIN | 1196 #endif // OS_WIN |
1080 | 1197 |
1081 // 2 - 0 | 1198 // 2 - 0 |
1082 template <typename R, typename T, typename U, typename P1, typename P2, | 1199 template <typename R, typename T, typename U, typename P1, typename P2, |
1083 typename X1, typename X2> | 1200 typename X1, typename X2> |
1084 inline MutantFunctor<R, Tuple0> | 1201 inline MutantFunctor<R, Tuple0> |
1085 CreateFunctor(T* obj, R (U::*method)(X1, X2), const P1& p1, const P2& p2) { | 1202 CreateFunctor(T* obj, R (U::*method)(X1, X2), const P1& p1, const P2& p2) { |
1086 MutantRunner<R, Tuple0>* t = | 1203 MutantRunner<R, Tuple0>* t = |
1087 new Mutant<R, T, R (U::*)(X1, X2), | 1204 new Mutant<R, T, R (U::*)(X1, X2), |
1088 Tuple2<P1, P2>, Tuple0> | 1205 Tuple2<P1, P2>, Tuple0> |
(...skipping 29 matching lines...) Expand all Loading... |
1118 typename X1, typename X2> | 1235 typename X1, typename X2> |
1119 inline MutantFunctor<R, Tuple0> | 1236 inline MutantFunctor<R, Tuple0> |
1120 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2), const P1& p1, | 1237 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2), const P1& p1, |
1121 const P2& p2) { | 1238 const P2& p2) { |
1122 MutantRunner<R, Tuple0>* t = | 1239 MutantRunner<R, Tuple0>* t = |
1123 new Mutant<R, T, R (__stdcall U::*)(X1, X2), | 1240 new Mutant<R, T, R (__stdcall U::*)(X1, X2), |
1124 Tuple2<P1, P2>, Tuple0> | 1241 Tuple2<P1, P2>, Tuple0> |
1125 (obj, method, MakeTuple(p1, p2)); | 1242 (obj, method, MakeTuple(p1, p2)); |
1126 return MutantFunctor<R, Tuple0>(t); | 1243 return MutantFunctor<R, Tuple0>(t); |
1127 } | 1244 } |
| 1245 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1246 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1247 typename X1, typename X2> |
| 1248 inline MutantFunctor<R, Tuple0> |
| 1249 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2), const P1& p1, |
| 1250 const P2& p2) { |
| 1251 MutantRunner<R, Tuple0>* t = |
| 1252 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2), |
| 1253 Tuple2<P1, P2>, Tuple0> |
| 1254 (obj, method, MakeTuple(p1, p2)); |
| 1255 return MutantFunctor<R, Tuple0>(t); |
| 1256 } |
| 1257 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1128 #endif // OS_WIN | 1258 #endif // OS_WIN |
1129 | 1259 |
1130 // 2 - 1 | 1260 // 2 - 1 |
1131 template <typename R, typename T, typename U, typename P1, typename P2, | 1261 template <typename R, typename T, typename U, typename P1, typename P2, |
1132 typename A1, typename X1, typename X2> | 1262 typename A1, typename X1, typename X2> |
1133 inline MutantFunctor<R, Tuple1<A1> > | 1263 inline MutantFunctor<R, Tuple1<A1> > |
1134 CreateFunctor(T* obj, R (U::*method)(X1, X2, A1), const P1& p1, const P2& p2) { | 1264 CreateFunctor(T* obj, R (U::*method)(X1, X2, A1), const P1& p1, const P2& p2) { |
1135 MutantRunner<R, Tuple1<A1> >* t = | 1265 MutantRunner<R, Tuple1<A1> >* t = |
1136 new Mutant<R, T, R (U::*)(X1, X2, A1), | 1266 new Mutant<R, T, R (U::*)(X1, X2, A1), |
1137 Tuple2<P1, P2>, Tuple1<A1> > | 1267 Tuple2<P1, P2>, Tuple1<A1> > |
(...skipping 30 matching lines...) Expand all Loading... |
1168 typename A1, typename X1, typename X2> | 1298 typename A1, typename X1, typename X2> |
1169 inline MutantFunctor<R, Tuple1<A1> > | 1299 inline MutantFunctor<R, Tuple1<A1> > |
1170 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, A1), const P1& p1, | 1300 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, A1), const P1& p1, |
1171 const P2& p2) { | 1301 const P2& p2) { |
1172 MutantRunner<R, Tuple1<A1> >* t = | 1302 MutantRunner<R, Tuple1<A1> >* t = |
1173 new Mutant<R, T, R (__stdcall U::*)(X1, X2, A1), | 1303 new Mutant<R, T, R (__stdcall U::*)(X1, X2, A1), |
1174 Tuple2<P1, P2>, Tuple1<A1> > | 1304 Tuple2<P1, P2>, Tuple1<A1> > |
1175 (obj, method, MakeTuple(p1, p2)); | 1305 (obj, method, MakeTuple(p1, p2)); |
1176 return MutantFunctor<R, Tuple1<A1> >(t); | 1306 return MutantFunctor<R, Tuple1<A1> >(t); |
1177 } | 1307 } |
| 1308 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1309 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1310 typename A1, typename X1, typename X2> |
| 1311 inline MutantFunctor<R, Tuple1<A1> > |
| 1312 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, A1), const P1& p1, |
| 1313 const P2& p2) { |
| 1314 MutantRunner<R, Tuple1<A1> >* t = |
| 1315 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, A1), |
| 1316 Tuple2<P1, P2>, Tuple1<A1> > |
| 1317 (obj, method, MakeTuple(p1, p2)); |
| 1318 return MutantFunctor<R, Tuple1<A1> >(t); |
| 1319 } |
| 1320 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1178 #endif // OS_WIN | 1321 #endif // OS_WIN |
1179 | 1322 |
1180 // 2 - 2 | 1323 // 2 - 2 |
1181 template <typename R, typename T, typename U, typename P1, typename P2, | 1324 template <typename R, typename T, typename U, typename P1, typename P2, |
1182 typename A1, typename A2, typename X1, typename X2> | 1325 typename A1, typename A2, typename X1, typename X2> |
1183 inline MutantFunctor<R, Tuple2<A1, A2> > | 1326 inline MutantFunctor<R, Tuple2<A1, A2> > |
1184 CreateFunctor(T* obj, R (U::*method)(X1, X2, A1, A2), const P1& p1, | 1327 CreateFunctor(T* obj, R (U::*method)(X1, X2, A1, A2), const P1& p1, |
1185 const P2& p2) { | 1328 const P2& p2) { |
1186 MutantRunner<R, Tuple2<A1, A2> >* t = | 1329 MutantRunner<R, Tuple2<A1, A2> >* t = |
1187 new Mutant<R, T, R (U::*)(X1, X2, A1, A2), | 1330 new Mutant<R, T, R (U::*)(X1, X2, A1, A2), |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1220 typename A1, typename A2, typename X1, typename X2> | 1363 typename A1, typename A2, typename X1, typename X2> |
1221 inline MutantFunctor<R, Tuple2<A1, A2> > | 1364 inline MutantFunctor<R, Tuple2<A1, A2> > |
1222 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, A1, A2), const P1& p1, | 1365 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, A1, A2), const P1& p1, |
1223 const P2& p2) { | 1366 const P2& p2) { |
1224 MutantRunner<R, Tuple2<A1, A2> >* t = | 1367 MutantRunner<R, Tuple2<A1, A2> >* t = |
1225 new Mutant<R, T, R (__stdcall U::*)(X1, X2, A1, A2), | 1368 new Mutant<R, T, R (__stdcall U::*)(X1, X2, A1, A2), |
1226 Tuple2<P1, P2>, Tuple2<A1, A2> > | 1369 Tuple2<P1, P2>, Tuple2<A1, A2> > |
1227 (obj, method, MakeTuple(p1, p2)); | 1370 (obj, method, MakeTuple(p1, p2)); |
1228 return MutantFunctor<R, Tuple2<A1, A2> >(t); | 1371 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
1229 } | 1372 } |
| 1373 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1374 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1375 typename A1, typename A2, typename X1, typename X2> |
| 1376 inline MutantFunctor<R, Tuple2<A1, A2> > |
| 1377 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, A1, A2), const P1& p1, |
| 1378 const P2& p2) { |
| 1379 MutantRunner<R, Tuple2<A1, A2> >* t = |
| 1380 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, A1, A2), |
| 1381 Tuple2<P1, P2>, Tuple2<A1, A2> > |
| 1382 (obj, method, MakeTuple(p1, p2)); |
| 1383 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
| 1384 } |
| 1385 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1230 #endif // OS_WIN | 1386 #endif // OS_WIN |
1231 | 1387 |
1232 // 2 - 3 | 1388 // 2 - 3 |
1233 template <typename R, typename T, typename U, typename P1, typename P2, | 1389 template <typename R, typename T, typename U, typename P1, typename P2, |
1234 typename A1, typename A2, typename A3, typename X1, typename X2> | 1390 typename A1, typename A2, typename A3, typename X1, typename X2> |
1235 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 1391 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
1236 CreateFunctor(T* obj, R (U::*method)(X1, X2, A1, A2, A3), const P1& p1, | 1392 CreateFunctor(T* obj, R (U::*method)(X1, X2, A1, A2, A3), const P1& p1, |
1237 const P2& p2) { | 1393 const P2& p2) { |
1238 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 1394 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
1239 new Mutant<R, T, R (U::*)(X1, X2, A1, A2, A3), | 1395 new Mutant<R, T, R (U::*)(X1, X2, A1, A2, A3), |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1272 typename A1, typename A2, typename A3, typename X1, typename X2> | 1428 typename A1, typename A2, typename A3, typename X1, typename X2> |
1273 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 1429 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
1274 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, A1, A2, A3), | 1430 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, A1, A2, A3), |
1275 const P1& p1, const P2& p2) { | 1431 const P1& p1, const P2& p2) { |
1276 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 1432 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
1277 new Mutant<R, T, R (__stdcall U::*)(X1, X2, A1, A2, A3), | 1433 new Mutant<R, T, R (__stdcall U::*)(X1, X2, A1, A2, A3), |
1278 Tuple2<P1, P2>, Tuple3<A1, A2, A3> > | 1434 Tuple2<P1, P2>, Tuple3<A1, A2, A3> > |
1279 (obj, method, MakeTuple(p1, p2)); | 1435 (obj, method, MakeTuple(p1, p2)); |
1280 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); | 1436 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
1281 } | 1437 } |
| 1438 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1439 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1440 typename A1, typename A2, typename A3, typename X1, typename X2> |
| 1441 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
| 1442 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, A1, A2, A3), |
| 1443 const P1& p1, const P2& p2) { |
| 1444 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
| 1445 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, A1, A2, A3), |
| 1446 Tuple2<P1, P2>, Tuple3<A1, A2, A3> > |
| 1447 (obj, method, MakeTuple(p1, p2)); |
| 1448 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
| 1449 } |
| 1450 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1282 #endif // OS_WIN | 1451 #endif // OS_WIN |
1283 | 1452 |
1284 // 2 - 4 | 1453 // 2 - 4 |
1285 template <typename R, typename T, typename U, typename P1, typename P2, | 1454 template <typename R, typename T, typename U, typename P1, typename P2, |
1286 typename A1, typename A2, typename A3, typename A4, typename X1, | 1455 typename A1, typename A2, typename A3, typename A4, typename X1, |
1287 typename X2> | 1456 typename X2> |
1288 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 1457 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
1289 CreateFunctor(T* obj, R (U::*method)(X1, X2, A1, A2, A3, A4), const P1& p1, | 1458 CreateFunctor(T* obj, R (U::*method)(X1, X2, A1, A2, A3, A4), const P1& p1, |
1290 const P2& p2) { | 1459 const P2& p2) { |
1291 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 1460 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1328 typename X2> | 1497 typename X2> |
1329 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 1498 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
1330 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, A1, A2, A3, A4), | 1499 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, A1, A2, A3, A4), |
1331 const P1& p1, const P2& p2) { | 1500 const P1& p1, const P2& p2) { |
1332 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 1501 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
1333 new Mutant<R, T, R (__stdcall U::*)(X1, X2, A1, A2, A3, A4), | 1502 new Mutant<R, T, R (__stdcall U::*)(X1, X2, A1, A2, A3, A4), |
1334 Tuple2<P1, P2>, Tuple4<A1, A2, A3, A4> > | 1503 Tuple2<P1, P2>, Tuple4<A1, A2, A3, A4> > |
1335 (obj, method, MakeTuple(p1, p2)); | 1504 (obj, method, MakeTuple(p1, p2)); |
1336 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); | 1505 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
1337 } | 1506 } |
| 1507 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1508 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1509 typename A1, typename A2, typename A3, typename A4, typename X1, |
| 1510 typename X2> |
| 1511 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
| 1512 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, A1, A2, A3, A4), |
| 1513 const P1& p1, const P2& p2) { |
| 1514 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
| 1515 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, A1, A2, A3, A4), |
| 1516 Tuple2<P1, P2>, Tuple4<A1, A2, A3, A4> > |
| 1517 (obj, method, MakeTuple(p1, p2)); |
| 1518 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
| 1519 } |
| 1520 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1338 #endif // OS_WIN | 1521 #endif // OS_WIN |
1339 | 1522 |
1340 // 3 - 0 | 1523 // 3 - 0 |
1341 template <typename R, typename T, typename U, typename P1, typename P2, | 1524 template <typename R, typename T, typename U, typename P1, typename P2, |
1342 typename P3, typename X1, typename X2, typename X3> | 1525 typename P3, typename X1, typename X2, typename X3> |
1343 inline MutantFunctor<R, Tuple0> | 1526 inline MutantFunctor<R, Tuple0> |
1344 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3), const P1& p1, const P2& p2, | 1527 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3), const P1& p1, const P2& p2, |
1345 const P3& p3) { | 1528 const P3& p3) { |
1346 MutantRunner<R, Tuple0>* t = | 1529 MutantRunner<R, Tuple0>* t = |
1347 new Mutant<R, T, R (U::*)(X1, X2, X3), | 1530 new Mutant<R, T, R (U::*)(X1, X2, X3), |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1381 typename P3, typename X1, typename X2, typename X3> | 1564 typename P3, typename X1, typename X2, typename X3> |
1382 inline MutantFunctor<R, Tuple0> | 1565 inline MutantFunctor<R, Tuple0> |
1383 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3), const P1& p1, | 1566 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3), const P1& p1, |
1384 const P2& p2, const P3& p3) { | 1567 const P2& p2, const P3& p3) { |
1385 MutantRunner<R, Tuple0>* t = | 1568 MutantRunner<R, Tuple0>* t = |
1386 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3), | 1569 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3), |
1387 Tuple3<P1, P2, P3>, Tuple0> | 1570 Tuple3<P1, P2, P3>, Tuple0> |
1388 (obj, method, MakeTuple(p1, p2, p3)); | 1571 (obj, method, MakeTuple(p1, p2, p3)); |
1389 return MutantFunctor<R, Tuple0>(t); | 1572 return MutantFunctor<R, Tuple0>(t); |
1390 } | 1573 } |
| 1574 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1575 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1576 typename P3, typename X1, typename X2, typename X3> |
| 1577 inline MutantFunctor<R, Tuple0> |
| 1578 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3), const P1& p1, |
| 1579 const P2& p2, const P3& p3) { |
| 1580 MutantRunner<R, Tuple0>* t = |
| 1581 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3), |
| 1582 Tuple3<P1, P2, P3>, Tuple0> |
| 1583 (obj, method, MakeTuple(p1, p2, p3)); |
| 1584 return MutantFunctor<R, Tuple0>(t); |
| 1585 } |
| 1586 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1391 #endif // OS_WIN | 1587 #endif // OS_WIN |
1392 | 1588 |
1393 // 3 - 1 | 1589 // 3 - 1 |
1394 template <typename R, typename T, typename U, typename P1, typename P2, | 1590 template <typename R, typename T, typename U, typename P1, typename P2, |
1395 typename P3, typename A1, typename X1, typename X2, typename X3> | 1591 typename P3, typename A1, typename X1, typename X2, typename X3> |
1396 inline MutantFunctor<R, Tuple1<A1> > | 1592 inline MutantFunctor<R, Tuple1<A1> > |
1397 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, A1), const P1& p1, | 1593 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, A1), const P1& p1, |
1398 const P2& p2, const P3& p3) { | 1594 const P2& p2, const P3& p3) { |
1399 MutantRunner<R, Tuple1<A1> >* t = | 1595 MutantRunner<R, Tuple1<A1> >* t = |
1400 new Mutant<R, T, R (U::*)(X1, X2, X3, A1), | 1596 new Mutant<R, T, R (U::*)(X1, X2, X3, A1), |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1434 typename P3, typename A1, typename X1, typename X2, typename X3> | 1630 typename P3, typename A1, typename X1, typename X2, typename X3> |
1435 inline MutantFunctor<R, Tuple1<A1> > | 1631 inline MutantFunctor<R, Tuple1<A1> > |
1436 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, A1), const P1& p1, | 1632 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, A1), const P1& p1, |
1437 const P2& p2, const P3& p3) { | 1633 const P2& p2, const P3& p3) { |
1438 MutantRunner<R, Tuple1<A1> >* t = | 1634 MutantRunner<R, Tuple1<A1> >* t = |
1439 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, A1), | 1635 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, A1), |
1440 Tuple3<P1, P2, P3>, Tuple1<A1> > | 1636 Tuple3<P1, P2, P3>, Tuple1<A1> > |
1441 (obj, method, MakeTuple(p1, p2, p3)); | 1637 (obj, method, MakeTuple(p1, p2, p3)); |
1442 return MutantFunctor<R, Tuple1<A1> >(t); | 1638 return MutantFunctor<R, Tuple1<A1> >(t); |
1443 } | 1639 } |
| 1640 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1641 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1642 typename P3, typename A1, typename X1, typename X2, typename X3> |
| 1643 inline MutantFunctor<R, Tuple1<A1> > |
| 1644 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3, A1), const P1& p1, |
| 1645 const P2& p2, const P3& p3) { |
| 1646 MutantRunner<R, Tuple1<A1> >* t = |
| 1647 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3, A1), |
| 1648 Tuple3<P1, P2, P3>, Tuple1<A1> > |
| 1649 (obj, method, MakeTuple(p1, p2, p3)); |
| 1650 return MutantFunctor<R, Tuple1<A1> >(t); |
| 1651 } |
| 1652 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1444 #endif // OS_WIN | 1653 #endif // OS_WIN |
1445 | 1654 |
1446 // 3 - 2 | 1655 // 3 - 2 |
1447 template <typename R, typename T, typename U, typename P1, typename P2, | 1656 template <typename R, typename T, typename U, typename P1, typename P2, |
1448 typename P3, typename A1, typename A2, typename X1, typename X2, | 1657 typename P3, typename A1, typename A2, typename X1, typename X2, |
1449 typename X3> | 1658 typename X3> |
1450 inline MutantFunctor<R, Tuple2<A1, A2> > | 1659 inline MutantFunctor<R, Tuple2<A1, A2> > |
1451 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, A1, A2), const P1& p1, | 1660 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, A1, A2), const P1& p1, |
1452 const P2& p2, const P3& p3) { | 1661 const P2& p2, const P3& p3) { |
1453 MutantRunner<R, Tuple2<A1, A2> >* t = | 1662 MutantRunner<R, Tuple2<A1, A2> >* t = |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1490 typename X3> | 1699 typename X3> |
1491 inline MutantFunctor<R, Tuple2<A1, A2> > | 1700 inline MutantFunctor<R, Tuple2<A1, A2> > |
1492 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, A1, A2), | 1701 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, A1, A2), |
1493 const P1& p1, const P2& p2, const P3& p3) { | 1702 const P1& p1, const P2& p2, const P3& p3) { |
1494 MutantRunner<R, Tuple2<A1, A2> >* t = | 1703 MutantRunner<R, Tuple2<A1, A2> >* t = |
1495 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, A1, A2), | 1704 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, A1, A2), |
1496 Tuple3<P1, P2, P3>, Tuple2<A1, A2> > | 1705 Tuple3<P1, P2, P3>, Tuple2<A1, A2> > |
1497 (obj, method, MakeTuple(p1, p2, p3)); | 1706 (obj, method, MakeTuple(p1, p2, p3)); |
1498 return MutantFunctor<R, Tuple2<A1, A2> >(t); | 1707 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
1499 } | 1708 } |
| 1709 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1710 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1711 typename P3, typename A1, typename A2, typename X1, typename X2, |
| 1712 typename X3> |
| 1713 inline MutantFunctor<R, Tuple2<A1, A2> > |
| 1714 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3, A1, A2), |
| 1715 const P1& p1, const P2& p2, const P3& p3) { |
| 1716 MutantRunner<R, Tuple2<A1, A2> >* t = |
| 1717 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3, A1, A2), |
| 1718 Tuple3<P1, P2, P3>, Tuple2<A1, A2> > |
| 1719 (obj, method, MakeTuple(p1, p2, p3)); |
| 1720 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
| 1721 } |
| 1722 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1500 #endif // OS_WIN | 1723 #endif // OS_WIN |
1501 | 1724 |
1502 // 3 - 3 | 1725 // 3 - 3 |
1503 template <typename R, typename T, typename U, typename P1, typename P2, | 1726 template <typename R, typename T, typename U, typename P1, typename P2, |
1504 typename P3, typename A1, typename A2, typename A3, typename X1, | 1727 typename P3, typename A1, typename A2, typename A3, typename X1, |
1505 typename X2, typename X3> | 1728 typename X2, typename X3> |
1506 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 1729 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
1507 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, A1, A2, A3), const P1& p1, | 1730 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, A1, A2, A3), const P1& p1, |
1508 const P2& p2, const P3& p3) { | 1731 const P2& p2, const P3& p3) { |
1509 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 1732 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1546 typename X2, typename X3> | 1769 typename X2, typename X3> |
1547 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 1770 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
1548 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, A1, A2, A3), | 1771 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, A1, A2, A3), |
1549 const P1& p1, const P2& p2, const P3& p3) { | 1772 const P1& p1, const P2& p2, const P3& p3) { |
1550 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 1773 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
1551 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, A1, A2, A3), | 1774 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, A1, A2, A3), |
1552 Tuple3<P1, P2, P3>, Tuple3<A1, A2, A3> > | 1775 Tuple3<P1, P2, P3>, Tuple3<A1, A2, A3> > |
1553 (obj, method, MakeTuple(p1, p2, p3)); | 1776 (obj, method, MakeTuple(p1, p2, p3)); |
1554 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); | 1777 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
1555 } | 1778 } |
| 1779 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1780 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1781 typename P3, typename A1, typename A2, typename A3, typename X1, |
| 1782 typename X2, typename X3> |
| 1783 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
| 1784 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3, A1, A2, A3), |
| 1785 const P1& p1, const P2& p2, const P3& p3) { |
| 1786 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
| 1787 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3, A1, A2, A3), |
| 1788 Tuple3<P1, P2, P3>, Tuple3<A1, A2, A3> > |
| 1789 (obj, method, MakeTuple(p1, p2, p3)); |
| 1790 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
| 1791 } |
| 1792 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1556 #endif // OS_WIN | 1793 #endif // OS_WIN |
1557 | 1794 |
1558 // 3 - 4 | 1795 // 3 - 4 |
1559 template <typename R, typename T, typename U, typename P1, typename P2, | 1796 template <typename R, typename T, typename U, typename P1, typename P2, |
1560 typename P3, typename A1, typename A2, typename A3, typename A4, | 1797 typename P3, typename A1, typename A2, typename A3, typename A4, |
1561 typename X1, typename X2, typename X3> | 1798 typename X1, typename X2, typename X3> |
1562 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 1799 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
1563 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, A1, A2, A3, A4), const P1& p1, | 1800 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, A1, A2, A3, A4), const P1& p1, |
1564 const P2& p2, const P3& p3) { | 1801 const P2& p2, const P3& p3) { |
1565 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 1802 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1603 typename X1, typename X2, typename X3> | 1840 typename X1, typename X2, typename X3> |
1604 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 1841 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
1605 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, A1, A2, A3, A4), | 1842 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, A1, A2, A3, A4), |
1606 const P1& p1, const P2& p2, const P3& p3) { | 1843 const P1& p1, const P2& p2, const P3& p3) { |
1607 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 1844 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
1608 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, A1, A2, A3, A4), | 1845 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, A1, A2, A3, A4), |
1609 Tuple3<P1, P2, P3>, Tuple4<A1, A2, A3, A4> > | 1846 Tuple3<P1, P2, P3>, Tuple4<A1, A2, A3, A4> > |
1610 (obj, method, MakeTuple(p1, p2, p3)); | 1847 (obj, method, MakeTuple(p1, p2, p3)); |
1611 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); | 1848 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
1612 } | 1849 } |
| 1850 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1851 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1852 typename P3, typename A1, typename A2, typename A3, typename A4, |
| 1853 typename X1, typename X2, typename X3> |
| 1854 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
| 1855 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3, A1, A2, A3, A4), |
| 1856 const P1& p1, const P2& p2, const P3& p3) { |
| 1857 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
| 1858 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3, A1, A2, A3,
A4), |
| 1859 Tuple3<P1, P2, P3>, Tuple4<A1, A2, A3, A4> > |
| 1860 (obj, method, MakeTuple(p1, p2, p3)); |
| 1861 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
| 1862 } |
| 1863 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1613 #endif // OS_WIN | 1864 #endif // OS_WIN |
1614 | 1865 |
1615 // 4 - 0 | 1866 // 4 - 0 |
1616 template <typename R, typename T, typename U, typename P1, typename P2, | 1867 template <typename R, typename T, typename U, typename P1, typename P2, |
1617 typename P3, typename P4, typename X1, typename X2, typename X3, | 1868 typename P3, typename P4, typename X1, typename X2, typename X3, |
1618 typename X4> | 1869 typename X4> |
1619 inline MutantFunctor<R, Tuple0> | 1870 inline MutantFunctor<R, Tuple0> |
1620 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4), const P1& p1, | 1871 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4), const P1& p1, |
1621 const P2& p2, const P3& p3, const P4& p4) { | 1872 const P2& p2, const P3& p3, const P4& p4) { |
1622 MutantRunner<R, Tuple0>* t = | 1873 MutantRunner<R, Tuple0>* t = |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1659 typename X4> | 1910 typename X4> |
1660 inline MutantFunctor<R, Tuple0> | 1911 inline MutantFunctor<R, Tuple0> |
1661 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4), const P1& p1, | 1912 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4), const P1& p1, |
1662 const P2& p2, const P3& p3, const P4& p4) { | 1913 const P2& p2, const P3& p3, const P4& p4) { |
1663 MutantRunner<R, Tuple0>* t = | 1914 MutantRunner<R, Tuple0>* t = |
1664 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4), | 1915 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4), |
1665 Tuple4<P1, P2, P3, P4>, Tuple0> | 1916 Tuple4<P1, P2, P3, P4>, Tuple0> |
1666 (obj, method, MakeTuple(p1, p2, p3, p4)); | 1917 (obj, method, MakeTuple(p1, p2, p3, p4)); |
1667 return MutantFunctor<R, Tuple0>(t); | 1918 return MutantFunctor<R, Tuple0>(t); |
1668 } | 1919 } |
| 1920 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1921 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1922 typename P3, typename P4, typename X1, typename X2, typename X3, |
| 1923 typename X4> |
| 1924 inline MutantFunctor<R, Tuple0> |
| 1925 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3, X4), const P1& p1, |
| 1926 const P2& p2, const P3& p3, const P4& p4) { |
| 1927 MutantRunner<R, Tuple0>* t = |
| 1928 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3, X4), |
| 1929 Tuple4<P1, P2, P3, P4>, Tuple0> |
| 1930 (obj, method, MakeTuple(p1, p2, p3, p4)); |
| 1931 return MutantFunctor<R, Tuple0>(t); |
| 1932 } |
| 1933 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1669 #endif // OS_WIN | 1934 #endif // OS_WIN |
1670 | 1935 |
1671 // 4 - 1 | 1936 // 4 - 1 |
1672 template <typename R, typename T, typename U, typename P1, typename P2, | 1937 template <typename R, typename T, typename U, typename P1, typename P2, |
1673 typename P3, typename P4, typename A1, typename X1, typename X2, | 1938 typename P3, typename P4, typename A1, typename X1, typename X2, |
1674 typename X3, typename X4> | 1939 typename X3, typename X4> |
1675 inline MutantFunctor<R, Tuple1<A1> > | 1940 inline MutantFunctor<R, Tuple1<A1> > |
1676 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4, A1), const P1& p1, | 1941 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4, A1), const P1& p1, |
1677 const P2& p2, const P3& p3, const P4& p4) { | 1942 const P2& p2, const P3& p3, const P4& p4) { |
1678 MutantRunner<R, Tuple1<A1> >* t = | 1943 MutantRunner<R, Tuple1<A1> >* t = |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1715 typename X3, typename X4> | 1980 typename X3, typename X4> |
1716 inline MutantFunctor<R, Tuple1<A1> > | 1981 inline MutantFunctor<R, Tuple1<A1> > |
1717 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1), | 1982 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1), |
1718 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { | 1983 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { |
1719 MutantRunner<R, Tuple1<A1> >* t = | 1984 MutantRunner<R, Tuple1<A1> >* t = |
1720 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1), | 1985 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1), |
1721 Tuple4<P1, P2, P3, P4>, Tuple1<A1> > | 1986 Tuple4<P1, P2, P3, P4>, Tuple1<A1> > |
1722 (obj, method, MakeTuple(p1, p2, p3, p4)); | 1987 (obj, method, MakeTuple(p1, p2, p3, p4)); |
1723 return MutantFunctor<R, Tuple1<A1> >(t); | 1988 return MutantFunctor<R, Tuple1<A1> >(t); |
1724 } | 1989 } |
| 1990 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 1991 template <typename R, typename T, typename U, typename P1, typename P2, |
| 1992 typename P3, typename P4, typename A1, typename X1, typename X2, |
| 1993 typename X3, typename X4> |
| 1994 inline MutantFunctor<R, Tuple1<A1> > |
| 1995 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1), |
| 1996 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { |
| 1997 MutantRunner<R, Tuple1<A1> >* t = |
| 1998 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1), |
| 1999 Tuple4<P1, P2, P3, P4>, Tuple1<A1> > |
| 2000 (obj, method, MakeTuple(p1, p2, p3, p4)); |
| 2001 return MutantFunctor<R, Tuple1<A1> >(t); |
| 2002 } |
| 2003 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1725 #endif // OS_WIN | 2004 #endif // OS_WIN |
1726 | 2005 |
1727 // 4 - 2 | 2006 // 4 - 2 |
1728 template <typename R, typename T, typename U, typename P1, typename P2, | 2007 template <typename R, typename T, typename U, typename P1, typename P2, |
1729 typename P3, typename P4, typename A1, typename A2, typename X1, | 2008 typename P3, typename P4, typename A1, typename A2, typename X1, |
1730 typename X2, typename X3, typename X4> | 2009 typename X2, typename X3, typename X4> |
1731 inline MutantFunctor<R, Tuple2<A1, A2> > | 2010 inline MutantFunctor<R, Tuple2<A1, A2> > |
1732 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4, A1, A2), const P1& p1, | 2011 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4, A1, A2), const P1& p1, |
1733 const P2& p2, const P3& p3, const P4& p4) { | 2012 const P2& p2, const P3& p3, const P4& p4) { |
1734 MutantRunner<R, Tuple2<A1, A2> >* t = | 2013 MutantRunner<R, Tuple2<A1, A2> >* t = |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1772 typename X2, typename X3, typename X4> | 2051 typename X2, typename X3, typename X4> |
1773 inline MutantFunctor<R, Tuple2<A1, A2> > | 2052 inline MutantFunctor<R, Tuple2<A1, A2> > |
1774 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1, A2), | 2053 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1, A2), |
1775 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { | 2054 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { |
1776 MutantRunner<R, Tuple2<A1, A2> >* t = | 2055 MutantRunner<R, Tuple2<A1, A2> >* t = |
1777 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1, A2), | 2056 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1, A2), |
1778 Tuple4<P1, P2, P3, P4>, Tuple2<A1, A2> > | 2057 Tuple4<P1, P2, P3, P4>, Tuple2<A1, A2> > |
1779 (obj, method, MakeTuple(p1, p2, p3, p4)); | 2058 (obj, method, MakeTuple(p1, p2, p3, p4)); |
1780 return MutantFunctor<R, Tuple2<A1, A2> >(t); | 2059 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
1781 } | 2060 } |
| 2061 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 2062 template <typename R, typename T, typename U, typename P1, typename P2, |
| 2063 typename P3, typename P4, typename A1, typename A2, typename X1, |
| 2064 typename X2, typename X3, typename X4> |
| 2065 inline MutantFunctor<R, Tuple2<A1, A2> > |
| 2066 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1, A2), |
| 2067 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { |
| 2068 MutantRunner<R, Tuple2<A1, A2> >* t = |
| 2069 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1, A2), |
| 2070 Tuple4<P1, P2, P3, P4>, Tuple2<A1, A2> > |
| 2071 (obj, method, MakeTuple(p1, p2, p3, p4)); |
| 2072 return MutantFunctor<R, Tuple2<A1, A2> >(t); |
| 2073 } |
| 2074 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1782 #endif // OS_WIN | 2075 #endif // OS_WIN |
1783 | 2076 |
1784 // 4 - 3 | 2077 // 4 - 3 |
1785 template <typename R, typename T, typename U, typename P1, typename P2, | 2078 template <typename R, typename T, typename U, typename P1, typename P2, |
1786 typename P3, typename P4, typename A1, typename A2, typename A3, | 2079 typename P3, typename P4, typename A1, typename A2, typename A3, |
1787 typename X1, typename X2, typename X3, typename X4> | 2080 typename X1, typename X2, typename X3, typename X4> |
1788 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 2081 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
1789 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4, A1, A2, A3), const P1& p1, | 2082 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4, A1, A2, A3), const P1& p1, |
1790 const P2& p2, const P3& p3, const P4& p4) { | 2083 const P2& p2, const P3& p3, const P4& p4) { |
1791 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 2084 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1829 typename X1, typename X2, typename X3, typename X4> | 2122 typename X1, typename X2, typename X3, typename X4> |
1830 inline MutantFunctor<R, Tuple3<A1, A2, A3> > | 2123 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
1831 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1, A2, A3), | 2124 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1, A2, A3), |
1832 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { | 2125 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { |
1833 MutantRunner<R, Tuple3<A1, A2, A3> >* t = | 2126 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
1834 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1, A2, A3), | 2127 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1, A2, A3), |
1835 Tuple4<P1, P2, P3, P4>, Tuple3<A1, A2, A3> > | 2128 Tuple4<P1, P2, P3, P4>, Tuple3<A1, A2, A3> > |
1836 (obj, method, MakeTuple(p1, p2, p3, p4)); | 2129 (obj, method, MakeTuple(p1, p2, p3, p4)); |
1837 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); | 2130 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
1838 } | 2131 } |
| 2132 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 2133 template <typename R, typename T, typename U, typename P1, typename P2, |
| 2134 typename P3, typename P4, typename A1, typename A2, typename A3, |
| 2135 typename X1, typename X2, typename X3, typename X4> |
| 2136 inline MutantFunctor<R, Tuple3<A1, A2, A3> > |
| 2137 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1, A2, A3), |
| 2138 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { |
| 2139 MutantRunner<R, Tuple3<A1, A2, A3> >* t = |
| 2140 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1, A2,
A3), |
| 2141 Tuple4<P1, P2, P3, P4>, Tuple3<A1, A2, A3> > |
| 2142 (obj, method, MakeTuple(p1, p2, p3, p4)); |
| 2143 return MutantFunctor<R, Tuple3<A1, A2, A3> >(t); |
| 2144 } |
| 2145 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1839 #endif // OS_WIN | 2146 #endif // OS_WIN |
1840 | 2147 |
1841 // 4 - 4 | 2148 // 4 - 4 |
1842 template <typename R, typename T, typename U, typename P1, typename P2, | 2149 template <typename R, typename T, typename U, typename P1, typename P2, |
1843 typename P3, typename P4, typename A1, typename A2, typename A3, | 2150 typename P3, typename P4, typename A1, typename A2, typename A3, |
1844 typename A4, typename X1, typename X2, typename X3, typename X4> | 2151 typename A4, typename X1, typename X2, typename X3, typename X4> |
1845 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 2152 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
1846 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4, A1, A2, A3, A4), | 2153 CreateFunctor(T* obj, R (U::*method)(X1, X2, X3, X4, A1, A2, A3, A4), |
1847 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { | 2154 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { |
1848 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 2155 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1886 typename A4, typename X1, typename X2, typename X3, typename X4> | 2193 typename A4, typename X1, typename X2, typename X3, typename X4> |
1887 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > | 2194 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
1888 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1, A2, A3, A4), | 2195 CreateFunctor(T* obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1, A2, A3, A4), |
1889 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { | 2196 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { |
1890 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = | 2197 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
1891 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1, A2, A3, A4), | 2198 new Mutant<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1, A2, A3, A4), |
1892 Tuple4<P1, P2, P3, P4>, Tuple4<A1, A2, A3, A4> > | 2199 Tuple4<P1, P2, P3, P4>, Tuple4<A1, A2, A3, A4> > |
1893 (obj, method, MakeTuple(p1, p2, p3, p4)); | 2200 (obj, method, MakeTuple(p1, p2, p3, p4)); |
1894 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); | 2201 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
1895 } | 2202 } |
| 2203 #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
| 2204 template <typename R, typename T, typename U, typename P1, typename P2, |
| 2205 typename P3, typename P4, typename A1, typename A2, typename A3, |
| 2206 typename A4, typename X1, typename X2, typename X3, typename X4> |
| 2207 inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> > |
| 2208 CreateFunctor(T** obj, R (__stdcall U::*method)(X1, X2, X3, X4, A1, A2, A3, A4), |
| 2209 const P1& p1, const P2& p2, const P3& p3, const P4& p4) { |
| 2210 MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t = |
| 2211 new MutantLateObjectBind<R, T, R (__stdcall U::*)(X1, X2, X3, X4, A1, A2,
A3, A4), |
| 2212 Tuple4<P1, P2, P3, P4>, Tuple4<A1, A2, A3, A4> > |
| 2213 (obj, method, MakeTuple(p1, p2, p3, p4)); |
| 2214 return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t); |
| 2215 } |
| 2216 #endif // GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING |
1896 #endif // OS_WIN | 2217 #endif // OS_WIN |
1897 | 2218 |
1898 } // namespace testing | 2219 } // namespace testing |
1899 | 2220 |
1900 #endif // TESTING_GMOCK_MUTANT_H_ | 2221 #endif // TESTING_GMOCK_MUTANT_H_ |
OLD | NEW |