Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit d43efd4

Browse files
committed
Kotlin: KotlinSourceFileExtractor: Take filePath rather than file
1 parent 8e31bd8 commit d43efd4

5 files changed

Lines changed: 10 additions & 10 deletions

File tree

java/kotlin-extractor/src/main/kotlin/KotlinExtractorExtension.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,8 +123,8 @@ fun doFile(invocationTrapFile: String,
123123
// file information
124124
val sftw = tw.makeSourceFileTrapWriter(file, true)
125125
val externalClassExtractor = ExternalClassExtractor(logger, invocationTrapFile, file.path, primitiveTypeMapping, pluginContext, genericSpecialisationsExtracted)
126-
val fileExtractor = KotlinSourceFileExtractor(logger, sftw, file, externalClassExtractor, primitiveTypeMapping, pluginContext, genericSpecialisationsExtracted)
127-
fileExtractor.extractFileContents(sftw.fileId)
126+
val fileExtractor = KotlinSourceFileExtractor(logger, sftw, file.path, externalClassExtractor, primitiveTypeMapping, pluginContext, genericSpecialisationsExtracted)
127+
fileExtractor.extractFileContents(file, sftw.fileId)
128128
externalClassExtractor.extractExternalClasses()
129129
}
130130
if (checkTrapIdentical && trapFile.exists()) {

java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2513,7 +2513,7 @@ open class KotlinFileExtractor(
25132513
}
25142514

25152515
if (parent is IrFile) {
2516-
if (this is KotlinSourceFileExtractor && this.file == parent) {
2516+
if (this is KotlinSourceFileExtractor && this.filePath == parent.path) {
25172517
val fileId = extractFileClass(parent)
25182518
tw.writeEnclInReftype(id, fileId)
25192519
} else {

java/kotlin-extractor/src/main/kotlin/KotlinSourceFileExtractor.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,21 +14,21 @@ import org.jetbrains.kotlin.ir.util.IdSignature
1414
class KotlinSourceFileExtractor(
1515
logger: FileLogger,
1616
tw: FileTrapWriter,
17-
val file: IrFile,
17+
val filePath: String,
1818
externalClassExtractor: ExternalClassExtractor,
1919
primitiveTypeMapping: PrimitiveTypeMapping,
2020
pluginContext: IrPluginContext,
2121
genericSpecialisationsExtracted: MutableSet<String>
2222
) :
2323
KotlinFileExtractor(logger, tw, null, externalClassExtractor, primitiveTypeMapping, pluginContext, genericSpecialisationsExtracted) {
2424

25-
fun extractFileContents(id: Label<DbFile>) {
25+
fun extractFileContents(file: IrFile, id: Label<DbFile>) {
2626
val locId = tw.getWholeFileLocation()
2727
val pkg = file.fqName.asString()
2828
val pkgId = extractPackage(pkg)
2929
tw.writeHasLocation(id, locId)
3030
tw.writeCupackage(id, pkgId)
3131
file.declarations.map { extractDeclaration(it) }
32-
CommentExtractor(this).extract()
32+
CommentExtractor(this, file).extract()
3333
}
3434
}

java/kotlin-extractor/src/main/kotlin/KotlinUsesExtractor.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,13 +125,13 @@ open class KotlinUsesExtractor(
125125
return KotlinFileExtractor(newLogger, newTrapWriter, dependencyCollector, externalClassExtractor, primitiveTypeMapping, pluginContext, genericSpecialisationsExtracted)
126126
}
127127

128-
if (this is KotlinSourceFileExtractor && this.file == clsFile) {
128+
if (this is KotlinSourceFileExtractor && this.filePath == clsFile.path) {
129129
return this
130130
}
131131

132132
val newTrapWriter = tw.makeSourceFileTrapWriter(clsFile, false)
133133
val newLogger = FileLogger(logger.logCounter, newTrapWriter)
134-
return KotlinSourceFileExtractor(newLogger, newTrapWriter, clsFile, externalClassExtractor, primitiveTypeMapping, pluginContext, genericSpecialisationsExtracted)
134+
return KotlinSourceFileExtractor(newLogger, newTrapWriter, clsFile.path, externalClassExtractor, primitiveTypeMapping, pluginContext, genericSpecialisationsExtracted)
135135
}
136136

137137
// The Kotlin compiler internal representation of Outer<T>.Inner<S>.InnerInner<R> is InnerInner<R, S, T>. This function returns just `R`.

java/kotlin-extractor/src/main/kotlin/comments/CommentExtractor.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@ import com.intellij.psi.PsiComment
77
import com.intellij.psi.PsiElement
88
import org.jetbrains.kotlin.ir.IrElement
99
import org.jetbrains.kotlin.ir.declarations.path
10+
import org.jetbrains.kotlin.ir.declarations.IrFile
1011
import org.jetbrains.kotlin.kdoc.psi.api.KDoc
1112
import org.jetbrains.kotlin.lexer.KtTokens
1213
import org.jetbrains.kotlin.psi.KtVisitor
1314
import org.jetbrains.kotlin.psi.psiUtil.endOffset
1415
import org.jetbrains.kotlin.psi.psiUtil.startOffset
1516

16-
class CommentExtractor(private val fileExtractor: KotlinSourceFileExtractor) {
17-
private val file = fileExtractor.file
17+
class CommentExtractor(private val fileExtractor: KotlinSourceFileExtractor, private val file: IrFile) {
1818
private val tw = fileExtractor.tw
1919
private val logger = fileExtractor.logger
2020
private val ktFile = Psi2Ir().getKtFile(file)

0 commit comments

Comments
 (0)