boolean (@NotNull PyClass cls, @NotNull TypeEvalContext context) { final PyType type = context.getType(cls); if (type != null) { if (resolveTypeMember(type, PyNames.GETATTR, context) != null) { return true; } final PsiElement method = resolveTypeMember(type, PyNames.GETATTRIBUTE, context); if (method != null && !PyBuiltinCache.getInstance(cls).isBuiltin(method)) { return true; } } return false; }