Que sont les objets de package, pas tant le concept que leur utilisation?
J'ai essayé de faire fonctionner un exemple et le seul formulaire que j'ai pu travailler était le suivant:
package object investigations {
val PackageObjectVal = "A package object val"
}
package investigations {
object PackageObjectTest {
def main(args: Array[String]) {
println("Referencing a package object val: " + PackageObjectVal)
}
}
}
Les observations que j'ai faites jusqu'à présent sont:
package object _root_ { ... }
est interdit (ce qui est raisonnable),
package object x.y { ... }
est également interdit.
Il semble qu'un objet package doit être déclaré dans le package parent immédiat et, s'il est écrit comme ci-dessus, le formulaire de déclaration de package délimité par des accolades est requis.
Sont-ils d'usage courant? Si c'est le cas, comment?