tesseract v5.3.3.20231005
testing::internal::DoAllAction< Actions > Struct Template Reference

#include <gmock-actions.h>

Public Member Functions

template<typename R , typename... Args>
 operator Action< R (Args...)>() const
 

Public Attributes

std::tuple< Actions... > actions
 

Detailed Description

template<typename... Actions>
struct testing::internal::DoAllAction< Actions >

Definition at line 1034 of file gmock-actions.h.

Member Function Documentation

◆ operator Action< R()

template<typename... Actions>
template<typename R , typename... Args>
testing::internal::DoAllAction< Actions >::operator Action< R ( Args...  ) const
inline

Definition at line 1049 of file gmock-actions.h.

1049 { // NOLINT
1050 struct Op {
1051 std::vector<Action<void(NonFinalType<Args>...)>> converted;
1052 Action<R(Args...)> last;
1053 R operator()(Args... args) const {
1054 auto tuple_args = std::forward_as_tuple(std::forward<Args>(args)...);
1055 for (auto& a : converted) {
1056 a.Perform(tuple_args);
1057 }
1058 return last.Perform(std::move(tuple_args));
1059 }
1060 };
1061 return Op{Convert<Action<void(NonFinalType<Args>...)>>(
1062 MakeIndexSequence<sizeof...(Actions) - 1>()),
1063 std::get<sizeof...(Actions) - 1>(actions)};
1064 }
LIST last(LIST var_list)
Definition: oldlist.cpp:153
typename MakeIndexSequenceImpl< N >::type MakeIndexSequence
std::tuple< Actions... > actions

Member Data Documentation

◆ actions

template<typename... Actions>
std::tuple<Actions...> testing::internal::DoAllAction< Actions >::actions

Definition at line 1046 of file gmock-actions.h.


The documentation for this struct was generated from the following file: