¿Cómo puedo hacer referencia a un campo de instancia al escribir documentación?¿Cómo hacer referencia a los métodos de instancia en la documentación?
consideran este código:
object Foo {
val foo = 42
}
class Foo {
val foo = 42
}
En Java, se podría usar Foo.foo
para el método de "estática" y Foo#foo
para el método de instancia.
Pero en Scala #
ya se da por tipos dependientes de la trayectoria y
class Foo {
class foo
def foo = 42
}
es código legal, por lo que no puede hacer referencia a ella de forma inequívoca.
¿Hay alguna convención sobre cómo debería ser esto?
Uso # para este propósito, también. – retronym
El problema principal es ¿cómo debería ser una URL correspondiente que enlaza con ScalaDoc? No hay forma de insertar "contexto" en una URL ... excepto elegir un símbolo inequívoco. Y si ya tenemos que inventar un símbolo, podemos usarlo en la documentación también. – soc
@soc Bueno, pero ¿a qué se refiere 'Foo.foo' en ScalaDoc? Para el 'tipo foo' en' objeto Foo', o para 'def foo' en' objeto Foo'? Este problema ya existe Dado que solo ocurre si las personas son tan groseras como para nombrar miembros tipo y no tipo con el mismo identificador, digo que lo ignoramos o resolvemos para ambos. Además ... iirc, '#' en una URL tiene un significado especial, por lo que no podemos usarlo en las URL, ¿o sí? –