[FE] Add flag to java model to distinguish source java classes from binaries

This commit is contained in:
Dmitriy Novozhilov
2022-05-26 12:17:20 +03:00
committed by teamcity
parent 09ff6303cc
commit 26df9d74e8
19 changed files with 68 additions and 6 deletions
@@ -33,6 +33,8 @@ class ReflectJavaClass(
override val modifiers: Int get() = klass.modifiers
override val isFromSource: Boolean get() = false
override val innerClassNames: List<Name>
get() = klass.declaredClasses
.asSequence()
@@ -28,6 +28,8 @@ import java.lang.reflect.Type
abstract class ReflectJavaMember : ReflectJavaElement(), ReflectJavaAnnotationOwner, ReflectJavaModifierListOwner, JavaMember {
abstract val member: Member
final override val isFromSource: Boolean get() = false
override val element: AnnotatedElement get() = member as AnnotatedElement
override val modifiers: Int get() = member.modifiers
@@ -31,6 +31,8 @@ class ReflectJavaTypeParameter(
return bounds
}
override val isFromSource: Boolean get() = false
@Suppress("USELESS_CAST")
override val element: AnnotatedElement?
// TypeVariable is AnnotatedElement only in JDK8
@@ -38,5 +38,8 @@ class ReflectJavaValueParameter(
override val name: Name?
get() = reflectName?.let(Name::guessByFirstCharacter)
override val isFromSource: Boolean
get() = false
override fun toString() = this::class.java.name + ": " + (if (isVararg) "vararg " else "") + name + ": " + type
}