Exemplo n.º 1
0
auto thrown(T &&thing) {
  return thrown_raw<Exception>(filter(
    [](auto &&e) { return std::string(e.what()); },
    ensure_matcher(std::forward<T>(thing)),
    "what: "
  ));
}
Exemplo n.º 2
0
inline auto exited(T &&thing) {
  auto matcher = ensure_matcher(std::forward<T>(thing));
  return detail::exited_impl<decltype(matcher)>(std::move(matcher));
}
Exemplo n.º 3
0
auto thrown_raw(T &&thing) {
  auto matcher = ensure_matcher(std::forward<T>(thing));
  return detail::thrown_impl<Exception, decltype(matcher)>(std::move(matcher));
}
Exemplo n.º 4
0
auto each(T &&thing) {
  return detail::member_impl<ensure_matcher_t<T>>(
    "each ", true, ensure_matcher(std::forward<T>(thing))
  );
}
Exemplo n.º 5
0
auto member(T &&thing) {
  return detail::member_impl<ensure_matcher_t<T>>(
    "member ", false, ensure_matcher(std::forward<T>(thing))
  );
}
Exemplo n.º 6
0
inline auto tuple(T &&...things) {
  return detail::tuple_impl<ensure_matcher_t<T>...>(
    ensure_matcher(std::forward<T>(things))...
  );
}