Estoy escribiendo documentación para mi gema de rubí usando YARD. En mi joya, tengo algo de código que sigue este patrón rubí común donde se incluye un módulo en una clase, y que el módulo no sólo añade métodos de instancia sino que también añade métodos de clase:PATIO: documentación de los métodos de clase añadidos por un módulo incluido
module Moo
def self.included(klass)
klass.extend ClassMethods
end
module ClassMethods
def hello
puts "hello"
end
end
end
class Foo
include Moo
end
Foo.hello # => class method runs, printing "hello"
Por defecto, yarda generar documentación de la clase Foo que tiene este aspecto:
Creo que esta documentación es inadecuada porque no le dice al usuario que el método Foo.hello
está disponible. Para obtener más información acerca de hello
, el usuario debe hacer clic en Moo
y luego hacer clic en ClassMethods
.
Sería genial tener una lista de todos los métodos de clase e instancia de Foo
en una sola página. ¿Cómo puedo hacer que eso suceda? ¿Debo cambiar el código o puedo agregar una etiqueta para darle a YARD una pista sobre ClassMethods
?
¿Usted intentó utilizar [hacer] (http://rubydoc.info/docs/yard/file/docs/GettingStarted.md#Rendering_Objects__render_____) en la clase incrustada? No sé si funcionaría así o no. –
Gracias por el consejo, pero lo intenté y no pude conseguir que renderizara nada. Avíseme si funciona para usted. –