| Index: testing/gmock_mutant.h
|
| ===================================================================
|
| --- testing/gmock_mutant.h (revision 32501)
|
| +++ testing/gmock_mutant.h (working copy)
|
| @@ -650,6 +650,16 @@
|
| (obj, method, MakeTuple());
|
| return MutantFunctor<R, Tuple0>(t);
|
| }
|
| +
|
| +template <typename R>
|
| +inline MutantFunctor<R, Tuple0>
|
| +CreateFunctor(R (__stdcall *function)()) {
|
| + MutantRunner<R, Tuple0>* t =
|
| + new MutantFunction<R, R (__stdcall *)(),
|
| + Tuple0, Tuple0>
|
| + (function, MakeTuple());
|
| + return MutantFunctor<R, Tuple0>(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U>
|
| inline MutantFunctor<R, Tuple0>
|
| @@ -706,6 +716,16 @@
|
| (obj, method, MakeTuple());
|
| return MutantFunctor<R, Tuple1<A1> >(t);
|
| }
|
| +
|
| +template <typename R, typename A1>
|
| +inline MutantFunctor<R, Tuple1<A1> >
|
| +CreateFunctor(R (__stdcall *function)(A1)) {
|
| + MutantRunner<R, Tuple1<A1> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(A1),
|
| + Tuple0, Tuple1<A1> >
|
| + (function, MakeTuple());
|
| + return MutantFunctor<R, Tuple1<A1> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename A1>
|
| inline MutantFunctor<R, Tuple1<A1> >
|
| @@ -762,6 +782,16 @@
|
| (obj, method, MakeTuple());
|
| return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| }
|
| +
|
| +template <typename R, typename A1, typename A2>
|
| +inline MutantFunctor<R, Tuple2<A1, A2> >
|
| +CreateFunctor(R (__stdcall *function)(A1, A2)) {
|
| + MutantRunner<R, Tuple2<A1, A2> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(A1, A2),
|
| + Tuple0, Tuple2<A1, A2> >
|
| + (function, MakeTuple());
|
| + return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename A1, typename A2>
|
| inline MutantFunctor<R, Tuple2<A1, A2> >
|
| @@ -821,6 +851,16 @@
|
| (obj, method, MakeTuple());
|
| return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| }
|
| +
|
| +template <typename R, typename A1, typename A2, typename A3>
|
| +inline MutantFunctor<R, Tuple3<A1, A2, A3> >
|
| +CreateFunctor(R (__stdcall *function)(A1, A2, A3)) {
|
| + MutantRunner<R, Tuple3<A1, A2, A3> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(A1, A2, A3),
|
| + Tuple0, Tuple3<A1, A2, A3> >
|
| + (function, MakeTuple());
|
| + return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename A1, typename A2,
|
| typename A3>
|
| @@ -881,6 +921,16 @@
|
| (obj, method, MakeTuple());
|
| return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| }
|
| +
|
| +template <typename R, typename A1, typename A2, typename A3, typename A4>
|
| +inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> >
|
| +CreateFunctor(R (__stdcall *function)(A1, A2, A3, A4)) {
|
| + MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(A1, A2, A3, A4),
|
| + Tuple0, Tuple4<A1, A2, A3, A4> >
|
| + (function, MakeTuple());
|
| + return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename A1, typename A2,
|
| typename A3, typename A4>
|
| @@ -938,6 +988,16 @@
|
| (obj, method, MakeTuple(p1));
|
| return MutantFunctor<R, Tuple0>(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename X1>
|
| +inline MutantFunctor<R, Tuple0>
|
| +CreateFunctor(R (__stdcall *function)(X1), const P1& p1) {
|
| + MutantRunner<R, Tuple0>* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1),
|
| + Tuple1<P1>, Tuple0>
|
| + (function, MakeTuple(p1));
|
| + return MutantFunctor<R, Tuple0>(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename X1>
|
| inline MutantFunctor<R, Tuple0>
|
| @@ -997,6 +1057,16 @@
|
| (obj, method, MakeTuple(p1));
|
| return MutantFunctor<R, Tuple1<A1> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename A1, typename X1>
|
| +inline MutantFunctor<R, Tuple1<A1> >
|
| +CreateFunctor(R (__stdcall *function)(X1, A1), const P1& p1) {
|
| + MutantRunner<R, Tuple1<A1> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, A1),
|
| + Tuple1<P1>, Tuple1<A1> >
|
| + (function, MakeTuple(p1));
|
| + return MutantFunctor<R, Tuple1<A1> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename A1,
|
| typename X1>
|
| @@ -1057,6 +1127,16 @@
|
| (obj, method, MakeTuple(p1));
|
| return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename A1, typename A2, typename X1>
|
| +inline MutantFunctor<R, Tuple2<A1, A2> >
|
| +CreateFunctor(R (__stdcall *function)(X1, A1, A2), const P1& p1) {
|
| + MutantRunner<R, Tuple2<A1, A2> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, A1, A2),
|
| + Tuple1<P1>, Tuple2<A1, A2> >
|
| + (function, MakeTuple(p1));
|
| + return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename A1,
|
| typename A2, typename X1>
|
| @@ -1118,6 +1198,17 @@
|
| (obj, method, MakeTuple(p1));
|
| return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename A1, typename A2, typename A3,
|
| + typename X1>
|
| +inline MutantFunctor<R, Tuple3<A1, A2, A3> >
|
| +CreateFunctor(R (__stdcall *function)(X1, A1, A2, A3), const P1& p1) {
|
| + MutantRunner<R, Tuple3<A1, A2, A3> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, A1, A2, A3),
|
| + Tuple1<P1>, Tuple3<A1, A2, A3> >
|
| + (function, MakeTuple(p1));
|
| + return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename A1,
|
| typename A2, typename A3, typename X1>
|
| @@ -1180,6 +1271,17 @@
|
| (obj, method, MakeTuple(p1));
|
| return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename A1, typename A2, typename A3,
|
| + typename A4, typename X1>
|
| +inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> >
|
| +CreateFunctor(R (__stdcall *function)(X1, A1, A2, A3, A4), const P1& p1) {
|
| + MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, A1, A2, A3, A4),
|
| + Tuple1<P1>, Tuple4<A1, A2, A3, A4> >
|
| + (function, MakeTuple(p1));
|
| + return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename A1,
|
| typename A2, typename A3, typename A4, typename X1>
|
| @@ -1242,6 +1344,16 @@
|
| (obj, method, MakeTuple(p1, p2));
|
| return MutantFunctor<R, Tuple0>(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename X1, typename X2>
|
| +inline MutantFunctor<R, Tuple0>
|
| +CreateFunctor(R (__stdcall *function)(X1, X2), const P1& p1, const P2& p2) {
|
| + MutantRunner<R, Tuple0>* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2),
|
| + Tuple2<P1, P2>, Tuple0>
|
| + (function, MakeTuple(p1, p2));
|
| + return MutantFunctor<R, Tuple0>(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename X1, typename X2>
|
| @@ -1305,6 +1417,18 @@
|
| (obj, method, MakeTuple(p1, p2));
|
| return MutantFunctor<R, Tuple1<A1> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename A1, typename X1,
|
| + typename X2>
|
| +inline MutantFunctor<R, Tuple1<A1> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, A1), const P1& p1,
|
| + const P2& p2) {
|
| + MutantRunner<R, Tuple1<A1> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, A1),
|
| + Tuple2<P1, P2>, Tuple1<A1> >
|
| + (function, MakeTuple(p1, p2));
|
| + return MutantFunctor<R, Tuple1<A1> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename A1, typename X1, typename X2>
|
| @@ -1370,6 +1494,18 @@
|
| (obj, method, MakeTuple(p1, p2));
|
| return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename A1, typename A2,
|
| + typename X1, typename X2>
|
| +inline MutantFunctor<R, Tuple2<A1, A2> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, A1, A2), const P1& p1,
|
| + const P2& p2) {
|
| + MutantRunner<R, Tuple2<A1, A2> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, A1, A2),
|
| + Tuple2<P1, P2>, Tuple2<A1, A2> >
|
| + (function, MakeTuple(p1, p2));
|
| + return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename A1, typename A2, typename X1, typename X2>
|
| @@ -1435,6 +1571,18 @@
|
| (obj, method, MakeTuple(p1, p2));
|
| return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename A1, typename A2,
|
| + typename A3, typename X1, typename X2>
|
| +inline MutantFunctor<R, Tuple3<A1, A2, A3> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, A1, A2, A3), const P1& p1,
|
| + const P2& p2) {
|
| + MutantRunner<R, Tuple3<A1, A2, A3> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, A1, A2, A3),
|
| + Tuple2<P1, P2>, Tuple3<A1, A2, A3> >
|
| + (function, MakeTuple(p1, p2));
|
| + return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename A1, typename A2, typename A3, typename X1, typename X2>
|
| @@ -1504,6 +1652,18 @@
|
| (obj, method, MakeTuple(p1, p2));
|
| return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename A1, typename A2,
|
| + typename A3, typename A4, typename X1, typename X2>
|
| +inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, A1, A2, A3, A4), const P1& p1,
|
| + const P2& p2) {
|
| + MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, A1, A2, A3, A4),
|
| + Tuple2<P1, P2>, Tuple4<A1, A2, A3, A4> >
|
| + (function, MakeTuple(p1, p2));
|
| + return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename A1, typename A2, typename A3, typename A4, typename X1,
|
| @@ -1571,6 +1731,18 @@
|
| (obj, method, MakeTuple(p1, p2, p3));
|
| return MutantFunctor<R, Tuple0>(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename X1,
|
| + typename X2, typename X3>
|
| +inline MutantFunctor<R, Tuple0>
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3), const P1& p1, const P2& p2,
|
| + const P3& p3) {
|
| + MutantRunner<R, Tuple0>* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3),
|
| + Tuple3<P1, P2, P3>, Tuple0>
|
| + (function, MakeTuple(p1, p2, p3));
|
| + return MutantFunctor<R, Tuple0>(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename X1, typename X2, typename X3>
|
| @@ -1637,6 +1809,18 @@
|
| (obj, method, MakeTuple(p1, p2, p3));
|
| return MutantFunctor<R, Tuple1<A1> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename A1,
|
| + typename X1, typename X2, typename X3>
|
| +inline MutantFunctor<R, Tuple1<A1> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3, A1), const P1& p1,
|
| + const P2& p2, const P3& p3) {
|
| + MutantRunner<R, Tuple1<A1> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3, A1),
|
| + Tuple3<P1, P2, P3>, Tuple1<A1> >
|
| + (function, MakeTuple(p1, p2, p3));
|
| + return MutantFunctor<R, Tuple1<A1> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename A1, typename X1, typename X2, typename X3>
|
| @@ -1706,6 +1890,18 @@
|
| (obj, method, MakeTuple(p1, p2, p3));
|
| return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename A1,
|
| + typename A2, typename X1, typename X2, typename X3>
|
| +inline MutantFunctor<R, Tuple2<A1, A2> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3, A1, A2), const P1& p1,
|
| + const P2& p2, const P3& p3) {
|
| + MutantRunner<R, Tuple2<A1, A2> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3, A1, A2),
|
| + Tuple3<P1, P2, P3>, Tuple2<A1, A2> >
|
| + (function, MakeTuple(p1, p2, p3));
|
| + return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename A1, typename A2, typename X1, typename X2,
|
| @@ -1776,6 +1972,18 @@
|
| (obj, method, MakeTuple(p1, p2, p3));
|
| return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename A1,
|
| + typename A2, typename A3, typename X1, typename X2, typename X3>
|
| +inline MutantFunctor<R, Tuple3<A1, A2, A3> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3, A1, A2, A3), const P1& p1,
|
| + const P2& p2, const P3& p3) {
|
| + MutantRunner<R, Tuple3<A1, A2, A3> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3, A1, A2, A3),
|
| + Tuple3<P1, P2, P3>, Tuple3<A1, A2, A3> >
|
| + (function, MakeTuple(p1, p2, p3));
|
| + return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename A1, typename A2, typename A3, typename X1,
|
| @@ -1847,6 +2055,19 @@
|
| (obj, method, MakeTuple(p1, p2, p3));
|
| return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename A1,
|
| + typename A2, typename A3, typename A4, typename X1, typename X2,
|
| + typename X3>
|
| +inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3, A1, A2, A3, A4), const P1& p1,
|
| + const P2& p2, const P3& p3) {
|
| + MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3, A1, A2, A3, A4),
|
| + Tuple3<P1, P2, P3>, Tuple4<A1, A2, A3, A4> >
|
| + (function, MakeTuple(p1, p2, p3));
|
| + return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename A1, typename A2, typename A3, typename A4,
|
| @@ -1917,6 +2138,18 @@
|
| (obj, method, MakeTuple(p1, p2, p3, p4));
|
| return MutantFunctor<R, Tuple0>(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename P4,
|
| + typename X1, typename X2, typename X3, typename X4>
|
| +inline MutantFunctor<R, Tuple0>
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3, X4), const P1& p1,
|
| + const P2& p2, const P3& p3, const P4& p4) {
|
| + MutantRunner<R, Tuple0>* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3, X4),
|
| + Tuple4<P1, P2, P3, P4>, Tuple0>
|
| + (function, MakeTuple(p1, p2, p3, p4));
|
| + return MutantFunctor<R, Tuple0>(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename P4, typename X1, typename X2, typename X3,
|
| @@ -1987,6 +2220,18 @@
|
| (obj, method, MakeTuple(p1, p2, p3, p4));
|
| return MutantFunctor<R, Tuple1<A1> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename P4,
|
| + typename A1, typename X1, typename X2, typename X3, typename X4>
|
| +inline MutantFunctor<R, Tuple1<A1> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3, X4, A1), const P1& p1,
|
| + const P2& p2, const P3& p3, const P4& p4) {
|
| + MutantRunner<R, Tuple1<A1> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3, X4, A1),
|
| + Tuple4<P1, P2, P3, P4>, Tuple1<A1> >
|
| + (function, MakeTuple(p1, p2, p3, p4));
|
| + return MutantFunctor<R, Tuple1<A1> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename P4, typename A1, typename X1, typename X2,
|
| @@ -2058,6 +2303,19 @@
|
| (obj, method, MakeTuple(p1, p2, p3, p4));
|
| return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename P4,
|
| + typename A1, typename A2, typename X1, typename X2, typename X3,
|
| + typename X4>
|
| +inline MutantFunctor<R, Tuple2<A1, A2> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3, X4, A1, A2), const P1& p1,
|
| + const P2& p2, const P3& p3, const P4& p4) {
|
| + MutantRunner<R, Tuple2<A1, A2> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3, X4, A1, A2),
|
| + Tuple4<P1, P2, P3, P4>, Tuple2<A1, A2> >
|
| + (function, MakeTuple(p1, p2, p3, p4));
|
| + return MutantFunctor<R, Tuple2<A1, A2> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename P4, typename A1, typename A2, typename X1,
|
| @@ -2129,6 +2387,19 @@
|
| (obj, method, MakeTuple(p1, p2, p3, p4));
|
| return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename P4,
|
| + typename A1, typename A2, typename A3, typename X1, typename X2,
|
| + typename X3, typename X4>
|
| +inline MutantFunctor<R, Tuple3<A1, A2, A3> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3, X4, A1, A2, A3), const P1& p1,
|
| + const P2& p2, const P3& p3, const P4& p4) {
|
| + MutantRunner<R, Tuple3<A1, A2, A3> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3, X4, A1, A2, A3),
|
| + Tuple4<P1, P2, P3, P4>, Tuple3<A1, A2, A3> >
|
| + (function, MakeTuple(p1, p2, p3, p4));
|
| + return MutantFunctor<R, Tuple3<A1, A2, A3> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename P4, typename A1, typename A2, typename A3,
|
| @@ -2200,6 +2471,19 @@
|
| (obj, method, MakeTuple(p1, p2, p3, p4));
|
| return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| }
|
| +
|
| +template <typename R, typename P1, typename P2, typename P3, typename P4,
|
| + typename A1, typename A2, typename A3, typename A4, typename X1,
|
| + typename X2, typename X3, typename X4>
|
| +inline MutantFunctor<R, Tuple4<A1, A2, A3, A4> >
|
| +CreateFunctor(R (__stdcall *function)(X1, X2, X3, X4, A1, A2, A3, A4),
|
| + const P1& p1, const P2& p2, const P3& p3, const P4& p4) {
|
| + MutantRunner<R, Tuple4<A1, A2, A3, A4> >* t =
|
| + new MutantFunction<R, R (__stdcall *)(X1, X2, X3, X4, A1, A2, A3, A4),
|
| + Tuple4<P1, P2, P3, P4>, Tuple4<A1, A2, A3, A4> >
|
| + (function, MakeTuple(p1, p2, p3, p4));
|
| + return MutantFunctor<R, Tuple4<A1, A2, A3, A4> >(t);
|
| +}
|
| #ifdef GMOCK_MUTANT_INCLUDE_LATE_OBJECT_BINDING
|
| template <typename R, typename T, typename U, typename P1, typename P2,
|
| typename P3, typename P4, typename A1, typename A2, typename A3,
|
|
|