code: public static <T, U> Matcher<T> hasFeatureValue(Function<T, U> featureFunction, U featureValue)
  	{
  		return hasFeature(featureFunction, equalTo(featureValue));
  	}
docs: Returns a matcher that matches the specified feature value of an object.
  <p>
  For example:
  <pre>
  assertThat("ham", hasFeatureValue(String::length, 3));
  </pre>
  <p>
  This is equivalent to {@code hasFeature(featureFunction, equalTo(featureValue))}.
  
  @param featureFunction
  a function to extract the feature from the object. The string representation of this function is used
  as the feature name for {@code describeTo} and {@code describeMismatch}.
  @param featureValue
  the feature value to match
  @param <T>
  the type of the object to be matched
  @param <U>
  the type of the feature to be matched
  @return the feature matcher