code: public <P> MatchAccumulator matches(Matcher<?> matcher, P item) {
          if (!matcher.matches(item)) {
              handleMismatch(matcher, item);
          }
  
          appliedMatchers.add(matcher);
          return this;
      }
docs: Invokes the {@link Matcher#matches(java.lang.Object)} method on the supplied matcher against a given target object
  and appends relevant text to the mismatch description if the match fails.
  
  @param matcher the matcher to invoke
  @param item the target object to be matched
  @param <P> the type of item to be matched
  @return this instance, to allow multiple calls to be chained