From 4f4c62445cebb0f3e3d2294596e9535e208f8972 Mon Sep 17 00:00:00 2001 From: Jiaxiang Chen Date: Fri, 25 Sep 2020 17:33:51 -0700 Subject: [PATCH] Add file path for KSFile. Fix fileName documentation --- .../main/kotlin/com/google/devtools/ksp/symbol/KSFile.kt | 7 ++++++- .../google/devtools/ksp/symbol/impl/java/KSFileJavaImpl.kt | 4 ++++ .../google/devtools/ksp/symbol/impl/kotlin/KSFileImpl.kt | 4 ++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/api/src/main/kotlin/com/google/devtools/ksp/symbol/KSFile.kt b/api/src/main/kotlin/com/google/devtools/ksp/symbol/KSFile.kt index 0a59b52132..5e777f12e3 100644 --- a/api/src/main/kotlin/com/google/devtools/ksp/symbol/KSFile.kt +++ b/api/src/main/kotlin/com/google/devtools/ksp/symbol/KSFile.kt @@ -28,7 +28,12 @@ interface KSFile : KSDeclarationContainer, KSAnnotated { val packageName: KSName /** - * Absolute path of this source file. + * File name of this source file. */ val fileName: String + + /** + * Absolute path of this source file. + */ + val filePath: String } \ No newline at end of file diff --git a/compiler-plugin/src/main/kotlin/com/google/devtools/ksp/symbol/impl/java/KSFileJavaImpl.kt b/compiler-plugin/src/main/kotlin/com/google/devtools/ksp/symbol/impl/java/KSFileJavaImpl.kt index eeb98371c4..e7af433649 100644 --- a/compiler-plugin/src/main/kotlin/com/google/devtools/ksp/symbol/impl/java/KSFileJavaImpl.kt +++ b/compiler-plugin/src/main/kotlin/com/google/devtools/ksp/symbol/impl/java/KSFileJavaImpl.kt @@ -45,6 +45,10 @@ class KSFileJavaImpl private constructor(val psi: PsiJavaFile) : KSFile { psi.name } + override val filePath: String by lazy { + psi.virtualFile.path + } + override val packageName: KSName = KSNameImpl.getCached(if (psi.packageName == "") "" else psi.packageName) override fun accept(visitor: KSVisitor, data: D): R { diff --git a/compiler-plugin/src/main/kotlin/com/google/devtools/ksp/symbol/impl/kotlin/KSFileImpl.kt b/compiler-plugin/src/main/kotlin/com/google/devtools/ksp/symbol/impl/kotlin/KSFileImpl.kt index 109e9f1968..722a064a84 100644 --- a/compiler-plugin/src/main/kotlin/com/google/devtools/ksp/symbol/impl/kotlin/KSFileImpl.kt +++ b/compiler-plugin/src/main/kotlin/com/google/devtools/ksp/symbol/impl/kotlin/KSFileImpl.kt @@ -51,6 +51,10 @@ class KSFileImpl private constructor(val file: KtFile) : KSFile { file.name } + override val filePath: String by lazy { + file.virtualFilePath + } + override fun accept(visitor: KSVisitor, data: D): R { return visitor.visitFile(this, data) }