boolean (@NotNull PyAssignmentStatement assignment, @NotNull TypeEvalContext context) { PyExpression annotationValue = getAnnotationValue(assignment, context); if (annotationValue instanceof PyReferenceExpression) { Collection<String> qualifiedNames = resolveToQualifiedNames(annotationValue, context); return qualifiedNames.contains(TYPE_ALIAS) || qualifiedNames.contains(TYPE_ALIAS_EXT); } PyTargetExpression target = as(ArrayUtil.getFirstElement(assignment.getTargets()), PyTargetExpression.class); if (target != null) { String typeCommentAnnotation = target.getTypeCommentAnnotation(); if (typeCommentAnnotation != null) { PyExpression commentValue = toExpression(typeCommentAnnotation, assignment); if (commentValue instanceof PyReferenceExpression) { Collection<String> qualifiedNames = resolveToQualifiedNames(commentValue, context); return qualifiedNames.contains(TYPE_ALIAS) || qualifiedNames.contains(TYPE_ALIAS_EXT); } } } return false; }