ScalaSignature to adnotacja. Zawiera metainformacje.Czy powinniśmy używać ScalaSignature bezpośrednio?
A potem parser jest świadczona. ale scala-library.jar
nie zawiera analizatora składni. Wygląda na to, że jest tajnym API.
Ale znam kilka bibliotek używając ScalaSignature.
- https://github.com/lift/framework/blob/2.4-release/core/json/src/main/scala/net/liftweb/json/ScalaSig.scala
- https://github.com/msgpack/msgpack-scala/blob/version-0.6.6/src/main/scala/org/msgpack/scalautil/ScalaSigUtil.scala
- https://github.com/havocp/beaucatcher/blob/v0.5.0/caseclass/src/main/scala/org/beaucatcher/caseclass/ClassAnalysis.scala
Nawiasem mówiąc, nie mogłem znaleźć formalną specyfikację ScalaSignature. Obawiam się, że specyfikacja ScalaSignature może ulec zmianie w wyniku zmiany wersji Scala. Sądzę również, że istnieje kilka innych zagrożeń związanych z ScalaSignature, ponieważ specyfikacja nie istnieje.
Ponadto Scala2.10 dostarczy nowy interfejs API do refleksji. Myślę, że powód używania ScalaSignature zmniejszy się po zwolnieniu 2.10.
Zatem, czy należy używać ScalaSignature?
Oznacza to, że nie powinniśmy używać ScalaSignature i SignatureParser bezpośrednio? –
Zgodnie z moją wiedzą nie będzie takiej potrzeby w wersji 2.10+ –