scala scaladoc

¿Cómo buscar métodos en Scaladoc, globalmente?



(3)

¿Existe alguna posibilidad de que pueda buscar un método en una clase, rasgo u objeto a través de scala doc, globalmente? Ejemplo: tengo un nombre de método y no sé a qué clase pertenece, por lo que puedo escribirlo en alguna búsqueda de scaladoc y me mostrará las clases que contienen un método con el nombre dado. (PD: Habría agregado la etiqueta scaladoc, pero aparentemente no soy digno ...)


No creo que haya un método general incorporado. Entonces, si el scaladoc está en línea, uso a mi amigo Google. Por ejemplo, para buscar un método llamado left en la API de scala, uso la consulta:

"def left" site:http://www.scala-lang.org/api/current/

Si está en mi disco duro utilizo grep.


Uso el índice alfabético en la parte superior izquierda debajo del cuadro de búsqueda. Sería bueno si hubiera una adecuada funcionalidad de búsqueda.

También sería bueno si los documentos estuvieran disponibles en el formato de ayuda de Windows como lo son para Java , que es mucho más conveniente que el javadoc html, y le permite buscar métodos con una latencia casi nula.


colladoc

La herramienta colladoc tiene una interfaz de búsqueda más útil para los scaladocs que la herramienta estándar de scaladoc.

Puede restringir la búsqueda a los nombres de métodos prefijando la cadena de búsqueda con "def", como en "def implícitamente". Si hace clic en la lupa junto al cuadro de búsqueda, con una cadena de búsqueda vacía, obtendrá la siguiente lista práctica de consultas de muestra:

  • any búsqueda de todo lo que tiene la palabra cualquiera en su nombre, definición o comentario
  • any_ busca todo lo que comienza con cualquier
  • //_any búsqueda de todos los comentarios que contienen una palabra que termina con cualquier
  • class AnyRef busca todas las clases con el nombre AnyRef
  • trait _ busca todos los rasgos
  • object _ busca todos los objetos
  • class A_ || class B_ class A_ || class B_ busca todas las clases que comienzan con A o B
  • class _ extends _ with _ busca todas las clases que extienden una clase e implementan un rasgo
  • var _: Int busca todos los valores o variables de tipo Int, las vars se muestran antes de los valores
  • def toString busca todos los métodos con el nombre toString
  • def toString : String busca todos los métodos con el nombre toString y el tipo de retorno String
  • def _(_) : Boolean busca todos los métodos con un argumento y returnType Boolean
  • def _(Int, _) busca todos los métodos con argumentos y el primero es de tipo Int
  • def _(_, *) busca todos los métodos con uno o más argumentos
  • def _(Iterable[_]):Int busca todos los métodos que toman Iterable y devuelven Int
  • (Iterable[_]) => Int equvalente a lo anterior, la sintaxis lambda también se puede utilizar para buscar métodos.
  • => (_, _) busca todos los métodos que devuelven una tupla con dos elementos.
  • def _((_) => _) busca todos los métodos que tienen uno como primer parámetro, un método que toma y devuelve cualquier valor.

Desafortunadamente, los resultados de búsqueda de colladoc pueden ser desalentadores. Si un miembro existe en muchos rasgos / clases debido a la herencia (por ejemplo, el método de sum en la API de colecciones), todas las clases se enumeran en los resultados.

Índice alfabético de scaladoc

No hay tal búsqueda en scaladoc en sí, pero hay un índice alfabético que contiene miembros de clase / objeto / rasgo. Simplemente haga clic en una de las letras debajo de la barra de búsqueda en la esquina superior izquierda, y verá una lista que contiene clases, objetos, rasgos y miembros que comienzan con esa letra (o símbolos, si hace clic en el enlace "#" ). Luego, puede utilizar la función de búsqueda de su navegador para buscar el miembro que le interesa.