[IR SERIALIZATION] Raname IrIrSeriazlizedIrFile -> SerializedIrFile
This commit is contained in:
+3
-3
@@ -23,7 +23,7 @@ import org.jetbrains.kotlin.ir.util.lineStartOffsets
|
|||||||
import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid
|
import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid
|
||||||
import org.jetbrains.kotlin.ir.visitors.acceptChildrenVoid
|
import org.jetbrains.kotlin.ir.visitors.acceptChildrenVoid
|
||||||
import org.jetbrains.kotlin.ir.visitors.acceptVoid
|
import org.jetbrains.kotlin.ir.visitors.acceptVoid
|
||||||
import org.jetbrains.kotlin.library.IrIrSerializedIrFile
|
import org.jetbrains.kotlin.library.SerializedIrFile
|
||||||
import org.jetbrains.kotlin.library.impl.SerializedDeclaration
|
import org.jetbrains.kotlin.library.impl.SerializedDeclaration
|
||||||
import org.jetbrains.kotlin.library.impl.SkippedDeclaration
|
import org.jetbrains.kotlin.library.impl.SkippedDeclaration
|
||||||
import org.jetbrains.kotlin.library.impl.TopLevelDeclaration
|
import org.jetbrains.kotlin.library.impl.TopLevelDeclaration
|
||||||
@@ -1297,7 +1297,7 @@ open class IrFileSerializer(
|
|||||||
open fun backendSpecificExplicitRoot(declaration: IrFunction) = false
|
open fun backendSpecificExplicitRoot(declaration: IrFunction) = false
|
||||||
open fun backendSpecificExplicitRoot(declaration: IrClass) = false
|
open fun backendSpecificExplicitRoot(declaration: IrClass) = false
|
||||||
|
|
||||||
fun serializeIrFile(file: IrFile): IrIrSerializedIrFile {
|
fun serializeIrFile(file: IrFile): SerializedIrFile {
|
||||||
val topLevelDeclarations = mutableListOf<SerializedDeclaration>()
|
val topLevelDeclarations = mutableListOf<SerializedDeclaration>()
|
||||||
|
|
||||||
val proto = ProtoFile.newBuilder()
|
val proto = ProtoFile.newBuilder()
|
||||||
@@ -1350,7 +1350,7 @@ open class IrFileSerializer(
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
return IrIrSerializedIrFile(
|
return SerializedIrFile(
|
||||||
proto.build().toByteArray(),
|
proto.build().toByteArray(),
|
||||||
file.fqName.pathSegments().map { it.identifier },
|
file.fqName.pathSegments().map { it.identifier },
|
||||||
file.path,
|
file.path,
|
||||||
|
|||||||
+2
-2
@@ -8,13 +8,13 @@ package org.jetbrains.kotlin.backend.common.serialization
|
|||||||
import org.jetbrains.kotlin.backend.common.LoggingContext
|
import org.jetbrains.kotlin.backend.common.LoggingContext
|
||||||
import org.jetbrains.kotlin.ir.declarations.IrFile
|
import org.jetbrains.kotlin.ir.declarations.IrFile
|
||||||
import org.jetbrains.kotlin.ir.declarations.IrModuleFragment
|
import org.jetbrains.kotlin.ir.declarations.IrModuleFragment
|
||||||
import org.jetbrains.kotlin.library.IrIrSerializedIrFile
|
import org.jetbrains.kotlin.library.SerializedIrFile
|
||||||
import org.jetbrains.kotlin.library.SerializedIrModule
|
import org.jetbrains.kotlin.library.SerializedIrModule
|
||||||
|
|
||||||
abstract class IrModuleSerializer<F : IrFileSerializer>(protected val logger: LoggingContext) {
|
abstract class IrModuleSerializer<F : IrFileSerializer>(protected val logger: LoggingContext) {
|
||||||
abstract fun createSerializerForFile(file: IrFile): F
|
abstract fun createSerializerForFile(file: IrFile): F
|
||||||
|
|
||||||
private fun serializeIrFile(file: IrFile): IrIrSerializedIrFile {
|
private fun serializeIrFile(file: IrFile): SerializedIrFile {
|
||||||
val fileSerializer = createSerializerForFile(file)
|
val fileSerializer = createSerializerForFile(file)
|
||||||
return fileSerializer.serializeIrFile(file)
|
return fileSerializer.serializeIrFile(file)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,20 +33,7 @@ class SerializedMetadata(
|
|||||||
val fragmentNames: List<String>
|
val fragmentNames: List<String>
|
||||||
)
|
)
|
||||||
|
|
||||||
class SerializedIrSymbol(
|
class SerializedIrFile(
|
||||||
val symbolData: ByteArray,
|
|
||||||
val id: Long,
|
|
||||||
val isLocal: Boolean
|
|
||||||
)
|
|
||||||
|
|
||||||
//class SerializedIrFile(
|
|
||||||
// val fileData: ByteArray,
|
|
||||||
// val symbols: List<SerializedIrSymbol>,
|
|
||||||
// val types: List<ByteArray>,
|
|
||||||
// val strings: List<ByteArray>
|
|
||||||
//)
|
|
||||||
|
|
||||||
class IrIrSerializedIrFile(
|
|
||||||
val fileData: ByteArray,
|
val fileData: ByteArray,
|
||||||
// val fileProto: ProtoFile,
|
// val fileProto: ProtoFile,
|
||||||
val fqName: List<String>,
|
val fqName: List<String>,
|
||||||
@@ -59,13 +46,4 @@ class IrIrSerializedIrFile(
|
|||||||
val declarations: List<SerializedDeclaration>
|
val declarations: List<SerializedDeclaration>
|
||||||
)
|
)
|
||||||
|
|
||||||
class SerializedIrModule(val files: Collection<IrIrSerializedIrFile>)
|
class SerializedIrModule(val files: Collection<SerializedIrFile>)
|
||||||
|
|
||||||
class SerializedIr(
|
|
||||||
val module: ByteArray,
|
|
||||||
// val symbols: List<Pair<Long, ByteArray>>,
|
|
||||||
val symbols: List<ByteArray>,
|
|
||||||
val types: List<ByteArray>,
|
|
||||||
val strings: List<ByteArray>,
|
|
||||||
val serializedDeclarations: List<SerializedDeclaration>
|
|
||||||
)
|
|
||||||
@@ -13,7 +13,7 @@ class IrWriterImpl(val irLayout: IrKotlinLibraryLayout) : IrWriter {
|
|||||||
irLayout.irTablesDir.mkdirs()
|
irLayout.irTablesDir.mkdirs()
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun serializeFile(file: IrIrSerializedIrFile) {
|
private fun serializeFile(file: SerializedIrFile) {
|
||||||
val fqnPath = file.fqName.joinToString(separator = "/")
|
val fqnPath = file.fqName.joinToString(separator = "/")
|
||||||
val fileId = file.path.hashCode().toString(Character.MAX_RADIX)
|
val fileId = file.path.hashCode().toString(Character.MAX_RADIX)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user