Support for Java classes in JRuby

Aberta
#1,327 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
32/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
java, ruby
Domínio
documentation

Direção de pesquisa

Comece revisando o patch vinculado e o tratamento existente de ri no RDoc. Determine como a opção --java/-j e a reflexão do runtime do JRuby poderiam ser integradas sem um plugin. Considera-se concluído quando o JRuby puder exibir métodos de classes Java e tipos de argumentos por meio do ri, com cobertura para o novo comportamento.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

I was recently reminded of a patch I threw together 15 years ago to support documenting Java classes with ri in JRuby. Today I found that patch:

https://gist.github.com/headius/276803

This is a very loose concept based on rdoc from 2010, but the logic should still work today. When the --java or -j flag is passed, instead of using the usual stores for docs, we use runtime reflection to load the class and method(s) in question. The compiled code available at runtime does not have text documentation, but we can still display the method names and argument types, which would be a big help for JRuby users.

As this is very specific to JRuby, I wanted to ask how we might get an updated version of this patch integrated. I could not see a good way to do a JRuby-specific plugin, but I have not dug very deep.

It could also simply be added as a feature that is only available when running on JRuby.

An example of the output:

~/projects/jruby ➔ ri -j java.lang.Object
------------------------------------------------ Class: java.lang.Object
     (no description...)
------------------------------------------------------------------------


Instance methods:
-----------------
     equals, getClass, hashCode, notify, notifyAll, toString, wait

~~/projects/jruby ➔ ri -j java.lang.String.split
------------------------------------------------- java.lang.String#split
     split(java.lang.String,int) => java.lang.String[]
     split(java.lang.String) => java.lang.String[]
------------------------------------------------------------------------
     (no description...)
Linguagem predominante
Ruby
Estrelas
928
Forks
470
Merge médio
2d 4min
PRs com merge (30d)
13

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de ruby/rdoc

Todas as issues de ruby/rdoc

Issues semelhantes

Mais issues de Ruby

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.