37 #ifndef GMOCK_INCLUDE_GMOCK_GMOCK_MORE_ACTIONS_H_
38 #define GMOCK_INCLUDE_GMOCK_GMOCK_MORE_ACTIONS_H_
41 #include <type_traits>
52 template<
typename InputIterator,
typename OutputIterator>
55 OutputIterator output) {
56 for (; first != last; ++first, ++output) {
72 # pragma warning(push)
73 # pragma warning(disable:4100)
78 HAS_1_TEMPLATE_PARAMS(
int, k),
79 AND_0_VALUE_PARAMS()) {
80 return ::std::get<k>(args);
86 HAS_1_TEMPLATE_PARAMS(
int, k),
87 AND_1_VALUE_PARAMS(pointer)) {
88 *pointer = ::std::get<k>(args);
94 HAS_1_TEMPLATE_PARAMS(
int, k),
95 AND_1_VALUE_PARAMS(pointer)) {
96 *pointer = *::std::get<k>(args);
102 HAS_1_TEMPLATE_PARAMS(
int, k),
103 AND_1_VALUE_PARAMS(
value)) {
104 typedef typename ::std::tuple_element<k, args_type>::type argk_type;
109 SetArgReferee_must_be_used_with_a_reference_argument);
110 ::std::get<k>(args) =
value;
119 HAS_1_TEMPLATE_PARAMS(
int, k),
120 AND_2_VALUE_PARAMS(first, last)) {
132 HAS_1_TEMPLATE_PARAMS(
int, k),
133 AND_0_VALUE_PARAMS()) {
134 delete ::std::get<k>(args);
138 ACTION_P(ReturnPointee, pointer) {
return *pointer; }
142 #if GTEST_HAS_EXCEPTIONS
146 # pragma warning(push) // Saves the current warning state.
147 # pragma warning(disable:4702) // Temporarily disables warning 4702.
149 ACTION_P(Throw, exception) {
throw exception; }
151 # pragma warning(pop) // Restores the warning state.
154 #endif // GTEST_HAS_EXCEPTIONS
157 # pragma warning(pop)
162 #endif // GMOCK_INCLUDE_GMOCK_GMOCK_MORE_ACTIONS_H_
#define GTEST_COMPILE_ASSERT_(expr, msg)
ACTION_TEMPLATE(InvokeArgument, HAS_1_TEMPLATE_PARAMS(int, k), AND_0_VALUE_PARAMS())
OutputIterator CopyElements(InputIterator first, InputIterator last, OutputIterator output)
ADvari & copy(const IndepADvar &x)
ACTION_P(ReturnPointee, pointer)