code: public static Matcher not(final Matcher matcher) {
      return new Matcher() {
        @Override public boolean matches(Node node, NodeMetadata metadata) {
          return !matcher.matches(node, metadata);
        }
      };
    }
docs: Returns a Matcher that matches the opposite of the provided matcher.