Incremental compilation support for multifile classes.

This commit is contained in:
Dmitry Petrov
2015-09-23 17:10:42 +03:00
parent ea8ada4664
commit 3dfe9951ef
57 changed files with 689 additions and 75 deletions
@@ -31,6 +31,12 @@ public class RemoteIncrementalCacheServer(val cache: IncrementalCache, port: Int
override fun getObsoletePackageParts(): Collection<String> = cache.getObsoletePackageParts()
override fun getObsoleteMultifileClassFacades(): Collection<String> = cache.getObsoleteMultifileClasses()
override fun getMultifileFacadeParts(internalName: String): Collection<String>? = cache.getStableMultifileFacadeParts(internalName)
override fun getMultifileFacade(partInternalName: String): String? = cache.getMultifileFacade(partInternalName)
override fun getPackagePartData(fqName: String): JvmPackagePartProto? = cache.getPackagePartData(fqName)
override fun getModuleMappingData(): ByteArray? = cache.getModuleMappingData()
@@ -34,6 +34,12 @@ public interface CompileService : Remote {
@Throws(RemoteException::class)
public fun getObsoletePackageParts(): Collection<String>
@Throws(RemoteException::class)
public fun getObsoleteMultifileClassFacades(): Collection<String>
@Throws(RemoteException::class)
public fun getMultifileFacade(partInternalName: String): String?
@Throws(RemoteException::class)
public fun getPackagePartData(fqName: String): JvmPackagePartProto?
@@ -48,6 +54,9 @@ public interface CompileService : Remote {
@Throws(RemoteException::class)
public fun close()
@Throws(RemoteException::class)
public fun getMultifileFacadeParts(internalName: String): Collection<String>?
}
public interface RemoteLookupTracker : Remote {
@@ -21,8 +21,14 @@ import org.jetbrains.kotlin.load.kotlin.incremental.components.JvmPackagePartPro
import org.jetbrains.kotlin.rmi.CompileService
public class RemoteIncrementalCacheClient(val cache: CompileService.RemoteIncrementalCache): IncrementalCache {
override fun getObsoleteMultifileClasses(): Collection<String> = cache.getObsoleteMultifileClassFacades()
override fun getStableMultifileFacadeParts(facadeInternalName: String): Collection<String>? = cache.getMultifileFacadeParts(facadeInternalName)
override fun getObsoletePackageParts(): Collection<String> = cache.getObsoletePackageParts()
override fun getMultifileFacade(partInternalName: String): String? = cache.getMultifileFacade(partInternalName)
override fun getPackagePartData(fqName: String): JvmPackagePartProto? = cache.getPackagePartData(fqName)
override fun getModuleMappingData(): ByteArray? = cache.getModuleMappingData()