[build][build-tools] drop kotlinx.serialization in compilation DB generation.

This commit is contained in:
Vasily Levchenko
2020-04-29 18:58:22 +02:00
parent 99c00d61e6
commit 745464b531
@@ -7,11 +7,8 @@ package org.jetbrains.kotlin
import java.io.File import java.io.File
import javax.inject.Inject import javax.inject.Inject
import kotlinx.serialization.Serializable
import kotlinx.serialization.builtins.list
import kotlinx.serialization.json.Json
import kotlinx.serialization.json.JsonConfiguration
import org.gradle.api.GradleException import org.gradle.api.GradleException
import com.google.gson.annotations.Expose
import org.gradle.api.Project import org.gradle.api.Project
import org.gradle.api.Task import org.gradle.api.Task
import org.gradle.api.DefaultTask import org.gradle.api.DefaultTask
@@ -20,13 +17,14 @@ import org.gradle.api.tasks.InputFiles
import org.gradle.api.tasks.OutputFile import org.gradle.api.tasks.OutputFile
import org.gradle.api.tasks.TaskAction import org.gradle.api.tasks.TaskAction
import org.jetbrains.kotlin.konan.target.HostManager import org.jetbrains.kotlin.konan.target.HostManager
import java.io.FileReader
import java.io.FileWriter
@Serializable internal data class Entry(
private data class Entry( @Expose val directory: String,
val directory: String, @Expose val file: String,
val file: String, @Expose val arguments: List<String>,
val arguments: List<String>, @Expose val output: String
val output: String
) { ) {
companion object { companion object {
fun create( fun create(
@@ -43,14 +41,12 @@ private data class Entry(
) )
} }
fun writeListTo(file: File, entries: List<Entry>) { fun writeListTo(file: File, entries: List<Entry>) = FileWriter(file).use {
val json = Json(JsonConfiguration.Stable.copy(prettyPrint = true)) gson.toJson(entries, it)
file.writeText(json.stringify(Entry.serializer().list, entries))
} }
fun readListFrom(file: File): List<Entry> { fun readListFrom(file: File): Array<Entry> = FileReader(file).use{
val json = Json(JsonConfiguration.Stable) gson.fromJson(it, Array<Entry>::class.java)
return json.parse(Entry.serializer().list, file.readText())
} }
} }
} }