code: public static Matcher<ContextElement> identifier(final Matcher<Class<?>> matcher) {
      return new Matcher<ContextElement>() {
  
        @Override
        protected boolean matchesSafely(ContextElement t) {
          return matcher.matches(t.identifier());
        }
  
        @Override
        public String toString() {
          return "an identifier that is " + matcher;
        }
      };
  
    }
docs: Returns a matcher that matches context elements whose {@link ContextElement#identifier()}
  match against the supplied matcher.
  
  @param matcher {@code Class<?>} matcher
  @return a {@code ContextElement} matcher