[FIR] Add type resolution service into SerializationFirSupertypesExtension

This service allows resolve custom user types from plugins, which allows
  to support specifying type arguments of generated supertypes basing
  on arguments passed to annotations
This commit is contained in:
Dmitriy Novozhilov
2022-09-23 12:14:17 +03:00
committed by Space
parent 5461ef6172
commit 7ce3934cf7
11 changed files with 247 additions and 6 deletions
@@ -26,6 +26,8 @@ class SerializationFirSupertypesExtension(session: FirSession) : FirSupertypeGen
register(serializerFor)
}
context(TypeResolveServiceContainer)
@Suppress("IncorrectFormatting") // KTIJ-22227
override fun computeAdditionalSupertypes(
classLikeDeclaration: FirClassLikeDeclaration,
resolvedSupertypes: List<FirResolvedTypeRef>
@@ -39,4 +41,4 @@ class SerializationFirSupertypesExtension(session: FirSession) : FirSupertypeGen
TODO("Support @Serializer(for=...) supertype generation")
} else emptyList()
}
}
}