Lines Matching defs:matcher
32 // This file implements just enough of the matcher interface to allow
33 // EXPECT_DEATH and friends to accept a matcher argument.
67 // To implement a matcher Foo for type T, define:
68 // 1. a class FooMatcherMatcher that implements the matcher interface:
98 // of the match result. A matcher's MatchAndExplain() method can use
113 // matcher.
118 // Describes this matcher to an ostream. The function should print
120 // matcher should have. The subject of the verb phrase is the value
122 // matcher prints "is greater than 7".
125 // Describes the negation of this matcher to an ostream. For
126 // example, if the description of this matcher is "is greater than
129 // MatcherInterface, but it is highly advised so that your matcher
138 // The implementation of a matcher.
142 // Returns true if and only if the matcher matches x; also explains the
146 // MatchAndExplain() method of the Pointee(...) matcher should
152 // print-out of x and the matcher's description. Whether the match
155 // when the match succeeds (e.g. when the matcher is used inside
158 // For example, a "has at least 10 elements" matcher should explain
161 // "is empty" matcher probably only needs to explain what the actual
165 // You should override this method when defining a new matcher.
168 // that 'listener' is not NULL. This helps to simplify a matcher's
230 // Returns true if and only if the matcher matches x; also explains the
237 // Returns true if and only if this matcher matches x.
243 // Describes this matcher to an ostream.
249 // Describes the negation of this matcher to an ostream.
255 // Explains why x matches, or doesn't match, the matcher.
261 // Returns the describer for this matcher object; retains ownership
263 // this matcher object is alive.
272 // Constructs a matcher from its implementation.
465 // Constructs a null matcher. Needed for storing Matcher objects in STL
466 // containers. A default-constructed matcher is not yet initialized. You
470 // Constructs a matcher from its implementation.
492 // matcher is expected.
542 // matcher is expected.
597 // Prints a matcher in a human-readable format.
599 std::ostream& operator<<(std::ostream& os, const Matcher<T>& matcher) {
600 matcher.DescribeTo(&os);
605 // polymorphic matcher (i.e. a matcher that can match values of more
608 // To define a polymorphic matcher, a user should provide an Impl
621 // Returns a mutable reference to the underlying matcher
625 // Returns an immutable reference to the underlying matcher
657 // Creates a matcher from its implementation.
668 // Creates a polymorphic matcher from its implementation. This is
681 // Implements a matcher that compares a given value with a
685 // The matcher defined here is polymorphic (for example, Eq(5) can be
835 // The matcher takes ownership of 'regex'.
847 // The matcher takes ownership of 'regex'.
858 // Creates a polymorphic matcher that matches anything equal to x.
867 // matcher matches any value that's equal to 'value'.
873 // Creates a monomorphic matcher that matches anything with type Lhs
890 // Creates a polymorphic matcher that matches anything >= x.
896 // Creates a polymorphic matcher that matches anything > x.
902 // Creates a polymorphic matcher that matches anything <= x.
908 // Creates a polymorphic matcher that matches anything < x.
914 // Creates a polymorphic matcher that matches anything != x.