code: public static Predicate<Element> shouldGenerateMatcher() {
          return element -> ElementParentsIterable.stream(element)
                  .noneMatch(next -> nonNull(next.getAnnotation(DoNotGenerateMatcher.class)));
      }
docs: Walks through parent chain and if any contains
  {@link DoNotGenerateMatcher} annotation, skips this element
  
  @return predicate to help filter fields for matcher generation