2

注釈付きクラスの祖先のいずれかが実際に であるかどうかを確認したいandroid.support.v4.app.Fragment

現在、私はそれを行うための再帰的な方法を書きました。

これを行うより良い方法があるのだろうか?

主な目的は、注釈がクラスに追加されるのを抑制することです。

私も使っていますsquareup.javapoet

private boolean isSubClass(TypeElement typeElement, ClassName superClassName) {
    TypeElement superTypeElement = (TypeElement) ((DeclaredType) typeElement.getSuperclass()).asElement();

    if (superTypeElement.toString().equals(Object.class.getName())) {
        return false;
    } else if (superTypeElement.toString().equals(superClassName.reflectionName())) {
        return true;
    }

    return isSubClass(superTypeElement, superClassName);
}
4

0 に答える 0