Add import tracker
This tracker reports import directives to IJ's JPS to track changes and detectwehen it is needed to adjust compilation scope. #KT-44835 Fixed
This commit is contained in:
committed by
Space Team
parent
b27aef2c61
commit
68af705664
+7
@@ -36,6 +36,7 @@ open class CompilerCallbackServicesFacadeServer(
|
||||
val expectActualTracker: ExpectActualTracker? = null,
|
||||
val inlineConstTracker: InlineConstTracker? = null,
|
||||
val enumWhenTracker: EnumWhenTracker? = null,
|
||||
val importTracker: ImportTracker? = null,
|
||||
val incrementalResultsConsumer: IncrementalResultsConsumer? = null,
|
||||
val incrementalDataProvider: IncrementalDataProvider? = null,
|
||||
port: Int = SOCKET_ANY_FREE_PORT
|
||||
@@ -57,6 +58,8 @@ open class CompilerCallbackServicesFacadeServer(
|
||||
|
||||
override fun hasEnumWhenTracker(): Boolean = enumWhenTracker != null
|
||||
|
||||
override fun hasImportTracker(): Boolean = importTracker != null
|
||||
|
||||
override fun hasIncrementalResultsConsumer(): Boolean = incrementalResultsConsumer != null
|
||||
|
||||
override fun hasIncrementalDataProvider(): Boolean = incrementalDataProvider != null
|
||||
@@ -128,6 +131,10 @@ open class CompilerCallbackServicesFacadeServer(
|
||||
enumWhenTracker?.report(whenUsageClassPath, enumClassFqName) ?: throw NullPointerException("enumWhenTracker was not initialized")
|
||||
}
|
||||
|
||||
override fun importTracker_report(filePath: String, importedFqName: String) {
|
||||
importTracker?.report(filePath, importedFqName) ?: throw NullPointerException("importTracker was not initialized")
|
||||
}
|
||||
|
||||
override fun incrementalResultsConsumer_processHeader(headerMetadata: ByteArray) {
|
||||
incrementalResultsConsumer!!.processHeader(headerMetadata)
|
||||
}
|
||||
|
||||
+8
@@ -54,6 +54,9 @@ interface CompilerCallbackServicesFacade : Remote {
|
||||
@Throws(RemoteException::class)
|
||||
fun hasEnumWhenTracker(): Boolean
|
||||
|
||||
@Throws(RemoteException::class)
|
||||
fun hasImportTracker(): Boolean
|
||||
|
||||
@Throws(RemoteException::class)
|
||||
fun hasIncrementalResultsConsumer(): Boolean
|
||||
|
||||
@@ -117,6 +120,11 @@ interface CompilerCallbackServicesFacade : Remote {
|
||||
@Throws(RemoteException::class)
|
||||
fun enumWhenTracker_report(whenUsageClassPath: String, enumClassFqName: String)
|
||||
|
||||
// ---------------------------------------------------
|
||||
// ImportTracker
|
||||
@Throws(RemoteException::class)
|
||||
fun importTracker_report(filePath: String, importedFqName: String)
|
||||
|
||||
// ---------------------------------------------------
|
||||
// IncrementalResultsConsumer (js)
|
||||
@Throws(RemoteException::class)
|
||||
|
||||
Reference in New Issue
Block a user