1882 {
1883 std::string no_match_result;
1884
1885
1886
1887 for (size_t i = 0; i < matchers_.size(); ++i) {
1888 StringMatchResultListener slistener;
1890 *listener << slistener.str();
1891 return true;
1892 } else {
1893 if (no_match_result.empty()) {
1894 no_match_result = slistener.str();
1895 } else {
1896 std::string result = slistener.str();
1897 if (!result.empty()) {
1898 no_match_result += ", and ";
1899 no_match_result += result;
1900 }
1901 }
1902 }
1903 }
1904
1905
1906 *listener << no_match_result;
1907 return false;
1908 }
virtual bool MatchAndExplain(GTEST_REFERENCE_TO_CONST_(T) x, MatchResultListener *listener) const