loci.embedding.Gateway.scala Maven / Gradle / Ivy
The newest version!
package loci
package embedding
import scala.language.dynamics
import scala.language.experimental.macros
sealed trait Gateway[+R] extends Dynamic {
def selectDynamic(key: String): Unit = macro GatewayResolutionFailure.selectDynamic
def updateDynamic(key: String)(value: Any): Unit = macro GatewayResolutionFailure.updateDynamic
def applyDynamic(key: String)(args: Any*): Unit = macro GatewayResolutionFailure.applyDynamic
def applyDynamicNamed(key: String)(args: Any*): Unit = macro GatewayResolutionFailure.applyDynamic
}
object Gateway extends language.transmitter.RemoteGateway.Default {
abstract class Implementation[+R] private[loci] extends Gateway[R]
}