@@ -292,6 +292,7 @@ open class KotlinFileExtractor(
292292 // Leaving this intentionally empty. init blocks are extracted during class extraction.
293293 }
294294 is IrProperty -> extractProperty(declaration, parentId)
295+ is IrEnumEntry -> extractEnumEntry(declaration, parentId)
295296 else -> logger.warnElement(Severity .ErrorSevere , " Unrecognised IrDeclaration: " + declaration.javaClass, declaration)
296297 }
297298 }
@@ -978,6 +979,25 @@ class X {
978979 }
979980 }
980981
982+ private fun getEnumEntryLabel (ee : IrEnumEntry ) : String {
983+ val parentId = useDeclarationParent(ee.parent)
984+ val label = " @\" field;{$parentId };${ee.name.asString()} \" "
985+ return label
986+ }
987+
988+ fun useEnumEntry (ee : IrEnumEntry ): Label <out DbField > {
989+ var label = getEnumEntryLabel(ee)
990+ val id: Label <DbField > = tw.getLabelFor(label)
991+ return id
992+ }
993+
994+ fun extractEnumEntry (ee : IrEnumEntry , parentId : Label <out DbReftype >) {
995+ val id = useEnumEntry(ee)
996+ val locId = tw.getLocation(ee)
997+ tw.writeFields(id, ee.name.asString(), parentId, parentId, id)
998+ tw.writeHasLocation(id, locId)
999+ }
1000+
9811001 fun extractBody (b : IrBody , callable : Label <out DbCallable >) {
9821002 when (b) {
9831003 is IrBlockBody -> extractBlockBody(b, callable, callable, 0 )
0 commit comments