Lines Matching refs:internal

51 #include "gmock/internal/gmock-internal-utils.h"
52 #include "gmock/internal/gmock-port.h"
189 internal::string str() const { return ss_.str(); }
200 namespace internal {
248 // An internal class for implementing Matcher<T>, which will derive
308 ::testing::internal::linked_ptr<const MatcherInterface<T> > impl_;
311 } // namespace internal
319 class Matcher : public internal::MatcherBase<T> {
328 : internal::MatcherBase<T>(impl) {}
339 class GTEST_API_ Matcher<const internal::string&>
340 : public internal::MatcherBase<const internal::string&> {
344 explicit Matcher(const MatcherInterface<const internal::string&>* impl)
345 : internal::MatcherBase<const internal::string&>(impl) {}
349 Matcher(const internal::string& s); // NOLINT
356 class GTEST_API_ Matcher<internal::string>
357 : public internal::MatcherBase<internal::string> {
361 explicit Matcher(const MatcherInterface<internal::string>* impl)
362 : internal::MatcherBase<internal::string>(impl) {}
366 Matcher(const internal::string& s); // NOLINT
378 : public internal::MatcherBase<const StringPiece&> {
383 : internal::MatcherBase<const StringPiece&>(impl) {}
387 Matcher(const internal::string& s); // NOLINT
398 : public internal::MatcherBase<StringPiece> {
403 : internal::MatcherBase<StringPiece>(impl) {}
407 Matcher(const internal::string& s); // NOLINT
500 // Anything inside the 'internal' namespace IS INTERNAL IMPLEMENTATION
502 namespace internal {
534 internal::ImplicitlyConvertible<M, Matcher<T> >::value>());
603 } // namespace internal
611 return internal::MatcherCastImpl<T, M>::Cast(matcher);
628 return internal::MatcherCastImpl<T, M>::Cast(polymorphic_matcher_or_value);
643 GTEST_COMPILE_ASSERT_((internal::ImplicitlyConvertible<T, U>::value),
648 internal::is_reference<T>::value || !internal::is_reference<U>::value,
654 const bool kTIsOther = GMOCK_KIND_OF_(RawT) == internal::kOther;
655 const bool kUIsOther = GMOCK_KIND_OF_(RawU) == internal::kOther;
658 (internal::LosslessArithmeticConvertible<RawT, RawU>::value),
673 // Anything inside the 'internal' namespace IS INTERNAL IMPLEMENTATION
675 namespace internal {
678 inline void PrintIfNotEmpty(const internal::string& explanation,
723 // An internal helper class for doing compile-time loop on a tuple's
767 internal::UniversalPrint(value, os);
819 // TransformTupleValuesHelper hides the internal machinery that
1338 return s != NULL && MatchAndExplain(internal::string(s), listener);
1341 // Matches anything that can convert to internal::string.
1343 // This is a template, not just a plain function with const internal::string&,
1348 const internal::string& s2(s);
1356 UniversalPrinter<internal::string>::Print(regex_->pattern(), os);
1362 UniversalPrinter<internal::string>::Print(regex_->pattern(), os);
1366 const internal::linked_ptr<const RE> regex_;
1529 const internal::string s1 = listener1.str();
1530 const internal::string s2 = listener2.str();
1701 const internal::string s1 = listener1.str();
1702 const internal::string s2 = listener2.str();
1836 explicit PredicateFormatterFromMatcher(M m) : matcher_(internal::move(m)) {}
1880 return PredicateFormatterFromMatcher<M>(internal::move(matcher));
2200 typename ::testing::internal::
2261 typename ::testing::internal::
2277 // https://connect.microsoft.com/VisualStudio/feedback/details/1106363/internal-compiler-error-with-analyze-due-to-failure-to-infer-move
2413 typedef internal::StlContainerView<
2465 typedef internal::StlContainerView<
2523 typedef internal::StlContainerView<Container> View;
2551 typedef internal::StlContainerView<GTEST_REMOVE_CONST_(LhsContainer)>
2565 if (internal::ArrayAwareFind(expected_.begin(), expected_.end(), *it) ==
2581 if (internal::ArrayAwareFind(
2627 typedef internal::StlContainerView<
2695 typedef internal::StlContainerView<RhsContainer> RhsView;
2717 typedef internal::StlContainerView<
2956 const internal::string explanation = inner_listener.str();
3061 void ExplainSuccess(const internal::string& first_explanation,
3062 const internal::string& second_explanation,
3111 typedef internal::StlContainerView<RawContainer> View;
3169 ::std::vector<internal::string> explanations(count());
3228 const internal::string& s = explanations[i];
3350 typedef internal::StlContainerView<RawContainer> View;
3459 typedef typename internal::StlContainerView<RawContainer>::type View;
3484 typedef typename internal::StlContainerView<RawContainer>::type View;
3626 } // namespace internal
3644 inline internal::ElementsAreArrayMatcher<
3648 return internal::ElementsAreArrayMatcher<T>(first, last);
3652 inline internal::ElementsAreArrayMatcher<T> ElementsAreArray(
3658 inline internal::ElementsAreArrayMatcher<T> ElementsAreArray(
3664 inline internal::ElementsAreArrayMatcher<typename Container::value_type>
3671 inline internal::ElementsAreArrayMatcher<T>
3686 inline internal::UnorderedElementsAreArrayMatcher<
3690 return internal::UnorderedElementsAreArrayMatcher<T>(first, last);
3694 inline internal::UnorderedElementsAreArrayMatcher<T>
3700 inline internal::UnorderedElementsAreArrayMatcher<T>
3706 inline internal::UnorderedElementsAreArrayMatcher<
3714 inline internal::UnorderedElementsAreArrayMatcher<T>
3729 const internal::AnythingMatcher _ = {};
3732 inline Matcher<T> A() { return MakeMatcher(new internal::AnyMatcherImpl<T>()); }
3742 inline internal::EqMatcher<T> Eq(T x) { return internal::EqMatcher<T>(x); }
3766 inline internal::GeMatcher<Rhs> Ge(Rhs x) {
3767 return internal::GeMatcher<Rhs>(x);
3772 inline internal::GtMatcher<Rhs> Gt(Rhs x) {
3773 return internal::GtMatcher<Rhs>(x);
3778 inline internal::LeMatcher<Rhs> Le(Rhs x) {
3779 return internal::LeMatcher<Rhs>(x);
3784 inline internal::LtMatcher<Rhs> Lt(Rhs x) {
3785 return internal::LtMatcher<Rhs>(x);
3790 inline internal::NeMatcher<Rhs> Ne(Rhs x) {
3791 return internal::NeMatcher<Rhs>(x);
3795 inline PolymorphicMatcher<internal::IsNullMatcher > IsNull() {
3796 return MakePolymorphicMatcher(internal::IsNullMatcher());
3802 inline PolymorphicMatcher<internal::NotNullMatcher > NotNull() {
3803 return MakePolymorphicMatcher(internal::NotNullMatcher());
3809 inline internal::RefMatcher<T&> Ref(T& x) { // NOLINT
3810 return internal::RefMatcher<T&>(x);
3815 inline internal::FloatingEqMatcher<double> DoubleEq(double rhs) {
3816 return internal::FloatingEqMatcher<double>(rhs, false);
3821 inline internal::FloatingEqMatcher<double> NanSensitiveDoubleEq(double rhs) {
3822 return internal::FloatingEqMatcher<double>(rhs, true);
3828 inline internal::FloatingEqMatcher<double> DoubleNear(
3830 return internal::FloatingEqMatcher<double>(rhs, false, max_abs_error);
3836 inline internal::FloatingEqMatcher<double> NanSensitiveDoubleNear(
3838 return internal::FloatingEqMatcher<double>(rhs, true, max_abs_error);
3843 inline internal::FloatingEqMatcher<float> FloatEq(float rhs) {
3844 return internal::FloatingEqMatcher<float>(rhs, false);
3849 inline internal::FloatingEqMatcher<float> NanSensitiveFloatEq(float rhs) {
3850 return internal::FloatingEqMatcher<float>(rhs, true);
3856 inline internal::FloatingEqMatcher<float> FloatNear(
3858 return internal::FloatingEqMatcher<float>(rhs, false, max_abs_error);
3864 inline internal::FloatingEqMatcher<float> NanSensitiveFloatNear(
3866 return internal::FloatingEqMatcher<float>(rhs, true, max_abs_error);
3872 inline internal::PointeeMatcher<InnerMatcher> Pointee(
3874 return internal::PointeeMatcher<InnerMatcher>(inner_matcher);
3884 inline PolymorphicMatcher<internal::WhenDynamicCastToMatcher<To> >
3887 internal::WhenDynamicCastToMatcher<To>(inner_matcher));
3896 internal::FieldMatcher<Class, FieldType> > Field(
3899 internal::FieldMatcher<Class, FieldType>(
3913 internal::PropertyMatcher<Class, PropertyType> > Property(
3916 internal::PropertyMatcher<Class, PropertyType>(
3939 internal::ResultOfMatcher<Callable> ResultOf(
3941 return internal::ResultOfMatcher<Callable>(
3943 MatcherCast<typename internal::CallableTraits<Callable>::ResultType>(
3954 inline PolymorphicMatcher<internal::StrEqualityMatcher<internal::string> >
3955 StrEq(const internal::string& str) {
3956 return MakePolymorphicMatcher(internal::StrEqualityMatcher<internal::string>(
3961 inline PolymorphicMatcher<internal::StrEqualityMatcher<internal::string> >
3962 StrNe(const internal::string& str) {
3963 return MakePolymorphicMatcher(internal::StrEqualityMatcher<internal::string>(
3968 inline PolymorphicMatcher<internal::StrEqualityMatcher<internal::string> >
3969 StrCaseEq(const internal::string& str) {
3970 return MakePolymorphicMatcher(internal::StrEqualityMatcher<internal::string>(
3975 inline PolymorphicMatcher<internal::StrEqualityMatcher<internal::string> >
3976 StrCaseNe(const internal::string& str) {
3977 return MakePolymorphicMatcher(internal::StrEqualityMatcher<internal::string>(
3983 inline PolymorphicMatcher<internal::HasSubstrMatcher<internal::string> >
3984 HasSubstr(const internal::string& substring) {
3985 return MakePolymorphicMatcher(internal::HasSubstrMatcher<internal::string>(
3990 inline PolymorphicMatcher<internal::StartsWithMatcher<internal::string> >
3991 StartsWith(const internal::string& prefix) {
3992 return MakePolymorphicMatcher(internal::StartsWithMatcher<internal::string>(
3997 inline PolymorphicMatcher<internal::EndsWithMatcher<internal::string> >
3998 EndsWith(const internal::string& suffix) {
3999 return MakePolymorphicMatcher(internal::EndsWithMatcher<internal::string>(
4005 inline PolymorphicMatcher<internal::MatchesRegexMatcher> MatchesRegex(
4006 const internal::RE* regex) {
4007 return MakePolymorphicMatcher(internal::MatchesRegexMatcher(regex, true));
4009 inline PolymorphicMatcher<internal::MatchesRegexMatcher> MatchesRegex(
4010 const internal::string& regex) {
4011 return MatchesRegex(new internal::RE(regex));
4016 inline PolymorphicMatcher<internal::MatchesRegexMatcher> ContainsRegex(
4017 const internal::RE* regex) {
4018 return MakePolymorphicMatcher(internal::MatchesRegexMatcher(regex, false));
4020 inline PolymorphicMatcher<internal::MatchesRegexMatcher> ContainsRegex(
4021 const internal::string& regex) {
4022 return ContainsRegex(new internal::RE(regex));
4029 inline PolymorphicMatcher<internal::StrEqualityMatcher<internal::wstring> >
4030 StrEq(const internal::wstring& str) {
4031 return MakePolymorphicMatcher(internal::StrEqualityMatcher<internal::wstring>(
4036 inline PolymorphicMatcher<internal::StrEqualityMatcher<internal::wstring> >
4037 StrNe(const internal::wstring& str) {
4038 return MakePolymorphicMatcher(internal::StrEqualityMatcher<internal::wstring>(
4043 inline PolymorphicMatcher<internal::StrEqualityMatcher<internal::wstring> >
4044 StrCaseEq(const internal::wstring& str) {
4045 return MakePolymorphicMatcher(internal::StrEqualityMatcher<internal::wstring>(
4050 inline PolymorphicMatcher<internal::StrEqualityMatcher<internal::wstring> >
4051 StrCaseNe(const internal::wstring& str) {
4052 return MakePolymorphicMatcher(internal::StrEqualityMatcher<internal::wstring>(
4058 inline PolymorphicMatcher<internal::HasSubstrMatcher<internal::wstring> >
4059 HasSubstr(const internal::wstring& substring) {
4060 return MakePolymorphicMatcher(internal::HasSubstrMatcher<internal::wstring>(
4065 inline PolymorphicMatcher<internal::StartsWithMatcher<internal::wstring> >
4066 StartsWith(const internal::wstring& prefix) {
4067 return MakePolymorphicMatcher(internal::StartsWithMatcher<internal::wstring>(
4072 inline PolymorphicMatcher<internal::EndsWithMatcher<internal::wstring> >
4073 EndsWith(const internal::wstring& suffix) {
4074 return MakePolymorphicMatcher(internal::EndsWithMatcher<internal::wstring>(
4082 inline internal::Eq2Matcher Eq() { return internal::Eq2Matcher(); }
4086 inline internal::Ge2Matcher Ge() { return internal::Ge2Matcher(); }
4090 inline internal::Gt2Matcher Gt() { return internal::Gt2Matcher(); }
4094 inline internal::Le2Matcher Le() { return internal::Le2Matcher(); }
4098 inline internal::Lt2Matcher Lt() { return internal::Lt2Matcher(); }
4102 inline internal::Ne2Matcher Ne() { return internal::Ne2Matcher(); }
4107 inline internal::NotMatcher<InnerMatcher> Not(InnerMatcher m) {
4108 return internal::NotMatcher<InnerMatcher>(m);
4115 inline PolymorphicMatcher<internal::TrulyMatcher<Predicate> >
4117 return MakePolymorphicMatcher(internal::TrulyMatcher<Predicate>(pred));
4127 inline internal::SizeIsMatcher<SizeMatcher>
4129 return internal::SizeIsMatcher<SizeMatcher>(size_matcher);
4138 inline internal::BeginEndDistanceIsMatcher<DistanceMatcher>
4140 return internal::BeginEndDistanceIsMatcher<DistanceMatcher>(distance_matcher);
4148 inline PolymorphicMatcher<internal::ContainerEqMatcher< // NOLINT
4155 internal::ContainerEqMatcher<RawContainer>(rhs));
4161 inline internal::WhenSortedByMatcher<Comparator, ContainerMatcher>
4164 return internal::WhenSortedByMatcher<Comparator, ContainerMatcher>(
4171 inline internal::WhenSortedByMatcher<internal::LessComparator, ContainerMatcher>
4174 internal::WhenSortedByMatcher<internal::LessComparator, ContainerMatcher>(
4175 internal::LessComparator(), container_matcher);
4185 inline internal::PointwiseMatcher<TupleMatcher,
4192 return internal::PointwiseMatcher<TupleMatcher, RawContainer>(
4200 inline internal::PointwiseMatcher<TupleMatcher, std::vector<T> > Pointwise(
4219 inline internal::UnorderedElementsAreArrayMatcher<
4220 typename internal::BoundSecondMatcher<
4221 Tuple2Matcher, typename internal::StlContainerView<GTEST_REMOVE_CONST_(
4232 typedef typename internal::StlContainerView<RawRhsContainer> RhsView;
4239 ::std::vector<internal::BoundSecondMatcher<Tuple2Matcher, Second> > matchers;
4243 internal::MatcherBindSecond(tuple2_matcher, *it));
4254 inline internal::UnorderedElementsAreArrayMatcher<
4255 typename internal::BoundSecondMatcher<Tuple2Matcher, T> >
4282 inline internal::ContainsMatcher<M> Contains(M matcher) {
4283 return internal::ContainsMatcher<M>(matcher);
4314 inline internal::EachMatcher<M> Each(M matcher) {
4315 return internal::EachMatcher<M>(matcher);
4322 inline internal::KeyMatcher<M> Key(M inner_matcher) {
4323 return internal::KeyMatcher<M>(inner_matcher);
4332 inline internal::PairMatcher<FirstMatcher, SecondMatcher>
4334 return internal::PairMatcher<FirstMatcher, SecondMatcher>(
4341 inline internal::MatcherAsPredicate<M> Matches(M matcher) {
4342 return internal::MatcherAsPredicate<M>(matcher);
4363 inline internal::AllOfMatcher<Args...> AllOf(const Args&... matchers) {
4364 return internal::AllOfMatcher<Args...>(matchers...);
4368 inline internal::AnyOfMatcher<Args...> AnyOf(const Args&... matchers) {
4369 return internal::AnyOfMatcher<Args...>(matchers...);
4389 ::testing::internal::MakePredicateFormatterFromMatcher(matcher), value)
4391 ::testing::internal::MakePredicateFormatterFromMatcher(matcher), value)
4398 #include "gmock/internal/custom/gmock-matchers.h"