Şimdiye kadar Scala'da Traits'i çok fazla kullanmamıştım ve bunu değiştirmek istiyorum. Ben sbt
ile derleme yaparkenBu içe aktarmalardan sonra neden noktalı virgüllere ihtiyacım var?
import tools.nsc.io.Path
import java.io.File
trait ImageFileAcceptor extends FileAcceptor {
override def accept(f:File) = {
super.accept(f) match {
case true => {
// additional work to see if it's really an image
}
case _ => false
}
}
}
sorundur, ben alınmasına devam: Bu kodu vardır ben ithalatı sonra ;
eklerseniz
ImageFileAcceptor.scala:2: ';' expected but 'import' found.
, kod derler.
import java.io.File
trait FileAcceptor extends Acceptable {
override def accept(f:File):Boolean = f.isFile
}
Ve burada Acceptable
var: İşte FileAcceptor
var
import java.io.File
trait Acceptable {
def accept(f:File):Boolean
}
Ben ithalat sonra noktalı virgül neden ihtiyacın olduğunu anlamıyorum.
DÜZENLEME: belki sbt çıktısı faydalıdır:
[info] Building project tt 1.0 against Scala 2.8.1
[info] using sbt.DefaultProject with sbt 0.7.5 and Scala 2.7.7
"Gerçekten bir görüntü olup olmadığını görmek için ek iş" sonra "true" eklediğimde, Scala 2.9.0 RC1 altında fsc ile iyi derler. –
Bilgisayarımda orada doğru var. Sadece snippet'i kısaltmak istedim. – Geo
Bu, bir satır sonu sorunu olabilir - dosyanızı yanlışlıkla eski Macintosh satır sonlarıyla (\ r) kaydetmiş olabilir misiniz? Aslında tam olarak gördüğünüz hatayı üretir. – Moritz