#ifndef GOOGLEMOCK_INCLUDE_GMOCK_GMOCK_FUNCTION_MOCKER_H_
#define GOOGLEMOCK_INCLUDE_GMOCK_GMOCK_FUNCTION_MOCKER_H_
#include <type_traits>
#include <utility>
#include "gmock/gmock-spec-builders.h"
#include "gmock/internal/gmock-internal-utils.h"
#include "gmock/internal/gmock-pp.h"
namespace testing {
namespace internal {
identity_t;
template <typename Pattern>
struct ThisRefAdjuster { … };
constexpr bool PrefixOf(const char* a, const char* b) { … }
template <int N, int M>
constexpr bool StartsWith(const char (&prefix)[N], const char (&str)[M]) { … }
template <int N, int M>
constexpr bool EndsWith(const char (&suffix)[N], const char (&str)[M]) { … }
template <int N, int M>
constexpr bool Equals(const char (&a)[N], const char (&b)[M]) { … }
template <int N>
constexpr bool ValidateSpec(const char (&spec)[N]) { … }
}
FunctionMocker;
}
#define MOCK_METHOD(...) …
#define GMOCK_INTERNAL_MOCK_METHOD_ARG_1(...) …
#define GMOCK_INTERNAL_MOCK_METHOD_ARG_2(...) …
#define GMOCK_INTERNAL_MOCK_METHOD_ARG_3(_Ret, _MethodName, _Args) …
#define GMOCK_INTERNAL_MOCK_METHOD_ARG_4(_Ret, _MethodName, _Args, _Spec) …
#define GMOCK_INTERNAL_MOCK_METHOD_ARG_5(...) …
#define GMOCK_INTERNAL_MOCK_METHOD_ARG_6(...) …
#define GMOCK_INTERNAL_MOCK_METHOD_ARG_7(...) …
#define GMOCK_INTERNAL_WRONG_ARITY(...) …
#define GMOCK_INTERNAL_ASSERT_PARENTHESIS(_Tuple) …
#define GMOCK_INTERNAL_ASSERT_VALID_SIGNATURE(_N, ...) …
#define GMOCK_INTERNAL_ASSERT_VALID_SPEC(_Spec) …
#define GMOCK_INTERNAL_MOCK_METHOD_IMPL(_N, _MethodName, _Constness, \
_Override, _Final, _NoexceptSpec, \
_CallType, _RefSpec, _Signature) …
#define GMOCK_INTERNAL_EXPAND(...) …
#define GMOCK_INTERNAL_HAS_CONST(_Tuple) …
#define GMOCK_INTERNAL_HAS_OVERRIDE(_Tuple) …
#define GMOCK_INTERNAL_HAS_FINAL(_Tuple) …
#define GMOCK_INTERNAL_GET_NOEXCEPT_SPEC(_Tuple) …
#define GMOCK_INTERNAL_NOEXCEPT_SPEC_IF_NOEXCEPT(_i, _, _elem) …
#define GMOCK_INTERNAL_GET_CALLTYPE_SPEC(_Tuple) …
#define GMOCK_INTERNAL_CALLTYPE_SPEC_IF_CALLTYPE(_i, _, _elem) …
#define GMOCK_INTERNAL_GET_REF_SPEC(_Tuple) …
#define GMOCK_INTERNAL_REF_SPEC_IF_REF(_i, _, _elem) …
#ifdef GMOCK_INTERNAL_STRICT_SPEC_ASSERT
#define GMOCK_INTERNAL_ASSERT_VALID_SPEC_ELEMENT …
#else
#define GMOCK_INTERNAL_ASSERT_VALID_SPEC_ELEMENT(_i, _, _elem) …
#endif
#define GMOCK_INTERNAL_DETECT_CONST(_i, _, _elem) …
#define GMOCK_INTERNAL_DETECT_CONST_I_const …
#define GMOCK_INTERNAL_DETECT_OVERRIDE(_i, _, _elem) …
#define GMOCK_INTERNAL_DETECT_OVERRIDE_I_override …
#define GMOCK_INTERNAL_DETECT_FINAL(_i, _, _elem) …
#define GMOCK_INTERNAL_DETECT_FINAL_I_final …
#define GMOCK_INTERNAL_DETECT_NOEXCEPT(_i, _, _elem) …
#define GMOCK_INTERNAL_DETECT_NOEXCEPT_I_noexcept …
#define GMOCK_INTERNAL_DETECT_REF(_i, _, _elem) …
#define GMOCK_INTERNAL_DETECT_REF_I_ref …
#define GMOCK_INTERNAL_UNPACK_ref(x) …
#define GMOCK_INTERNAL_DETECT_CALLTYPE(_i, _, _elem) …
#define GMOCK_INTERNAL_DETECT_CALLTYPE_I_Calltype …
#define GMOCK_INTERNAL_UNPACK_Calltype(...) …
#define GMOCK_INTERNAL_SIGNATURE(_Ret, _Args) …
#define GMOCK_INTERNAL_GET_TYPE(_i, _, _elem) …
#define GMOCK_INTERNAL_PARAMETER(_i, _Signature, _) …
#define GMOCK_INTERNAL_FORWARD_ARG(_i, _Signature, _) …
#define GMOCK_INTERNAL_MATCHER_PARAMETER(_i, _Signature, _) …
#define GMOCK_INTERNAL_MATCHER_ARGUMENT(_i, _1, _2) …
#define GMOCK_INTERNAL_A_MATCHER_ARGUMENT(_i, _Signature, _) …
#define GMOCK_INTERNAL_ARG_O(_i, ...) …
#define GMOCK_INTERNAL_MATCHER_O(_i, ...) …
#define MOCK_METHOD0(m, ...) …
#define MOCK_METHOD1(m, ...) …
#define MOCK_METHOD2(m, ...) …
#define MOCK_METHOD3(m, ...) …
#define MOCK_METHOD4(m, ...) …
#define MOCK_METHOD5(m, ...) …
#define MOCK_METHOD6(m, ...) …
#define MOCK_METHOD7(m, ...) …
#define MOCK_METHOD8(m, ...) …
#define MOCK_METHOD9(m, ...) …
#define MOCK_METHOD10(m, ...) …
#define MOCK_CONST_METHOD0(m, ...) …
#define MOCK_CONST_METHOD1(m, ...) …
#define MOCK_CONST_METHOD2(m, ...) …
#define MOCK_CONST_METHOD3(m, ...) …
#define MOCK_CONST_METHOD4(m, ...) …
#define MOCK_CONST_METHOD5(m, ...) …
#define MOCK_CONST_METHOD6(m, ...) …
#define MOCK_CONST_METHOD7(m, ...) …
#define MOCK_CONST_METHOD8(m, ...) …
#define MOCK_CONST_METHOD9(m, ...) …
#define MOCK_CONST_METHOD10(m, ...) …
#define MOCK_METHOD0_T(m, ...) …
#define MOCK_METHOD1_T(m, ...) …
#define MOCK_METHOD2_T(m, ...) …
#define MOCK_METHOD3_T(m, ...) …
#define MOCK_METHOD4_T(m, ...) …
#define MOCK_METHOD5_T(m, ...) …
#define MOCK_METHOD6_T(m, ...) …
#define MOCK_METHOD7_T(m, ...) …
#define MOCK_METHOD8_T(m, ...) …
#define MOCK_METHOD9_T(m, ...) …
#define MOCK_METHOD10_T(m, ...) …
#define MOCK_CONST_METHOD0_T(m, ...) …
#define MOCK_CONST_METHOD1_T(m, ...) …
#define MOCK_CONST_METHOD2_T(m, ...) …
#define MOCK_CONST_METHOD3_T(m, ...) …
#define MOCK_CONST_METHOD4_T(m, ...) …
#define MOCK_CONST_METHOD5_T(m, ...) …
#define MOCK_CONST_METHOD6_T(m, ...) …
#define MOCK_CONST_METHOD7_T(m, ...) …
#define MOCK_CONST_METHOD8_T(m, ...) …
#define MOCK_CONST_METHOD9_T(m, ...) …
#define MOCK_CONST_METHOD10_T(m, ...) …
#define MOCK_METHOD0_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD1_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD2_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD3_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD4_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD5_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD6_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD7_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD8_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD9_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD10_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD0_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD1_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD2_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD3_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD4_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD5_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD6_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD7_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD8_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD9_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD10_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD0_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD1_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD2_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD3_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD4_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD5_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD6_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD7_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD8_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD9_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_METHOD10_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD0_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD1_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD2_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD3_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD4_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD5_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD6_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD7_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD8_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD9_T_WITH_CALLTYPE(ct, m, ...) …
#define MOCK_CONST_METHOD10_T_WITH_CALLTYPE(ct, m, ...) …
#define GMOCK_INTERNAL_MOCK_METHODN(constness, ct, Method, args_num, ...) …
#define GMOCK_MOCKER_(arity, constness, Method) …
#endif