我有一个在Any
类型上运行的扩展方法。在该扩展方法上(其中this
指的是目标实例),我正在尝试根据注释存在来过滤 memberProperties。
this::class.memberProperties
.filter{ it.annotations.map { ann -> ann.annotationClass }.contains(ValidComponent::class)}
但it.annotations
总是大小为 0
实例上的变量声明示例:
@ValidComponent var x: SomeType = constructorParam.something
或@ValidComponent lateinit var x: SomeType