Proper names for Python PSI classes for comprehension expressions

They have "Py" prefix and do not contain ugly "Comprh" abbreviation
anymore.
This commit is contained in:
Mikhail Golubev
2016-10-10 17:59:02 +03:00
parent 4a2ef4b3d0
commit 61f71efc6e
15 changed files with 51 additions and 51 deletions
@@ -18,5 +18,5 @@ package com.jetbrains.python.psi;
/**
* @author yole
*/
public interface ComprehensionComponent {
public interface PyComprehensionComponent {
}
@@ -22,7 +22,7 @@ import java.util.List;
*/
public interface PyComprehensionElement extends PyExpression, PyNamedElementContainer {
PyExpression getResultExpression();
List<ComprehensionComponent> getComponents();
List<ComprhForComponent> getForComponents();
List<ComprhIfComponent> getIfComponents();
List<PyComprehensionComponent> getComponents();
List<PyComprehensionForComponent> getForComponents();
List<PyComprehensionIfComponent> getIfComponents();
}
@@ -20,7 +20,7 @@ package com.jetbrains.python.psi;
* User: dcheryasov
* Date: Jul 31, 2008
*/
public interface ComprhForComponent extends ComprehensionComponent {
public interface PyComprehensionForComponent extends PyComprehensionComponent {
PyExpression getIteratorVariable();
PyExpression getIteratedList();
boolean isAsync();
@@ -22,7 +22,7 @@ import org.jetbrains.annotations.Nullable;
* User: dcheryasov
* Date: Jul 31, 2008
*/
public interface ComprhIfComponent extends ComprehensionComponent {
public interface PyComprehensionIfComponent extends PyComprehensionComponent {
@Nullable
PyExpression getTest();
}
@@ -680,9 +680,9 @@ public class PyControlFlowBuilder extends PyRecursiveElementVisitor {
myBuilder.startNode(node);
List<Instruction> iterators = new ArrayList<>();
for (ComprehensionComponent component : node.getComponents()) {
if (component instanceof ComprhForComponent) {
final ComprhForComponent c = (ComprhForComponent) component;
for (PyComprehensionComponent component : node.getComponents()) {
if (component instanceof PyComprehensionForComponent) {
final PyComprehensionForComponent c = (PyComprehensionForComponent) component;
final PyExpression iteratedList = c.getIteratedList();
final PyExpression iteratorVariable = c.getIteratorVariable();
if (prevCondition != null) {
@@ -706,8 +706,8 @@ public class PyControlFlowBuilder extends PyRecursiveElementVisitor {
// Inner "for" and "if" constructs will be linked to all outer iterators
iterators.add(iterator);
}
else if (component instanceof ComprhIfComponent) {
final ComprhIfComponent c = (ComprhIfComponent) component;
else if (component instanceof PyComprehensionIfComponent) {
final PyComprehensionIfComponent c = (PyComprehensionIfComponent) component;
final PyExpression condition = c.getTest();
if (condition == null) {
continue;
@@ -93,19 +93,19 @@ public class ReplaceListComprehensionWithForIntention implements IntentionAction
private static PyForStatement createForLoop(final PyListCompExpression expression, final PyElementGenerator elementGenerator,
final String result) {
final List<ComprehensionComponent> components = expression.getComponents();
final List<PyComprehensionComponent> components = expression.getComponents();
final StringBuilder stringBuilder = new StringBuilder();
int slashNum = 1;
for (ComprehensionComponent component : components) {
if (component instanceof ComprhForComponent) {
for (PyComprehensionComponent component : components) {
if (component instanceof PyComprehensionForComponent) {
stringBuilder.append("for ");
stringBuilder.append(((ComprhForComponent)component).getIteratorVariable().getText());
stringBuilder.append(((PyComprehensionForComponent)component).getIteratorVariable().getText());
stringBuilder.append(" in ");
stringBuilder.append(((ComprhForComponent)component).getIteratedList().getText());
stringBuilder.append(((PyComprehensionForComponent)component).getIteratedList().getText());
stringBuilder.append(":\n");
}
if (component instanceof ComprhIfComponent) {
final PyExpression test = ((ComprhIfComponent)component).getTest();
if (component instanceof PyComprehensionIfComponent) {
final PyExpression test = ((PyComprehensionIfComponent)component).getTest();
if (test != null) {
stringBuilder.append("if ");
stringBuilder.append(test.getText());
@@ -130,7 +130,7 @@ public class PyTypeCheckerInspection extends PyInspection {
public void visitPyComprehensionElement(PyComprehensionElement node) {
super.visitPyComprehensionElement(node);
for (ComprhForComponent forComponent : node.getForComponents()) {
for (PyComprehensionForComponent forComponent : node.getForComponents()) {
checkIteratedValue(forComponent.getIteratedList(), forComponent.isAsync());
}
}
@@ -57,20 +57,20 @@ public class ConvertDictCompQuickFix implements LocalQuickFix {
final PyElementGenerator elementGenerator = PyElementGenerator.getInstance(project);
assert keyValueExpression.getValue() != null;
final List<ComprehensionComponent> components = expression.getComponents();
final List<PyComprehensionComponent> components = expression.getComponents();
final StringBuilder replacement = new StringBuilder("dict([(" + keyValueExpression.getKey().getText() + ", " +
keyValueExpression.getValue().getText() + ")");
int slashNum = 1;
for (ComprehensionComponent component : components) {
if (component instanceof ComprhForComponent) {
for (PyComprehensionComponent component : components) {
if (component instanceof PyComprehensionForComponent) {
replacement.append("for ");
replacement.append(((ComprhForComponent)component).getIteratorVariable().getText());
replacement.append(((PyComprehensionForComponent)component).getIteratorVariable().getText());
replacement.append(" in ");
replacement.append(((ComprhForComponent)component).getIteratedList().getText());
replacement.append(((PyComprehensionForComponent)component).getIteratedList().getText());
replacement.append(" ");
}
if (component instanceof ComprhIfComponent) {
final PyExpression test = ((ComprhIfComponent)component).getTest();
if (component instanceof PyComprehensionIfComponent) {
final PyExpression test = ((PyComprehensionIfComponent)component).getTest();
if (test != null) {
replacement.append("if ");
replacement.append(test.getText());
@@ -53,11 +53,11 @@ public abstract class PyComprehensionElementImpl extends PyElementImpl implement
* In "[x+1 for x in (1,2,3)]" a "for component" is "x".
* @return all "for components"
*/
public List<ComprhForComponent> getForComponents() {
final List<ComprhForComponent> list = new ArrayList<>(5);
public List<PyComprehensionForComponent> getForComponents() {
final List<PyComprehensionForComponent> list = new ArrayList<>(5);
visitComponents(new ComprehensionElementVisitor() {
@Override
void visitForComponent(ComprhForComponent component) {
void visitForComponent(PyComprehensionForComponent component) {
list.add(component);
}
});
@@ -81,7 +81,7 @@ public abstract class PyComprehensionElementImpl extends PyElementImpl implement
.map(asyncNode -> asyncNode.getElementType() == PyTokenTypes.ASYNC_KEYWORD)
.orElse(false);
visitor.visitForComponent(new ComprhForComponent() {
visitor.visitForComponent(new PyComprehensionForComponent() {
public PyExpression getIteratorVariable() {
return variable;
}
@@ -98,7 +98,7 @@ public abstract class PyComprehensionElementImpl extends PyElementImpl implement
}
else if (type == PyTokenTypes.IF_KEYWORD) {
final PyExpression test = (PyExpression)next.getPsi();
visitor.visitIfComponent(new ComprhIfComponent() {
visitor.visitIfComponent(new PyComprehensionIfComponent() {
public PyExpression getTest() {
return test;
}
@@ -108,27 +108,27 @@ public abstract class PyComprehensionElementImpl extends PyElementImpl implement
}
}
public List<ComprhIfComponent> getIfComponents() {
final List<ComprhIfComponent> list = new ArrayList<>(5);
public List<PyComprehensionIfComponent> getIfComponents() {
final List<PyComprehensionIfComponent> list = new ArrayList<>(5);
visitComponents(new ComprehensionElementVisitor() {
@Override
void visitIfComponent(ComprhIfComponent component) {
void visitIfComponent(PyComprehensionIfComponent component) {
list.add(component);
}
});
return list;
}
public List<ComprehensionComponent> getComponents() {
final List<ComprehensionComponent> list = new ArrayList<>(5);
public List<PyComprehensionComponent> getComponents() {
final List<PyComprehensionComponent> list = new ArrayList<>(5);
visitComponents(new ComprehensionElementVisitor() {
@Override
void visitForComponent(ComprhForComponent component) {
void visitForComponent(PyComprehensionForComponent component) {
list.add(component);
}
@Override
void visitIfComponent(ComprhIfComponent component) {
void visitIfComponent(PyComprehensionIfComponent component) {
list.add(component);
}
});
@@ -148,10 +148,10 @@ public abstract class PyComprehensionElementImpl extends PyElementImpl implement
@NotNull
public List<PsiNamedElement> getNamedElements() {
// extract whatever names are defined in "for" components
List<ComprhForComponent> fors = getForComponents();
List<PyComprehensionForComponent> fors = getForComponents();
PyExpression[] for_targets = new PyExpression[fors.size()];
int i = 0;
for (ComprhForComponent for_comp : fors) {
for (PyComprehensionForComponent for_comp : fors) {
for_targets[i] = for_comp.getIteratorVariable();
i += 1;
}
@@ -171,10 +171,10 @@ public abstract class PyComprehensionElementImpl extends PyElementImpl implement
}
abstract class ComprehensionElementVisitor {
void visitIfComponent(ComprhIfComponent component) {
void visitIfComponent(PyComprehensionIfComponent component) {
}
void visitForComponent(ComprhForComponent component) {
void visitForComponent(PyComprehensionForComponent component) {
}
}
}
@@ -59,10 +59,10 @@ public class PyGeneratorExpressionImpl extends PyComprehensionElementImpl implem
@NotNull
public List<PsiNamedElement> getNamedElements() {
// extract whatever names are defined in "for" components
List<ComprhForComponent> fors = getForComponents();
List<PyComprehensionForComponent> fors = getForComponents();
PyExpression[] for_targets = new PyExpression[fors.size()];
int i = 0;
for (ComprhForComponent for_comp : fors) {
for (PyComprehensionForComponent for_comp : fors) {
for_targets[i] = for_comp.getIteratorVariable();
i += 1;
}
@@ -17,7 +17,7 @@ package com.jetbrains.python.psi.impl;
import com.intellij.psi.PsiElement;
import com.intellij.psi.util.PsiTreeUtil;
import com.jetbrains.python.psi.ComprhForComponent;
import com.jetbrains.python.psi.PyComprehensionForComponent;
import com.jetbrains.python.psi.PyExpression;
import com.jetbrains.python.psi.PyListCompExpression;
import org.jetbrains.annotations.Nullable;
@@ -35,7 +35,7 @@ public class PyListCompExpressionNavigator {
if (listCompExpression == null){
return null;
}
for (ComprhForComponent component : listCompExpression.getForComponents()) {
for (PyComprehensionForComponent component : listCompExpression.getForComponents()) {
final PyExpression variable = component.getIteratorVariable();
if (variable != null && PsiTreeUtil.isAncestor(variable, element, false)){
return listCompExpression;
@@ -320,7 +320,7 @@ public class PyTargetExpressionImpl extends PyBaseElementImpl<PyTargetExpression
}
final PyComprehensionElement comprh = PsiTreeUtil.getParentOfType(this, PyComprehensionElement.class);
if (comprh != null) {
for (ComprhForComponent c : comprh.getForComponents()) {
for (PyComprehensionForComponent c : comprh.getForComponents()) {
final PyExpression expr = c.getIteratorVariable();
if (PsiTreeUtil.isAncestor(expr, this, false)) {
target = expr;
@@ -577,7 +577,7 @@ public class PyReferenceImpl implements PsiReferenceEx, PsiPolyVariantReference
}
private static boolean containsDeclaration(@NotNull PyComprehensionElement comprehensionElement, @NotNull String variableName) {
for (ComprhForComponent forComponent : comprehensionElement.getForComponents()) {
for (PyComprehensionForComponent forComponent : comprehensionElement.getForComponents()) {
final PyExpression iteratorVariable = forComponent.getIteratorVariable();
if (iteratorVariable instanceof PyTupleExpression) {
@@ -265,7 +265,7 @@ public abstract class CompatibilityVisitor extends PyAnnotator {
public void visitPyListCompExpression(final PyListCompExpression node) {
super.visitPyListCompExpression(node);
final List<PyExpression> nodes = node.getForComponents().stream().map(ComprhForComponent::getIteratedList).collect(Collectors.toList());
final List<PyExpression> nodes = node.getForComponents().stream().map(PyComprehensionForComponent::getIteratedList).collect(Collectors.toList());
registerForAllMatchingVersions(level -> UnsupportedFeaturesUtil.visitPyListCompExpression(node, level),
" not support this syntax in list comprehensions.",
nodes,
@@ -144,9 +144,9 @@ public class UnsupportedFeaturesUtil {
}
public static boolean visitPyListCompExpression(final PyListCompExpression node, LanguageLevel versionToProcess) {
final List<ComprhForComponent> forComponents = node.getForComponents();
final List<PyComprehensionForComponent> forComponents = node.getForComponents();
if (versionToProcess.isPy3K()) {
for (ComprhForComponent forComponent : forComponents) {
for (PyComprehensionForComponent forComponent : forComponents) {
final PyExpression iteratedList = forComponent.getIteratedList();
if (iteratedList instanceof PyTupleExpression) {
return true;