transporte telefono que numero framework español app scala lift

scala - telefono - ¿Cuál es el significado de dos puntos, guión bajo y estrella en el Mapa del sitio del ascensor(entradas:_*)?



lift transporte (1)

OK, después de que mi colega me mencionó, que encontró este encantamiento secreto en el libro Programación en Scala , hice una búsqueda en mi copia y encontré que se describe en la Sección 8.8 Parámetros repetidos . (Aunque debe buscar con espacio entre los dos puntos y el guión bajo: - /) Hay una oración para explicarlo como:

... añada el argumento de la matriz con dos puntos y un símbolo _* , como este: scala> echo(arr: _*)

Esta notación le dice al compilador que pase cada elemento de arr como su propio argumento para echo , en lugar de hacerlo todo como un único argumento.

Encuentro la descripción ofrecida aquí más útil.

Entonces x: _* es como una declaración de tipo que le dice al compilador que trate a x como un parámetro repetido (aka lista de argumentos de longitud variable - vararg ).

Estoy aprendiendo Scala y lift al mismo tiempo y me quedé atrapado al comprender la sintaxis utilizada para incializar el SiteMap en Boot.scala:

val entries = Menu(Loc("Home", "/", "Home")) :: Menu(Loc("Foo", "/badger", "Foo")) :: Menu(Loc("Directory Foo", "/something/foo", "Directory Foo")) :: Nil LiftRules.setSiteMap(SiteMap(entries:_*))

¿Cuál es exactamente el significado del parámetro SiteMap? Veo que las entradas de valor es una lista de Menú. ¿Qué es el colon, guión bajo, estrella ? Al principio pensé que era un método en la Lista, pero no puedo encontrar esa definición ...