private @NotNull List<PyTargetExpression> getClassAttributesDefinedInClassMethods() {
    List<PyTargetExpression> classAttrs = myClassAttributesFromClassMethods;
    if (classAttrs == null) {
      classAttrs = new ArrayList<>();
      for (PyFunction method : getMethods()) {
        if (method.getModifier() == Modifier.CLASSMETHOD) {
          for (PyTargetExpression target : getTargetExpressions(method)) {
            if (PyUtil.isInstanceAttribute(target)) {
              classAttrs.add(target);
            }
          }
        }
      }
      myClassAttributesFromClassMethods = classAttrs;
    }
    return classAttrs;
  }
private @NotNull List<PyTargetExpression> getClassAttributesDefinedInClassMethods()