, görüyorum böyle kod:":" tipi parametresinde Scala-kol projesinde
def managed[A : Resource : Manifest](opener : => A) : ManagedResource[A] = new DefaultManagedResource(opener)
birisi anlamını açıklayabilir [A: Kaynak: Manifest]?
, görüyorum böyle kod:":" tipi parametresinde Scala-kol projesinde
def managed[A : Resource : Manifest](opener : => A) : ManagedResource[A] = new DefaultManagedResource(opener)
birisi anlamını açıklayabilir [A: Kaynak: Manifest]?
def managed[A : Resource : Manifest](opener : => A) : ManagedResource[A] = new DefaultManagedResource(opener)
def managed[A](opener : => A)(implicit r: Resource[A], m: Manifest[A]) : ManagedResource[A] = new DefaultManagedResource(opener)
Daha fazla bilgi için link text7.4 Bağlam Sınır ve Görünüm Sınırlarını bakmak anlamına gelir. göstermek için basit bir örnek kullanarak,
:
def method[T : Manifest](param : T) : ResultType[T] = ...
notasyonu T : Manifest
bağlanmış bir bağlam olduğu anlamına gelir. Programınızın başka bir yerinde, kapsam dahilinde, örtülü olarak işaretlenmiş bir tekil veya Manifest[T]
türünün değeri tanımlanmalıdır.
Bu
bir ikinci (örtük) parametre bloğu kullanımı yöntem imzası yeniden derleyici tarafından elde edilir: En örnek,def method[T](param : T)(implicit x$1 : Manifest[T]) : ResultType[T] = ...
gibi, birden fazla bağlam sınır aynı yöntem imza olarak kullanılabilir. Bunları görüş sınırları ile birleştirmek de mümkündür.
http://stackoverflow.com/questions/2982276/what-is-a-context-bound-in-scala – retronym