Create visitor generator for FIR (KT-24062 in progress)
This commit is contained in:
committed by
Mikhail Glukhikh
parent
4755a494f1
commit
1a80477c1c
@@ -10,13 +10,39 @@ plugins {
|
||||
|
||||
jvmTarget = "1.6"
|
||||
|
||||
val generatorClasspath by configurations.creating
|
||||
|
||||
dependencies {
|
||||
compile(project(":core:descriptors"))
|
||||
generatorClasspath(project("visitors-generator"))
|
||||
// Necessary only to store bound PsiElement inside FirElement
|
||||
compileOnly(intellijCoreDep()) { includeJars("intellij-core", "annotations") }
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
"main" { projectDefault() }
|
||||
"main" {
|
||||
projectDefault()
|
||||
java.srcDir("visitors")
|
||||
}
|
||||
"test" {}
|
||||
}
|
||||
}
|
||||
|
||||
val generateVisitors by tasks.creating(JavaExec::class) {
|
||||
val generationRoot = "$projectDir/src/org/jetbrains/kotlin/fir/"
|
||||
val output = "$projectDir/visitors"
|
||||
|
||||
val allSourceFiles = fileTree(generationRoot) {
|
||||
include("**/*.kt")
|
||||
}
|
||||
|
||||
inputs.files(allSourceFiles)
|
||||
outputs.files(output)
|
||||
|
||||
classpath = generatorClasspath
|
||||
args(generationRoot, output)
|
||||
main = "org.jetbrains.kotlin.fir.visitors.generator.VisitorsGeneratorKt"
|
||||
}
|
||||
|
||||
val compileKotlin by tasks
|
||||
|
||||
compileKotlin.dependsOn(generateVisitors)
|
||||
|
||||
Reference in New Issue
Block a user