File class lowering

This commit is contained in:
Dmitry Petrov
2016-09-14 10:58:45 +03:00
committed by Dmitry Petrov
parent a25e781ee9
commit 5386d27284
17 changed files with 380 additions and 22 deletions
@@ -18,8 +18,10 @@ package org.jetbrains.kotlin.ir.declarations
import org.jetbrains.kotlin.descriptors.PackageFragmentDescriptor
import org.jetbrains.kotlin.descriptors.annotations.AnnotationDescriptor
import org.jetbrains.kotlin.descriptors.annotations.checkAnnotationName
import org.jetbrains.kotlin.ir.IrElement
import org.jetbrains.kotlin.ir.SourceManager
import org.jetbrains.kotlin.name.FqName
interface IrFile : IrElement, IrDeclarationContainer {
val fileEntry: SourceManager.FileEntry
@@ -37,4 +39,7 @@ interface IrFile : IrElement, IrDeclarationContainer {
}
}
val IrFile.name: String get() = fileEntry.name
val IrFile.name: String get() = fileEntry.name
fun IrFile.findAnnotationsByFqName(fqName: FqName) =
fileAnnotations.filter { checkAnnotationName(it, fqName) }
@@ -73,10 +73,10 @@ class IrClassImpl(
}
class IrClassBuilderImpl(
override val startOffset: Int,
override val endOffset: Int,
override var startOffset: Int,
override var endOffset: Int,
override var origin: IrDeclarationOrigin,
override val descriptor: ClassDescriptor,
override var descriptor: ClassDescriptor,
override val declarations: MutableList<IrDeclaration>
) : IrClass.Builder {
constructor(irClass: IrClass) : this(irClass.startOffset, irClass.endOffset, irClass.origin, irClass.descriptor,