* * *

|  [ **Overview** ](../../overview-summary.html) |  [ **Package** ](package-summary.html) |  **Class** |  [ **Use** ](class-use/DiagnosingMatcher.html) |  [ **Tree** ](package-tree.html) |  [ **Deprecated** ](../../deprecated-list.html) |  [ **Index** ](../../index-all.html) |  [ **Help** ](../../help-doc.html)  
---|---|---|---|---|---|---|---  
__  
[ **PREV CLASS** ](../../org/hamcrest/Description.NullDescription.html "class in org.hamcrest") [ **NEXT CLASS** ](../../org/hamcrest/EasyMock2Matchers.html "class in org.hamcrest") |  [ **FRAMES** ](../../index.html?org/hamcrest/DiagnosingMatcher.html) [ **NO FRAMES** ](DiagnosingMatcher.html) [ **All Classes** ](../../allclasses-noframe.html)  
SUMMARY: NESTED | FIELD |  CONSTR  |  METHOD  |  DETAIL: FIELD |  CONSTR  |  METHOD   
  
* * *

##  org.hamcrest  
Class DiagnosingMatcher<T>

    
    
    java.lang.Object
      ![extended by ](../../resources/inherit.gif)[org.hamcrest.BaseMatcher](../../org/hamcrest/BaseMatcher.html "class in org.hamcrest")<T>
          ![extended by ](../../resources/inherit.gif)**org.hamcrest.DiagnosingMatcher <T>**
    

**Type Parameters:**      ` T ` \-

**All Implemented Interfaces:**      [ Matcher
](../../org/hamcrest/Matcher.html "interface in org.hamcrest") <T>, [
SelfDescribing ](../../org/hamcrest/SelfDescribing.html "interface in
org.hamcrest")

**Direct Known Subclasses:**      [ AllOf ](../../org/hamcrest/core/AllOf.html
"class in org.hamcrest.core") , [ IsInstanceOf
](../../org/hamcrest/core/IsInstanceOf.html "class in org.hamcrest.core") , [
SamePropertyValuesAs.PropertyMatcher
](../../org/hamcrest/beans/SamePropertyValuesAs.PropertyMatcher.html "class in
org.hamcrest.beans")

* * *
    
    
    public abstract class **DiagnosingMatcher <T>**extends [BaseMatcher](../../org/hamcrest/BaseMatcher.html "class in org.hamcrest")<T>

TODO(ngd): Document.

* * *

**Constructor Summary**  
---  
` **[ DiagnosingMatcher
](../../org/hamcrest/DiagnosingMatcher.html#DiagnosingMatcher\(\)) ** () `  
  
**Method Summary**  
---  
` void ` |  ` **[ describeMismatch ](../../org/hamcrest/DiagnosingMatcher.html#describeMismatch\(java.lang.Object, org.hamcrest.Description\)) ** (java.lang.Object item, [ Description ](../../org/hamcrest/Description.html "interface in org.hamcrest") mismatchDescription) `   
Generate a description of why the matcher has not accepted the item.  
` boolean ` |  ` **[ matches ](../../org/hamcrest/DiagnosingMatcher.html#matches\(java.lang.Object\)) ** (java.lang.Object item) `   
Evaluates the matcher for argument  item  .  
` protected abstract boolean ` |  ` **[ matches ](../../org/hamcrest/DiagnosingMatcher.html#matches\(java.lang.Object, org.hamcrest.Description\)) ** (java.lang.Object item, [ Description ](../../org/hamcrest/Description.html "interface in org.hamcrest") mismatchDescription) `   
  
**Methods inherited from class org.hamcrest.[ BaseMatcher
](../../org/hamcrest/BaseMatcher.html "class in org.hamcrest") **  
---  
` [ _dont_implement_Matcher___instead_extend_BaseMatcher_
](../../org/hamcrest/BaseMatcher.html#_dont_implement_Matcher___instead_extend_BaseMatcher_\(\))
, [ toString ](../../org/hamcrest/BaseMatcher.html#toString\(\)) `  
**Methods inherited from class java.lang.Object**  
---  
` clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait,
wait `  
**Methods inherited from interface org.hamcrest.[ SelfDescribing
](../../org/hamcrest/SelfDescribing.html "interface in org.hamcrest") **  
---  
` [ describeTo
](../../org/hamcrest/SelfDescribing.html#describeTo\(org.hamcrest.Description\))
`  
  
**Constructor Detail**  
---  
  
###  DiagnosingMatcher

    
    
    public **DiagnosingMatcher**()

**Method Detail**  
---  
  
###  matches

    
    
    public final boolean **matches**(java.lang.Object item)

     **Description copied from interface:` [ Matcher ](../../org/hamcrest/Matcher.html#matches\(java.lang.Object\)) ` **
     Evaluates the matcher for argument  item