docs: public static <S extends T, T extends Tree> Matcher<T> toType(
        final Class<S> type, final Matcher<? super S> matcher) {
      return new Matcher<T>() {
        @Override
        public boolean matches(T tree, VisitorState state) {
          return type.isInstance(tree) && matcher.matches(type.cast(tree), state);
        }
      };
    }