import(utils)

export("%@%")
export("%~%")
export("%.~%")
export("%!%")
export("%.!%")
export(".rscalaJar")
export(".rscalaPackage")
export(".rscalaPackageUnload")
export(".rscalaDelay")
export("strintrplt")
export("scalaInstall")
export("scalaSettings")
export("scalaInfo")
export("scalaNull")
# export("scalaOptimize")
# export("scalap")
export("scala")

S3method("%@%","ScalaInterpreter")
S3method("%~%","ScalaInterpreter")
S3method("%.~%","ScalaInterpreter")
S3method("%!%","ScalaInterpreter")
S3method("%.!%","ScalaInterpreter")
S3method("$","ScalaInterpreter")
S3method("$<-","ScalaInterpreter")
S3method("print","ScalaInterpreter")
S3method("toString","ScalaInterpreter")
S3method("close","ScalaInterpreter")

S3method("$","ScalaInterpreterItem")
S3method("print","ScalaInterpreterItem")
S3method("toString","ScalaInterpreterItem")

S3method("$","ScalaInterpreterReference")
S3method("print","ScalaInterpreterReference")
S3method("toString","ScalaInterpreterReference")

S3method("$","ScalaCachedReference")
S3method("print","ScalaCachedReference")
S3method("toString","ScalaCachedReference")

S3method("print","ScalaFunction")

S3method("%~%","ScalaFunctionArgs")
S3method("%.~%","ScalaFunctionArgs")

S3method(".DollarNames", "ScalaInterpreter")
S3method(".DollarNames", "ScalaInterpreterItem")
S3method(".DollarNames", "ScalaInterpreterReference")
S3method(".DollarNames", "ScalaCachedReference")

