From 52d918a7a166b66a9fdd0c6fdd196ea70e6dad7b Mon Sep 17 00:00:00 2001 From: "Vladimir.Orlov" Date: Thu, 15 Sep 2016 18:32:12 +0300 Subject: [PATCH 01/23] IDEA-161255 Update Community edition icons. IJ IDEA CE icons. Updated OS X icon --- build/conf/mac/Contents/Resources/idea.icns | Bin 483524 -> 147458 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/build/conf/mac/Contents/Resources/idea.icns b/build/conf/mac/Contents/Resources/idea.icns index 0aafdb67008051dd28afc7062dc1726167b00e55..ada549626bfd497d1788e56109c979c3b26d6be9 100644 GIT binary patch literal 147458 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�seJl#E&ZM6YS3pva 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 b|KK;Nu~*dVfnE>vdZ5<>y&m}A=YjtMArA51 literal 483524 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�&OyaPY2q_WAd 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

6`m>9q#uc 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

Oi&g1McViP|AIin`R3w*4ryh1jZBL>BYYh* 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ˌfLbtV?P$@pFCj|~7a*V7tqVykC{?U&js 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

xAS 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 D!5(;e From 9054f58d63306de655a86fd6fefa8b64cdf59f74 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Thu, 15 Sep 2016 21:42:14 +0200 Subject: [PATCH 02/23] Revert: IDEA-161043 Rename "Version Control" toolwindow to "VCS" --- .../platform-resources-en/src/messages/UIBundle.properties | 2 +- platform/platform-resources-en/src/tips/ChangesView.html | 2 +- .../platform-resources-en/src/tips/moveFileToChangelist.html | 2 +- platform/platform-resources/src/idea/Keymap_Default.xml | 2 +- .../openapi/vcs/history/FileHistorySessionPartner.java | 2 +- .../src/com/intellij/cvsSupport2/ui/CvsTabbedWindow.java | 2 +- python/educational-python/resources/tips/ChangesView.html | 4 ++-- .../resources/tips/moveFileToChangelist.html | 2 +- .../resources/tips/ChangesView.html | 4 ++-- .../resources/tips/moveFileToChangelist.html | 2 +- 10 files changed, 12 insertions(+), 12 deletions(-) diff --git a/platform/platform-resources-en/src/messages/UIBundle.properties b/platform/platform-resources-en/src/messages/UIBundle.properties index e20d3bc160e5..65efd991c835 100644 --- a/platform/platform-resources-en/src/messages/UIBundle.properties +++ b/platform/platform-resources-en/src/messages/UIBundle.properties @@ -54,7 +54,7 @@ tool.window.name.hierarchy=Hierarchy tool.window.name.inspection=Inspection Results tool.window.name.todo=TODO tool.window.name.dependency.viewer=Dependency Viewer -tool.window.name.version.control=VCS +tool.window.name.version.control=Version Control tool.window.name.module.dependencies=Module Dependencies tool.window.name.tasks=Time Tracking tool.window.name.database=Database diff --git a/platform/platform-resources-en/src/tips/ChangesView.html b/platform/platform-resources-en/src/tips/ChangesView.html index d1ce51a51d82..737d91a56e60 100644 --- a/platform/platform-resources-en/src/tips/ChangesView.html +++ b/platform/platform-resources-en/src/tips/ChangesView.html @@ -3,7 +3,7 @@ -

The VCS tool window shows all deleted, modified, and unversioned files in a +

The Version Control tool window shows all deleted, modified, and unversioned files in a single view. Use &shortcut:ActivateChangesToolWindow; keyboard shortcut to show or hide this tool window.

From the Changes tool window you can perform all the necessary version control diff --git a/platform/platform-resources-en/src/tips/moveFileToChangelist.html b/platform/platform-resources-en/src/tips/moveFileToChangelist.html index f73380c821be..0e157639a78c 100644 --- a/platform/platform-resources-en/src/tips/moveFileToChangelist.html +++ b/platform/platform-resources-en/src/tips/moveFileToChangelist.html @@ -7,7 +7,7 @@

You can move any file to a changelist of your choice. To do that, just choose -Move to Another Changelist on the file context menu in the VCS tool window: +Move to Another Changelist on the file context menu in the Version Control tool window:

diff --git a/platform/platform-resources/src/idea/Keymap_Default.xml b/platform/platform-resources/src/idea/Keymap_Default.xml index b986c59aabe9..be6172a40e67 100644 --- a/platform/platform-resources/src/idea/Keymap_Default.xml +++ b/platform/platform-resources/src/idea/Keymap_Default.xml @@ -864,7 +864,7 @@ - + diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/history/FileHistorySessionPartner.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/history/FileHistorySessionPartner.java index 5bce0659f72c..ab5ed896ea6d 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/history/FileHistorySessionPartner.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/history/FileHistorySessionPartner.java @@ -133,7 +133,7 @@ public class FileHistorySessionPartner implements VcsAppendableHistorySessionPar @NotNull private static ToolWindow getToolWindow(@NotNull Project project) { ToolWindow toolWindow = ToolWindowManager.getInstance(project).getToolWindow(ToolWindowId.VCS); - assert toolWindow != null : "VCS ToolWindow should be available at this point."; + assert toolWindow != null : "Version Control ToolWindow should be available at this point."; return toolWindow; } diff --git a/plugins/cvs/cvs-plugin/src/com/intellij/cvsSupport2/ui/CvsTabbedWindow.java b/plugins/cvs/cvs-plugin/src/com/intellij/cvsSupport2/ui/CvsTabbedWindow.java index 2c2100e087b6..389a620fe07a 100644 --- a/plugins/cvs/cvs-plugin/src/com/intellij/cvsSupport2/ui/CvsTabbedWindow.java +++ b/plugins/cvs/cvs-plugin/src/com/intellij/cvsSupport2/ui/CvsTabbedWindow.java @@ -92,7 +92,7 @@ public class CvsTabbedWindow implements Disposable { @NotNull private ToolWindow getToolWindow() { final ToolWindow toolWindow = ToolWindowManager.getInstance(myProject).getToolWindow(ToolWindowId.VCS); - assert toolWindow != null : "VCS ToolWindow should be available at this point."; + assert toolWindow != null : "Version Control ToolWindow should be available at this point."; return toolWindow; } diff --git a/python/educational-python/resources/tips/ChangesView.html b/python/educational-python/resources/tips/ChangesView.html index 9d0ef40f1b6d..9ad6c84ce43a 100644 --- a/python/educational-python/resources/tips/ChangesView.html +++ b/python/educational-python/resources/tips/ChangesView.html @@ -3,9 +3,9 @@ -

The Local Changes tab of the VCS tool window shows all deleted, modified, and unversioned files in a single view. +

The Local Changes tab of the Version Control tool window shows all deleted, modified, and unversioned files in a single view. Use &shortcut:ActivateVersionControlToolWindow; keyboard shortcut to show or hide this tool window.

-

From the VCS tool window you can perform all the necessary version control actions: commit changes, manage changelists, put resources under version control, examine differences and more.

+

From the Version Control tool window you can perform all the necessary version control actions: commit changes, manage changelists, put resources under version control, examine differences and more.

diff --git a/python/educational-python/resources/tips/moveFileToChangelist.html b/python/educational-python/resources/tips/moveFileToChangelist.html index 59b6c9fa7789..7bd33df164c3 100644 --- a/python/educational-python/resources/tips/moveFileToChangelist.html +++ b/python/educational-python/resources/tips/moveFileToChangelist.html @@ -8,7 +8,7 @@

You can move any file to a changelist of your choice. To do that, just choose Move to Changelist on the file context menu in the -Local Changes tab of the VCS tool window: +Local Changes tab of the Version Control tool window:

diff --git a/python/python-community-ide-resources/resources/tips/ChangesView.html b/python/python-community-ide-resources/resources/tips/ChangesView.html index 9d0ef40f1b6d..9ad6c84ce43a 100644 --- a/python/python-community-ide-resources/resources/tips/ChangesView.html +++ b/python/python-community-ide-resources/resources/tips/ChangesView.html @@ -3,9 +3,9 @@ -

The Local Changes tab of the VCS tool window shows all deleted, modified, and unversioned files in a single view. +

The Local Changes tab of the Version Control tool window shows all deleted, modified, and unversioned files in a single view. Use &shortcut:ActivateVersionControlToolWindow; keyboard shortcut to show or hide this tool window.

-

From the VCS tool window you can perform all the necessary version control actions: commit changes, manage changelists, put resources under version control, examine differences and more.

+

From the Version Control tool window you can perform all the necessary version control actions: commit changes, manage changelists, put resources under version control, examine differences and more.

diff --git a/python/python-community-ide-resources/resources/tips/moveFileToChangelist.html b/python/python-community-ide-resources/resources/tips/moveFileToChangelist.html index 59b6c9fa7789..7bd33df164c3 100644 --- a/python/python-community-ide-resources/resources/tips/moveFileToChangelist.html +++ b/python/python-community-ide-resources/resources/tips/moveFileToChangelist.html @@ -8,7 +8,7 @@

You can move any file to a changelist of your choice. To do that, just choose Move to Changelist on the file context menu in the -Local Changes tab of the VCS tool window: +Local Changes tab of the Version Control tool window:

From f851a9e6d2742be83afe28ea599010606e14ee62 Mon Sep 17 00:00:00 2001 From: Rustam Vishnyakov Date: Fri, 16 Sep 2016 00:38:26 +0300 Subject: [PATCH 03/23] Automatically substitute a read-only scheme with its editable copy --- .../options/colors/ColorAndFontOptions.java | 2 +- .../editor/colors/impl/EditorColorsManagerImpl.java | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/platform/lang-impl/src/com/intellij/application/options/colors/ColorAndFontOptions.java b/platform/lang-impl/src/com/intellij/application/options/colors/ColorAndFontOptions.java index 87e2c8c353e0..f8907df084c4 100644 --- a/platform/lang-impl/src/com/intellij/application/options/colors/ColorAndFontOptions.java +++ b/platform/lang-impl/src/com/intellij/application/options/colors/ColorAndFontOptions.java @@ -532,7 +532,7 @@ public class ColorAndFontOptions extends SearchableConfigurable.Parent.Abstract } mySelectedScheme = mySchemes.get(EditorColorsManager.getInstance().getGlobalScheme().getName()); - //assert mySelectedScheme != null : EditorColorsManager.getInstance().getGlobalScheme().getName() + "; myschemes=" + mySchemes; + assert mySelectedScheme != null : EditorColorsManager.getInstance().getGlobalScheme().getName() + "; myschemes=" + mySchemes; } private static void initScheme(@NotNull MyColorScheme scheme) { diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java b/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java index 21a9e7bb7ea3..dee7f9d49814 100644 --- a/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java @@ -314,6 +314,17 @@ public class EditorColorsManagerImpl extends EditorColorsManager implements Pers @Override public EditorColorsScheme getGlobalScheme() { EditorColorsScheme scheme = mySchemeManager.getCurrentScheme(); + String editableCopyName = null; + if (scheme instanceof DefaultColorsScheme && ((DefaultColorsScheme)scheme).hasEditableCopy()) { + editableCopyName = ((DefaultColorsScheme)scheme).getEditableCopyName(); + } + else if (scheme instanceof BundledScheme) { + editableCopyName = ((BundledScheme)scheme).getEditableCopyName(); + } + if (editableCopyName != null) { + EditorColorsScheme editableCopy = getScheme(editableCopyName); + if (editableCopy != null) return editableCopy; + } return scheme == null ? getDefaultScheme() : scheme; } From d59ecfe632eb8fa9af03fc784fcfe4fb1eb8669e Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Fri, 16 Sep 2016 08:51:41 +0700 Subject: [PATCH 04/23] IDEA-161194 follow-up: HTML description updated --- .../src/inspectionDescriptions/SimplifyStreamApiCallChains.html | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources-en/src/inspectionDescriptions/SimplifyStreamApiCallChains.html b/resources-en/src/inspectionDescriptions/SimplifyStreamApiCallChains.html index 5be8941547ee..5893d37ddfbe 100644 --- a/resources-en/src/inspectionDescriptions/SimplifyStreamApiCallChains.html +++ b/resources-en/src/inspectionDescriptions/SimplifyStreamApiCallChains.html @@ -13,6 +13,8 @@ It allows to avoid creating redundant temporary objects when traversing a collec
  • Collections.singletonList().stream() → Stream.of()
  • Collections.emptyList().stream() → Stream.empty()
  • Collections.emptySet().stream() → Stream.empty()
  • +
  • Stream.filter().findFirst().isPresent() → Stream.anyMatch()
  • +
  • Stream.filter().findAny().isPresent() → Stream.anyMatch()
  • Stream.collect(Collectors.counting()) → Stream.count()
  • Stream.collect(Collectors.maxBy()) → Stream.max()
  • Stream.collect(Collectors.minBy()) → Stream.min()
  • From 9b54b344af04a55c777e83cdb3ba5529539ecb24 Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Fri, 16 Sep 2016 10:00:47 +0700 Subject: [PATCH 05/23] IDEA-161257 Add Java-8 migration fix to use Map.computeIfAbsent where appropriate --- .../Java8CollectionsApiInspection.java | 215 ++++++++++++------ .../afterComputeIfAbsent.java | 11 + .../afterComputeIfAbsentVarConflict.java | 13 ++ .../beforeComputeIfAbsent.java | 15 ++ .../beforeComputeIfAbsentNonFinal.java | 17 ++ .../beforeComputeIfAbsentVarConflict.java | 17 ++ .../beforeGetOrDefaultAssignment.java | 4 +- .../beforeGetOrDefaultField.java | 4 +- .../beforeGetOrDefaultFieldOther.java | 4 +- .../beforeGetOrDefaultFieldOther2.java | 4 +- .../beforeGetOrDefaultLocal.java | 4 +- .../Java8CollectionsApi.html | 17 ++ .../src/messages/QuickFixBundle.properties | 1 + 13 files changed, 250 insertions(+), 76 deletions(-) create mode 100644 java/java-tests/testData/inspection/java8CollectionsApi/afterComputeIfAbsent.java create mode 100644 java/java-tests/testData/inspection/java8CollectionsApi/afterComputeIfAbsentVarConflict.java create mode 100644 java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsent.java create mode 100644 java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentNonFinal.java create mode 100644 java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentVarConflict.java diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/java18api/Java8CollectionsApiInspection.java b/java/java-analysis-impl/src/com/intellij/codeInspection/java18api/Java8CollectionsApiInspection.java index 491d2a9aaf08..03772bcdacfb 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/java18api/Java8CollectionsApiInspection.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/java18api/Java8CollectionsApiInspection.java @@ -17,6 +17,7 @@ package com.intellij.codeInspection.java18api; import com.intellij.codeInsight.FileModificationService; import com.intellij.codeInsight.daemon.QuickFixBundle; +import com.intellij.codeInsight.daemon.impl.analysis.HighlightControlFlowUtil; import com.intellij.codeInspection.BaseJavaBatchLocalInspectionTool; import com.intellij.codeInspection.LocalQuickFix; import com.intellij.codeInspection.ProblemDescriptor; @@ -25,6 +26,7 @@ import com.intellij.codeInspection.ui.SingleCheckboxOptionsPanel; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.project.Project; import com.intellij.psi.*; +import com.intellij.psi.codeStyle.JavaCodeStyleManager; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.psi.util.PsiUtil; import com.intellij.util.containers.ContainerUtil; @@ -32,6 +34,7 @@ import com.siyeh.ig.psiutils.ControlFlowUtils; import com.siyeh.ig.psiutils.EquivalenceChecker; import com.siyeh.ig.psiutils.ExpressionUtils; import one.util.streamex.StreamEx; +import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.Nls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -120,69 +123,129 @@ public class Java8CollectionsApiInspection extends BaseJavaBatchLocalInspectionT } } - private PsiMethodCallExpression tryExtractMapGetCall(PsiReferenceExpression target, PsiElement element) { - if(element instanceof PsiDeclarationStatement) { - PsiDeclarationStatement declaration = (PsiDeclarationStatement)element; - PsiElement[] elements = declaration.getDeclaredElements(); - if(elements.length > 0) { - PsiElement lastDeclaration = elements[elements.length - 1]; - if(lastDeclaration instanceof PsiLocalVariable && lastDeclaration == target.resolve()) { - PsiLocalVariable var = (PsiLocalVariable)lastDeclaration; - PsiExpression initializer = PsiUtil.skipParenthesizedExprDown(var.getInitializer()); - if (initializer instanceof PsiMethodCallExpression && - isJavaUtilMapMethodWithName((PsiMethodCallExpression)initializer, "get")) { - return (PsiMethodCallExpression)initializer; - } - } - } - } - if(element instanceof PsiExpressionStatement) { - PsiExpression expression = ((PsiExpressionStatement)element).getExpression(); - if(expression instanceof PsiAssignmentExpression) { - PsiAssignmentExpression assignment = (PsiAssignmentExpression)expression; - PsiExpression lValue = assignment.getLExpression(); - if (lValue instanceof PsiReferenceExpression && - EquivalenceChecker.getCanonicalPsiEquivalence().expressionsAreEquivalent(target, lValue)) { - PsiExpression rValue = PsiUtil.skipParenthesizedExprDown(assignment.getRExpression()); - if (rValue instanceof PsiMethodCallExpression && - isJavaUtilMapMethodWithName((PsiMethodCallExpression)rValue, "get")) { - return (PsiMethodCallExpression)rValue; - } - } - } - } - return null; - } - private void handleGetWithVariable(ProblemsHolder holder, PsiIfStatement statement) { if(statement.getElseBranch() != null) return; PsiExpression condition = statement.getCondition(); - if(!(condition instanceof PsiBinaryExpression)) return; - PsiBinaryExpression binOp = (PsiBinaryExpression)condition; - if(!binOp.getOperationTokenType().equals(JavaTokenType.EQEQ)) return; - PsiExpression value = getValueComparedWithNull(binOp); - if(!(value instanceof PsiReferenceExpression)) return; + PsiReferenceExpression value = getReferenceComparedWithNull(condition); + if (value == null) return; PsiElement previous = PsiTreeUtil.skipSiblingsBackward(statement, PsiWhiteSpace.class, PsiComment.class); - PsiMethodCallExpression getCall = tryExtractMapGetCall((PsiReferenceExpression)value, previous); + PsiMethodCallExpression getCall = tryExtractMapGetCall(value, previous); if(getCall == null) return; PsiExpression[] getArguments = getCall.getArgumentList().getExpressions(); if(getArguments.length != 1) return; PsiStatement thenBranch = ControlFlowUtils.stripBraces(statement.getThenBranch()); - if(thenBranch instanceof PsiExpressionStatement) { - PsiExpression expression = ((PsiExpressionStatement)thenBranch).getExpression(); - if(expression instanceof PsiAssignmentExpression) { - PsiExpression lValue = ((PsiAssignmentExpression)expression).getLExpression(); - PsiExpression rValue = ((PsiAssignmentExpression)expression).getRExpression(); - if (ExpressionUtils.isSimpleExpression(rValue) && EquivalenceChecker.getCanonicalPsiEquivalence().expressionsAreEquivalent(lValue, value)) { - holder.registerProblem(getCall, QuickFixBundle.message("java.8.collections.api.inspection.description"), - new ReplaceWithGetOrDefaultFix()); + PsiAssignmentExpression assignment = getAssignment(thenBranch); + EquivalenceChecker equivalence = EquivalenceChecker.getCanonicalPsiEquivalence(); + if(assignment != null) { + /* + value = map.get(key); + if(value == null) { + value = ... } + */ + if (ExpressionUtils.isSimpleExpression(assignment.getRExpression()) && + equivalence.expressionsAreEquivalent(assignment.getLExpression(), value)) { + holder.registerProblem(condition, QuickFixBundle.message("java.8.collections.api.inspection.description"), + new ReplaceWithGetOrDefaultFix("getOrDefault")); } + } else if(thenBranch instanceof PsiBlockStatement) { + /* + value = map.get(key); + if(value == null) { + value = ... + map.put(key, value); + } + */ + PsiExpression key = getArguments[0]; + PsiStatement[] statements = ((PsiBlockStatement)thenBranch).getCodeBlock().getStatements(); + if(statements.length != 2) return; + assignment = getAssignment(statements[0]); + if(assignment == null) return; + PsiExpression lambdaCandidate = assignment.getRExpression(); + if (lambdaCandidate == null || + !equivalence.expressionsAreEquivalent(assignment.getLExpression(), value) || + !(statements[1] instanceof PsiExpressionStatement)) { + return; + } + PsiExpression expression = ((PsiExpressionStatement)statements[1]).getExpression(); + if(!(expression instanceof PsiMethodCallExpression)) return; + PsiMethodCallExpression putCall = (PsiMethodCallExpression)expression; + if(!isJavaUtilMapMethodWithName(putCall, "put")) return; + PsiExpression[] putArguments = putCall.getArgumentList().getExpressions(); + if (putArguments.length != 2 || + !equivalence.expressionsAreEquivalent(putCall.getMethodExpression().getQualifierExpression(), + getCall.getMethodExpression().getQualifierExpression()) || + !equivalence.expressionsAreEquivalent(key, putArguments[0]) || + !equivalence.expressionsAreEquivalent(value, putArguments[1])) { + return; + } + PsiElement[] varRefs = PsiTreeUtil.collectElements(lambdaCandidate, e -> e instanceof PsiReferenceExpression && + ((PsiReferenceExpression)e) + .resolve() instanceof PsiVariable); + if (!StreamEx.of(varRefs).select(PsiReferenceExpression.class).map(PsiReferenceExpression::resolve).select(PsiVariable.class) + .allMatch(var -> HighlightControlFlowUtil.isEffectivelyFinal(var, lambdaCandidate, null))) { + return; + } + holder.registerProblem(condition, QuickFixBundle.message("java.8.collections.api.inspection.description"), + new ReplaceWithGetOrDefaultFix("computeIfAbsent")); } } }; } + @Nullable + private static PsiReferenceExpression getReferenceComparedWithNull(PsiExpression condition) { + if(!(condition instanceof PsiBinaryExpression)) return null; + PsiBinaryExpression binOp = (PsiBinaryExpression)condition; + if(!binOp.getOperationTokenType().equals(JavaTokenType.EQEQ)) return null; + PsiExpression value = getValueComparedWithNull(binOp); + if(!(value instanceof PsiReferenceExpression)) return null; + return (PsiReferenceExpression)value; + } + + @Contract("null -> null") + private static PsiAssignmentExpression getAssignment(PsiElement element) { + if(element instanceof PsiExpressionStatement) { + element = ((PsiExpressionStatement)element).getExpression(); + } + if (element instanceof PsiAssignmentExpression) { + return (PsiAssignmentExpression)element; + } + return null; + } + + @Nullable + @Contract("_, null -> null") + static PsiMethodCallExpression tryExtractMapGetCall(PsiReferenceExpression target, PsiElement element) { + if(element instanceof PsiDeclarationStatement) { + PsiDeclarationStatement declaration = (PsiDeclarationStatement)element; + PsiElement[] elements = declaration.getDeclaredElements(); + if(elements.length > 0) { + PsiElement lastDeclaration = elements[elements.length - 1]; + if(lastDeclaration instanceof PsiLocalVariable && lastDeclaration == target.resolve()) { + PsiLocalVariable var = (PsiLocalVariable)lastDeclaration; + PsiExpression initializer = PsiUtil.skipParenthesizedExprDown(var.getInitializer()); + if (initializer instanceof PsiMethodCallExpression && + isJavaUtilMapMethodWithName((PsiMethodCallExpression)initializer, "get")) { + return (PsiMethodCallExpression)initializer; + } + } + } + } + PsiAssignmentExpression assignment = getAssignment(element); + if(assignment != null) { + PsiExpression lValue = assignment.getLExpression(); + if (lValue instanceof PsiReferenceExpression && + EquivalenceChecker.getCanonicalPsiEquivalence().expressionsAreEquivalent(target, lValue)) { + PsiExpression rValue = PsiUtil.skipParenthesizedExprDown(assignment.getRExpression()); + if (rValue instanceof PsiMethodCallExpression && isJavaUtilMapMethodWithName((PsiMethodCallExpression)rValue, "get")) { + return (PsiMethodCallExpression)rValue; + } + } + } + return null; + } + @Nullable private ConditionInfo extractConditionInfo(PsiExpression condition) { final ConditionInfo info = extractConditionInfoIfGet(condition); @@ -399,45 +462,65 @@ public class Java8CollectionsApiInspection extends BaseJavaBatchLocalInspectionT } private static class ReplaceWithGetOrDefaultFix implements LocalQuickFix { + private final String myMethodName; + + ReplaceWithGetOrDefaultFix(String methodName) { + myMethodName = methodName; + } + @Nls @NotNull @Override public String getName() { - return getFamilyName(); + return QuickFixBundle.message("java.8.collections.api.inspection.fix.text", myMethodName); } @Nls @NotNull @Override public String getFamilyName() { - return "Replace with 'getOrDefault' method call"; + return QuickFixBundle.message("java.8.collections.api.inspection.get.fix.family.name"); } @Override public void applyFix(@NotNull Project project, @NotNull ProblemDescriptor descriptor) { PsiElement element = descriptor.getStartElement(); - if (!(element instanceof PsiMethodCallExpression)) return; - PsiMethodCallExpression getCall = (PsiMethodCallExpression)element; - if(!isJavaUtilMapMethodWithName(getCall, "get")) return; - PsiStatement statement = PsiTreeUtil.getParentOfType(element, PsiStatement.class); - PsiElement ifStatement = PsiTreeUtil.skipSiblingsForward(statement, PsiWhiteSpace.class, PsiComment.class); - if (!(ifStatement instanceof PsiIfStatement)) return; + PsiIfStatement ifStatement = PsiTreeUtil.getParentOfType(element, PsiIfStatement.class); + if(ifStatement == null) return; + PsiReferenceExpression value = getReferenceComparedWithNull(ifStatement.getCondition()); + if(value == null) return; + PsiElement statement = PsiTreeUtil.skipSiblingsBackward(ifStatement, PsiWhiteSpace.class, PsiComment.class); + PsiMethodCallExpression getCall = tryExtractMapGetCall(value, statement); + if(getCall == null || !isJavaUtilMapMethodWithName(getCall, "get")) return; PsiElement nameElement = getCall.getMethodExpression().getReferenceNameElement(); if(nameElement == null) return; PsiExpression[] args = getCall.getArgumentList().getExpressions(); if(args.length != 1) return; - PsiStatement thenBranch = ControlFlowUtils.stripBraces(((PsiIfStatement)ifStatement).getThenBranch()); - if(!(thenBranch instanceof PsiExpressionStatement)) return; - PsiExpression expression = ((PsiExpressionStatement)thenBranch).getExpression(); - if(!(expression instanceof PsiAssignmentExpression)) return; - PsiExpression defaultValue = ((PsiAssignmentExpression)expression).getRExpression(); - if(!ExpressionUtils.isSimpleExpression(defaultValue)) return; - if (!FileModificationService.getInstance().preparePsiElementForWrite(element.getContainingFile())) return; + PsiStatement thenBranch = ControlFlowUtils.stripBraces(ifStatement.getThenBranch()); Collection comments = ContainerUtil.map(PsiTreeUtil.findChildrenOfType(ifStatement, PsiComment.class), - comment -> (PsiComment)comment.copy()); + comment -> (PsiComment)comment.copy()); PsiElementFactory factory = JavaPsiFacade.getElementFactory(project); - nameElement.replace(factory.createIdentifier("getOrDefault")); - getCall.getArgumentList().add(defaultValue); + if(thenBranch instanceof PsiExpressionStatement) { + PsiExpression expression = ((PsiExpressionStatement)thenBranch).getExpression(); + if (!(expression instanceof PsiAssignmentExpression)) return; + PsiExpression defaultValue = ((PsiAssignmentExpression)expression).getRExpression(); + if (!ExpressionUtils.isSimpleExpression(defaultValue)) return; + if (!FileModificationService.getInstance().preparePsiElementForWrite(element.getContainingFile())) return; + nameElement.replace(factory.createIdentifier("getOrDefault")); + getCall.getArgumentList().add(defaultValue); + } else if(thenBranch instanceof PsiBlockStatement) { + PsiStatement[] statements = ((PsiBlockStatement)thenBranch).getCodeBlock().getStatements(); + if(statements.length != 2) return; + PsiAssignmentExpression assignment = getAssignment(statements[0]); + if(assignment == null) return; + PsiExpression lambdaCandidate = assignment.getRExpression(); + if(lambdaCandidate == null) return; + if (!FileModificationService.getInstance().preparePsiElementForWrite(element.getContainingFile())) return; + nameElement.replace(factory.createIdentifier("computeIfAbsent")); + String varName = JavaCodeStyleManager.getInstance(project).suggestUniqueVariableName("k", lambdaCandidate, true); + PsiExpression lambda = factory.createExpressionFromText(varName + " -> " + lambdaCandidate.getText(), lambdaCandidate); + getCall.getArgumentList().add(lambda); + } else return; ifStatement.delete(); comments.forEach(comment -> statement.getParent().addBefore(comment, statement)); } diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/afterComputeIfAbsent.java b/java/java-tests/testData/inspection/java8CollectionsApi/afterComputeIfAbsent.java new file mode 100644 index 000000000000..1f24463fdb46 --- /dev/null +++ b/java/java-tests/testData/inspection/java8CollectionsApi/afterComputeIfAbsent.java @@ -0,0 +1,11 @@ +// "Replace with 'computeIfAbsent' method call" "true" +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class Main { + public void testMap(Map> map, String key, String value) { + List list = map.computeIfAbsent(key, k -> new ArrayList<>()); + list.add(value); + } +} \ No newline at end of file diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/afterComputeIfAbsentVarConflict.java b/java/java-tests/testData/inspection/java8CollectionsApi/afterComputeIfAbsentVarConflict.java new file mode 100644 index 000000000000..44de8251ca4c --- /dev/null +++ b/java/java-tests/testData/inspection/java8CollectionsApi/afterComputeIfAbsentVarConflict.java @@ -0,0 +1,13 @@ +// "Replace with 'computeIfAbsent' method call" "true" +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class Main { + String k; + + public void testMap(Map> map, String value) { + List list = map.computeIfAbsent(this.k, k1 -> new ArrayList<>()); + list.add(value); + } +} \ No newline at end of file diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsent.java b/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsent.java new file mode 100644 index 000000000000..390c75f727d2 --- /dev/null +++ b/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsent.java @@ -0,0 +1,15 @@ +// "Replace with 'computeIfAbsent' method call" "true" +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class Main { + public void testMap(Map> map, String key, String value) { + List list = map.get(key); + if(list == null) { + list = new ArrayList<>(); + map.put(key, list); + } + list.add(value); + } +} \ No newline at end of file diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentNonFinal.java b/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentNonFinal.java new file mode 100644 index 000000000000..e99d5500691d --- /dev/null +++ b/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentNonFinal.java @@ -0,0 +1,17 @@ +// "Replace with 'computeIfAbsent' method call" "false" +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class Main { + public void testMap(Map> map, String key, String value) { + int size = 5; + if(map.isEmpty()) size = 10; + List list = map.get(key); + if(list == null) { + list = new ArrayList<>(size); + map.put(key, list); + } + list.add(value); + } +} \ No newline at end of file diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentVarConflict.java b/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentVarConflict.java new file mode 100644 index 000000000000..7c0554d63b1c --- /dev/null +++ b/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentVarConflict.java @@ -0,0 +1,17 @@ +// "Replace with 'computeIfAbsent' method call" "true" +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class Main { + String k; + + public void testMap(Map> map, String value) { + List list = map.get(this.k); + if(list == null) { + list = new ArrayList<>(); + map.put(this.k, list); + } + list.add(value); + } +} \ No newline at end of file diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultAssignment.java b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultAssignment.java index d2ad0bd4be1b..d49cac72f4cc 100644 --- a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultAssignment.java +++ b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultAssignment.java @@ -6,8 +6,8 @@ public class Main { public void testGetOrDefault(Map map, String key) { Integer num = 123; System.out.println(num); - num = map.get(key); - if(num == null) num = 0; + num = map.get(key); + if(num == null) num = 0; System.out.println(num); } } \ No newline at end of file diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultField.java b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultField.java index e523fa67dc30..bf4c9253a54c 100644 --- a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultField.java +++ b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultField.java @@ -7,8 +7,8 @@ public class Main { private String str; public void testGetOrDefault(Map map, String key, Main other) { - str = map.get(key); - if(str == null) { + str = map.get(key); + if(str == null) { /* block comment */ diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultFieldOther.java b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultFieldOther.java index d10cfeba1f6c..0d275eec2dcf 100644 --- a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultFieldOther.java +++ b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultFieldOther.java @@ -5,8 +5,8 @@ public class Main { private String str; public void testGetOrDefault(Map map, String key, Main other) { - str = map.get(key); - if(other.str == null) { + str = map.get(key); + if(other.str == null) { // comment str = ""; } diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultFieldOther2.java b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultFieldOther2.java index cca70d9dc579..6b6b22d3f5d6 100644 --- a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultFieldOther2.java +++ b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultFieldOther2.java @@ -5,8 +5,8 @@ public class Main { private String str; public void testGetOrDefault(Map map, String key, Main other) { - str = map.get(key); - if(str == null) { + str = map.get(key); + if(str == null) { // comment other.str = ""; } diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultLocal.java b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultLocal.java index 181ac624375c..3f2d0488131e 100644 --- a/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultLocal.java +++ b/java/java-tests/testData/inspection/java8CollectionsApi/beforeGetOrDefaultLocal.java @@ -4,8 +4,8 @@ import java.util.Map; public class Main { public void testGetOrDefault(Map map, String key, Main other) { - String a = null, str = map.get(key); - if(str == null) { + String a = null, str = map.get(key); + if(str == null) { // comment str = ""; } diff --git a/resources-en/src/inspectionDescriptions/Java8CollectionsApi.html b/resources-en/src/inspectionDescriptions/Java8CollectionsApi.html index 1eaeefae767e..3e119cbbe772 100644 --- a/resources-en/src/inspectionDescriptions/Java8CollectionsApi.html +++ b/resources-en/src/inspectionDescriptions/Java8CollectionsApi.html @@ -11,6 +11,23 @@ The following cases are covered by this inspection: } +
  • Map.getOrDefault method could be used to replace the code like this: +
    +      aValue = map.get(aKey);
    +      if (aValue == null) {
    +        aValue = "none";
    +      }
    +    
    +
  • +
  • Map.computeIfAbsent method could be used to replace the code like this: +
    +      List<String> list = map.get(key);
    +      if (list == null) {
    +        list = new ArrayList<>();
    +        map.put(key, list);
    +      }
    +    
    +
  • List.sort instance method could be used to replace Collections.sort static method
  • diff --git a/resources-en/src/messages/QuickFixBundle.properties b/resources-en/src/messages/QuickFixBundle.properties index 94a5362f78ee..e03fe93efc09 100644 --- a/resources-en/src/messages/QuickFixBundle.properties +++ b/resources-en/src/messages/QuickFixBundle.properties @@ -288,6 +288,7 @@ java.8.collections.api.inspection.fix.family.name=Replace with single method cal java.8.collections.api.inspection.fix.text=Replace with ''{0}'' method call java.8.collections.api.inspection.sort.description=Collections.sort could be replaced with List.sort java.8.collections.api.inspection.sort.fix.name=Replace with List.sort +java.8.collections.api.inspection.get.fix.family.name=Replace Map.get and condition with single method call wrap.with.optional.parameter.text=Wrap {0, choice, 1#1st|2#2nd|3#3rd|4#{0,number}th} parameter using ''java.util.Optional'' wrap.with.optional.single.parameter.text=Wrap using 'java.util.Optional' From 1ec6d3d0dd867f332fe683e06f00917bcd069104 Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Fri, 16 Sep 2016 10:26:14 +0700 Subject: [PATCH 06/23] IDEA-161257 Map.computeIfAbsent: disable inspection if checked exception is thrown from lambda body --- .../Java8CollectionsApiInspection.java | 2 ++ .../beforeComputeIfAbsentChecked.java | 21 +++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentChecked.java diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/java18api/Java8CollectionsApiInspection.java b/java/java-analysis-impl/src/com/intellij/codeInspection/java18api/Java8CollectionsApiInspection.java index 03772bcdacfb..d861bd7ac5d1 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/java18api/Java8CollectionsApiInspection.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/java18api/Java8CollectionsApiInspection.java @@ -15,6 +15,7 @@ */ package com.intellij.codeInspection.java18api; +import com.intellij.codeInsight.ExceptionUtil; import com.intellij.codeInsight.FileModificationService; import com.intellij.codeInsight.daemon.QuickFixBundle; import com.intellij.codeInsight.daemon.impl.analysis.HighlightControlFlowUtil; @@ -179,6 +180,7 @@ public class Java8CollectionsApiInspection extends BaseJavaBatchLocalInspectionT !equivalence.expressionsAreEquivalent(value, putArguments[1])) { return; } + if(!ExceptionUtil.getThrownCheckedExceptions(new PsiElement[] {lambdaCandidate}).isEmpty()) return; PsiElement[] varRefs = PsiTreeUtil.collectElements(lambdaCandidate, e -> e instanceof PsiReferenceExpression && ((PsiReferenceExpression)e) .resolve() instanceof PsiVariable); diff --git a/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentChecked.java b/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentChecked.java new file mode 100644 index 000000000000..2463a90692fb --- /dev/null +++ b/java/java-tests/testData/inspection/java8CollectionsApi/beforeComputeIfAbsentChecked.java @@ -0,0 +1,21 @@ +// "Replace with 'computeIfAbsent' method call" "false" +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class Main { + static class MyList extends ArrayList { + public MyList() throws Exception { + + } + } + + public void testMap(Map> map, String key, String value) throws Exception { + List list = map.get(key); + if(list == null) { + list = new MyList(); + map.put(key, list); + } + list.add(value); + } +} \ No newline at end of file From 3266460142a77c3a2b1fc9e9e85ef4cf1db768b8 Mon Sep 17 00:00:00 2001 From: Mikhail Golubev Date: Tue, 13 Sep 2016 22:46:35 +0300 Subject: [PATCH 07/23] PY-20744 Parse PEP-526 variable annotations Annotation is preserved at the level of assignment nodes similar to where CPython keeps them in its AST (in special "augassign" nodes). For type annotations in form "x: int" without variable initialization special statement PyTypeDefinitionStatement was introduced. --- .../python/psi/PyAnnotationOwner.java | 26 ++++++ .../python/psi/PyAssignmentStatement.java | 2 +- .../python/psi/PyElementVisitor.java | 4 + .../com/jetbrains/python/psi/PyFunction.java | 2 +- .../python/psi/PyNamedParameter.java | 7 +- .../psi/PyTypeDeclarationStatement.java | 26 ++++++ .../com/jetbrains/python/PyElementTypes.java | 1 + .../PyTypeDeclarationStatementImpl.java | 51 ++++++++++ .../python/PythonTokenSetContributor.java | 4 +- .../python/parsing/FunctionParsing.java | 2 +- .../python/parsing/StatementParsing.java | 54 ++++++----- .../psi/impl/PyAssignmentStatementImpl.java | 6 ++ python/testData/psi/VariableAnnotations.py | 8 ++ python/testData/psi/VariableAnnotations.txt | 93 +++++++++++++++++++ .../jetbrains/python/PythonParsingTest.java | 4 + 15 files changed, 257 insertions(+), 33 deletions(-) create mode 100644 python/psi-api/src/com/jetbrains/python/psi/PyAnnotationOwner.java create mode 100644 python/psi-api/src/com/jetbrains/python/psi/PyTypeDeclarationStatement.java create mode 100644 python/src/com/jetbrains/python/PyTypeDeclarationStatementImpl.java create mode 100644 python/testData/psi/VariableAnnotations.py create mode 100644 python/testData/psi/VariableAnnotations.txt diff --git a/python/psi-api/src/com/jetbrains/python/psi/PyAnnotationOwner.java b/python/psi-api/src/com/jetbrains/python/psi/PyAnnotationOwner.java new file mode 100644 index 000000000000..952e83e00ee8 --- /dev/null +++ b/python/psi-api/src/com/jetbrains/python/psi/PyAnnotationOwner.java @@ -0,0 +1,26 @@ +/* + * Copyright 2000-2016 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.jetbrains.python.psi; + +import org.jetbrains.annotations.Nullable; + +/** + * @author Mikhail Golubev + */ +public interface PyAnnotationOwner { + @Nullable + PyAnnotation getAnnotation(); +} diff --git a/python/psi-api/src/com/jetbrains/python/psi/PyAssignmentStatement.java b/python/psi-api/src/com/jetbrains/python/psi/PyAssignmentStatement.java index b4b2a0470060..38c68735e7da 100644 --- a/python/psi-api/src/com/jetbrains/python/psi/PyAssignmentStatement.java +++ b/python/psi-api/src/com/jetbrains/python/psi/PyAssignmentStatement.java @@ -24,7 +24,7 @@ import java.util.List; /** * Describes an assignment statement. */ -public interface PyAssignmentStatement extends PyStatement, PyNamedElementContainer { +public interface PyAssignmentStatement extends PyStatement, PyNamedElementContainer, PyAnnotationOwner { /** * @return the left-hand side of the statement; each item may consist of many elements. diff --git a/python/psi-api/src/com/jetbrains/python/psi/PyElementVisitor.java b/python/psi-api/src/com/jetbrains/python/psi/PyElementVisitor.java index c6c900ab0a5b..076dd026db10 100644 --- a/python/psi-api/src/com/jetbrains/python/psi/PyElementVisitor.java +++ b/python/psi-api/src/com/jetbrains/python/psi/PyElementVisitor.java @@ -280,4 +280,8 @@ public class PyElementVisitor extends PsiElementVisitor { public void visitPyWithItem(PyWithItem node) { visitPyElement(node); } + + public void visitPyTypeDeclarationStatement(PyTypeDeclarationStatement node) { + visitPyStatement(node); + } } diff --git a/python/psi-api/src/com/jetbrains/python/psi/PyFunction.java b/python/psi-api/src/com/jetbrains/python/psi/PyFunction.java index cad8ad22612a..25d6a20bb691 100644 --- a/python/psi-api/src/com/jetbrains/python/psi/PyFunction.java +++ b/python/psi-api/src/com/jetbrains/python/psi/PyFunction.java @@ -36,7 +36,7 @@ import java.util.List; */ public interface PyFunction extends PsiNamedElement, StubBasedPsiElement, PsiNameIdentifierOwner, PyStatement, PyCallable, PyDocStringOwner, ScopeOwner, PyDecoratable, PyTypedElement, PyStatementListContainer, - PyPossibleClassMember, PyTypeCommentOwner { + PyPossibleClassMember, PyTypeCommentOwner, PyAnnotationOwner { PyFunction[] EMPTY_ARRAY = new PyFunction[0]; ArrayFactory ARRAY_FACTORY = count -> new PyFunction[count]; diff --git a/python/psi-api/src/com/jetbrains/python/psi/PyNamedParameter.java b/python/psi-api/src/com/jetbrains/python/psi/PyNamedParameter.java index dcb268af254d..48b5e6ec473b 100644 --- a/python/psi-api/src/com/jetbrains/python/psi/PyNamedParameter.java +++ b/python/psi-api/src/com/jetbrains/python/psi/PyNamedParameter.java @@ -20,12 +20,12 @@ import com.intellij.psi.PsiNamedElement; import com.intellij.psi.StubBasedPsiElement; import com.jetbrains.python.psi.stubs.PyNamedParameterStub; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; /** * Represents a named parameter, as opposed to a tuple parameter. */ -public interface PyNamedParameter extends PyParameter, PsiNamedElement, PsiNameIdentifierOwner, PyExpression, PyTypeCommentOwner, StubBasedPsiElement { +public interface PyNamedParameter extends PyParameter, PsiNamedElement, PsiNameIdentifierOwner, PyExpression, PyTypeCommentOwner, + PyAnnotationOwner, StubBasedPsiElement { boolean isPositionalContainer(); boolean isKeywordContainer(); @@ -44,8 +44,5 @@ public interface PyNamedParameter extends PyParameter, PsiNamedElement, PsiNameI */ @NotNull String getRepr(boolean includeDefaultValue); - - @Nullable - PyAnnotation getAnnotation(); } diff --git a/python/psi-api/src/com/jetbrains/python/psi/PyTypeDeclarationStatement.java b/python/psi-api/src/com/jetbrains/python/psi/PyTypeDeclarationStatement.java new file mode 100644 index 000000000000..299cc0d62700 --- /dev/null +++ b/python/psi-api/src/com/jetbrains/python/psi/PyTypeDeclarationStatement.java @@ -0,0 +1,26 @@ +/* + * Copyright 2000-2016 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.jetbrains.python.psi; + +import org.jetbrains.annotations.NotNull; + +/** + * @author Mikhail Golubev + */ +public interface PyTypeDeclarationStatement extends PyStatement, PyAnnotationOwner { + @NotNull + PyExpression getTarget(); +} diff --git a/python/src/com/jetbrains/python/PyElementTypes.java b/python/src/com/jetbrains/python/PyElementTypes.java index 30c4ef842694..09f7bd64178e 100644 --- a/python/src/com/jetbrains/python/PyElementTypes.java +++ b/python/src/com/jetbrains/python/PyElementTypes.java @@ -62,6 +62,7 @@ public interface PyElementTypes { PyElementType DEL_STATEMENT = new PyElementType("DEL_STATEMENT", PyDelStatementImpl.class); PyElementType EXEC_STATEMENT = new PyElementType("EXEC_STATEMENT", PyExecStatementImpl.class); PyElementType FOR_STATEMENT = new PyElementType("FOR_STATEMENT", PyForStatementImpl.class); + PyElementType TYPE_DECLARATION_STATEMENT = new PyElementType("TYPE_DECLARATION_STATEMENT", PyTypeDeclarationStatementImpl.class); PyStubElementType FROM_IMPORT_STATEMENT = new PyFromImportStatementElementType(); PyStubElementType IMPORT_STATEMENT = new PyImportStatementElementType(); diff --git a/python/src/com/jetbrains/python/PyTypeDeclarationStatementImpl.java b/python/src/com/jetbrains/python/PyTypeDeclarationStatementImpl.java new file mode 100644 index 000000000000..85e79386635f --- /dev/null +++ b/python/src/com/jetbrains/python/PyTypeDeclarationStatementImpl.java @@ -0,0 +1,51 @@ +/* + * Copyright 2000-2016 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.jetbrains.python; + +import com.intellij.lang.ASTNode; +import com.jetbrains.python.psi.PyAnnotation; +import com.jetbrains.python.psi.PyElementVisitor; +import com.jetbrains.python.psi.PyExpression; +import com.jetbrains.python.psi.PyTypeDeclarationStatement; +import com.jetbrains.python.psi.impl.PyElementImpl; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * @author Mikhail Golubev + */ +public class PyTypeDeclarationStatementImpl extends PyElementImpl implements PyTypeDeclarationStatement { + public PyTypeDeclarationStatementImpl(ASTNode astNode) { + super(astNode); + } + + @NotNull + @Override + public PyExpression getTarget() { + return findNotNullChildByClass(PyExpression.class); + } + + @Nullable + @Override + public PyAnnotation getAnnotation() { + return findChildByClass(PyAnnotation.class); + } + + @Override + protected void acceptPyVisitor(PyElementVisitor pyVisitor) { + pyVisitor.visitPyTypeDeclarationStatement(this); + } +} diff --git a/python/src/com/jetbrains/python/PythonTokenSetContributor.java b/python/src/com/jetbrains/python/PythonTokenSetContributor.java index 5e78c9ac6743..63d432a694ee 100644 --- a/python/src/com/jetbrains/python/PythonTokenSetContributor.java +++ b/python/src/com/jetbrains/python/PythonTokenSetContributor.java @@ -28,8 +28,8 @@ public class PythonTokenSetContributor extends PythonDialectsTokenSetContributor @NotNull @Override public TokenSet getStatementTokens() { - return TokenSet.create(EXPRESSION_STATEMENT, ASSIGNMENT_STATEMENT, AUG_ASSIGNMENT_STATEMENT, ASSERT_STATEMENT, - BREAK_STATEMENT, CONTINUE_STATEMENT, DEL_STATEMENT, EXEC_STATEMENT, FOR_STATEMENT, + return TokenSet.create(EXPRESSION_STATEMENT, ASSIGNMENT_STATEMENT, TYPE_DECLARATION_STATEMENT, AUG_ASSIGNMENT_STATEMENT, + ASSERT_STATEMENT, BREAK_STATEMENT, CONTINUE_STATEMENT, DEL_STATEMENT, EXEC_STATEMENT, FOR_STATEMENT, FROM_IMPORT_STATEMENT, GLOBAL_STATEMENT, IMPORT_STATEMENT, IF_STATEMENT, PASS_STATEMENT, PRINT_STATEMENT, RAISE_STATEMENT, RETURN_STATEMENT, TRY_EXCEPT_STATEMENT, WITH_STATEMENT, WHILE_STATEMENT, NONLOCAL_STATEMENT, CLASS_DECLARATION, FUNCTION_DECLARATION); diff --git a/python/src/com/jetbrains/python/parsing/FunctionParsing.java b/python/src/com/jetbrains/python/parsing/FunctionParsing.java index 05d359ebc0d7..519242a45c05 100644 --- a/python/src/com/jetbrains/python/parsing/FunctionParsing.java +++ b/python/src/com/jetbrains/python/parsing/FunctionParsing.java @@ -230,7 +230,7 @@ public class FunctionParsing extends Parsing { return true; } - protected void parseParameterAnnotation() { + public void parseParameterAnnotation() { if (myContext.getLanguageLevel().isPy3K() && atToken(PyTokenTypes.COLON)) { PsiBuilder.Marker annotationMarker = myBuilder.mark(); nextToken(); diff --git a/python/src/com/jetbrains/python/parsing/StatementParsing.java b/python/src/com/jetbrains/python/parsing/StatementParsing.java index 70c229262811..ec54d4755b5e 100644 --- a/python/src/com/jetbrains/python/parsing/StatementParsing.java +++ b/python/src/com/jetbrains/python/parsing/StatementParsing.java @@ -214,37 +214,45 @@ public class StatementParsing extends Parsing implements ITokenTypeRemapper { builder.error(EXPRESSION_EXPECTED); } } - else if (builder.getTokenType() == PyTokenTypes.EQ) { - statementType = PyElementTypes.ASSIGNMENT_STATEMENT; + else if (atToken(PyTokenTypes.EQ) || (atToken(PyTokenTypes.COLON) && myContext.getLanguageLevel().isPy3K())) { exprStatement.rollbackTo(); exprStatement = builder.mark(); getExpressionParser().parseExpression(false, true); - LOG.assertTrue(builder.getTokenType() == PyTokenTypes.EQ, builder.getTokenType()); - builder.advanceLexer(); + LOG.assertTrue(builder.getTokenType() == PyTokenTypes.EQ || builder.getTokenType() == PyTokenTypes.COLON, builder.getTokenType()); - while (true) { - PsiBuilder.Marker maybeExprMarker = builder.mark(); - final boolean isYieldExpr = builder.getTokenType() == PyTokenTypes.YIELD_KEYWORD; - if (!getExpressionParser().parseYieldOrTupleExpression(false)) { - maybeExprMarker.drop(); - builder.error(EXPRESSION_EXPECTED); - break; - } - if (builder.getTokenType() == PyTokenTypes.EQ) { - if (isYieldExpr) { + if (builder.getTokenType() == PyTokenTypes.COLON) { + statementType = PyElementTypes.TYPE_DECLARATION_STATEMENT; + getFunctionParser().parseParameterAnnotation(); + } + + if (builder.getTokenType() == PyTokenTypes.EQ) { + statementType = PyElementTypes.ASSIGNMENT_STATEMENT; + builder.advanceLexer(); + + while (true) { + PsiBuilder.Marker maybeExprMarker = builder.mark(); + final boolean isYieldExpr = builder.getTokenType() == PyTokenTypes.YIELD_KEYWORD; + if (!getExpressionParser().parseYieldOrTupleExpression(false)) { maybeExprMarker.drop(); - builder.error("Cannot assign to 'yield' expression"); + builder.error(EXPRESSION_EXPECTED); + break; + } + if (builder.getTokenType() == PyTokenTypes.EQ) { + if (isYieldExpr) { + maybeExprMarker.drop(); + builder.error("Cannot assign to 'yield' expression"); + } + else { + maybeExprMarker.rollbackTo(); + getExpressionParser().parseExpression(false, true); + LOG.assertTrue(builder.getTokenType() == PyTokenTypes.EQ, builder.getTokenType()); + } + builder.advanceLexer(); } else { - maybeExprMarker.rollbackTo(); - getExpressionParser().parseExpression(false, true); - LOG.assertTrue(builder.getTokenType() == PyTokenTypes.EQ, builder.getTokenType()); + maybeExprMarker.drop(); + break; } - builder.advanceLexer(); - } - else { - maybeExprMarker.drop(); - break; } } } diff --git a/python/src/com/jetbrains/python/psi/impl/PyAssignmentStatementImpl.java b/python/src/com/jetbrains/python/psi/impl/PyAssignmentStatementImpl.java index c05082490f67..08281fc811a3 100644 --- a/python/src/com/jetbrains/python/psi/impl/PyAssignmentStatementImpl.java +++ b/python/src/com/jetbrains/python/psi/impl/PyAssignmentStatementImpl.java @@ -96,6 +96,12 @@ public class PyAssignmentStatementImpl extends PyElementImpl implements PyAssign return targets.toArray(new PyExpression[targets.size()]); } + @Nullable + @Override + public PyAnnotation getAnnotation() { + return findChildByClass(PyAnnotation.class); + } + private static void addCandidate(List candidates, PyExpression psi) { if (psi instanceof PyParenthesizedExpression) { addCandidate(candidates, ((PyParenthesizedExpression)psi).getContainedExpression()); diff --git a/python/testData/psi/VariableAnnotations.py b/python/testData/psi/VariableAnnotations.py new file mode 100644 index 000000000000..0b6800b34e01 --- /dev/null +++ b/python/testData/psi/VariableAnnotations.py @@ -0,0 +1,8 @@ +class C: + x: int + y: None = 42 + + def m(self, d): + x: List[bool] + d['foo']: str + (d['bar']): float diff --git a/python/testData/psi/VariableAnnotations.txt b/python/testData/psi/VariableAnnotations.txt new file mode 100644 index 000000000000..3b847b978cf0 --- /dev/null +++ b/python/testData/psi/VariableAnnotations.txt @@ -0,0 +1,93 @@ +PyFile:VariableAnnotations.py + PyClass: C + PsiElement(Py:CLASS_KEYWORD)('class') + PsiWhiteSpace(' ') + PsiElement(Py:IDENTIFIER)('C') + PyArgumentList + + PsiElement(Py:COLON)(':') + PsiWhiteSpace('\n ') + PyStatementList + PyTypeDeclarationStatement + PyTargetExpression: x + PsiElement(Py:IDENTIFIER)('x') + PyAnnotation + PsiElement(Py:COLON)(':') + PsiWhiteSpace(' ') + PyReferenceExpression: int + PsiElement(Py:IDENTIFIER)('int') + PsiWhiteSpace('\n ') + PyAssignmentStatement + PyTargetExpression: y + PsiElement(Py:IDENTIFIER)('y') + PyAnnotation + PsiElement(Py:COLON)(':') + PsiWhiteSpace(' ') + PyNoneLiteralExpression + PsiElement(Py:NONE_KEYWORD)('None') + PsiWhiteSpace(' ') + PsiElement(Py:EQ)('=') + PsiWhiteSpace(' ') + PyNumericLiteralExpression + PsiElement(Py:INTEGER_LITERAL)('42') + PsiWhiteSpace('\n\n ') + PyFunction('m') + PsiElement(Py:DEF_KEYWORD)('def') + PsiWhiteSpace(' ') + PsiElement(Py:IDENTIFIER)('m') + PyParameterList + PsiElement(Py:LPAR)('(') + PyNamedParameter('self') + PsiElement(Py:IDENTIFIER)('self') + PsiElement(Py:COMMA)(',') + PsiWhiteSpace(' ') + PyNamedParameter('d') + PsiElement(Py:IDENTIFIER)('d') + PsiElement(Py:RPAR)(')') + PsiElement(Py:COLON)(':') + PsiWhiteSpace('\n ') + PyStatementList + PyTypeDeclarationStatement + PyTargetExpression: x + PsiElement(Py:IDENTIFIER)('x') + PyAnnotation + PsiElement(Py:COLON)(':') + PsiWhiteSpace(' ') + PySubscriptionExpression + PyReferenceExpression: List + PsiElement(Py:IDENTIFIER)('List') + PsiElement(Py:LBRACKET)('[') + PyReferenceExpression: bool + PsiElement(Py:IDENTIFIER)('bool') + PsiElement(Py:RBRACKET)(']') + PsiWhiteSpace('\n ') + PyTypeDeclarationStatement + PySubscriptionExpression + PyReferenceExpression: d + PsiElement(Py:IDENTIFIER)('d') + PsiElement(Py:LBRACKET)('[') + PyStringLiteralExpression: foo + PsiElement(Py:SINGLE_QUOTED_STRING)(''foo'') + PsiElement(Py:RBRACKET)(']') + PyAnnotation + PsiElement(Py:COLON)(':') + PsiWhiteSpace(' ') + PyReferenceExpression: str + PsiElement(Py:IDENTIFIER)('str') + PsiWhiteSpace('\n ') + PyTypeDeclarationStatement + PyParenthesizedExpression + PsiElement(Py:LPAR)('(') + PySubscriptionExpression + PyReferenceExpression: d + PsiElement(Py:IDENTIFIER)('d') + PsiElement(Py:LBRACKET)('[') + PyStringLiteralExpression: bar + PsiElement(Py:SINGLE_QUOTED_STRING)(''bar'') + PsiElement(Py:RBRACKET)(']') + PsiElement(Py:RPAR)(')') + PyAnnotation + PsiElement(Py:COLON)(':') + PsiWhiteSpace(' ') + PyReferenceExpression: float + PsiElement(Py:IDENTIFIER)('float') \ No newline at end of file diff --git a/python/testSrc/com/jetbrains/python/PythonParsingTest.java b/python/testSrc/com/jetbrains/python/PythonParsingTest.java index 169c0141848b..e90e63aff9f7 100644 --- a/python/testSrc/com/jetbrains/python/PythonParsingTest.java +++ b/python/testSrc/com/jetbrains/python/PythonParsingTest.java @@ -515,6 +515,10 @@ public class PythonParsingTest extends ParsingTestCase { doTest(LanguageLevel.PYTHON35); } + public void testVariableAnnotations() { + doTest(LanguageLevel.PYTHON36); + } + public void doTest(LanguageLevel languageLevel) { LanguageLevel prev = myLanguageLevel; myLanguageLevel = languageLevel; From eb64521ae2e1ab78191044841827c69a13060472 Mon Sep 17 00:00:00 2001 From: Mikhail Golubev Date: Wed, 14 Sep 2016 12:51:32 +0300 Subject: [PATCH 08/23] PY-20744 Python formatter is aware of variable annotations --- .../python/formatter/PythonFormattingModelBuilder.java | 2 ++ python/testData/formatter/variableAnnotations.py | 2 ++ python/testData/formatter/variableAnnotations_after.py | 2 ++ python/testSrc/com/jetbrains/python/PyFormatterTest.java | 4 ++++ 4 files changed, 10 insertions(+) create mode 100644 python/testData/formatter/variableAnnotations.py create mode 100644 python/testData/formatter/variableAnnotations_after.py diff --git a/python/src/com/jetbrains/python/formatter/PythonFormattingModelBuilder.java b/python/src/com/jetbrains/python/formatter/PythonFormattingModelBuilder.java index 7e69b2dafb4d..bced7d4b8d23 100644 --- a/python/src/com/jetbrains/python/formatter/PythonFormattingModelBuilder.java +++ b/python/src/com/jetbrains/python/formatter/PythonFormattingModelBuilder.java @@ -95,6 +95,8 @@ public class PythonFormattingModelBuilder implements FormattingModelBuilderEx, C .betweenInside(MINUS, GT, ANNOTATION).none() .beforeInside(ANNOTATION, FUNCTION_DECLARATION).spaces(1) .beforeInside(ANNOTATION, NAMED_PARAMETER).none() + .beforeInside(ANNOTATION, TYPE_DECLARATION_STATEMENT).none() + .beforeInside(ANNOTATION, ASSIGNMENT_STATEMENT).none() .afterInside(COLON, ANNOTATION).spaces(1) .afterInside(RARROW, ANNOTATION).spaces(1) diff --git a/python/testData/formatter/variableAnnotations.py b/python/testData/formatter/variableAnnotations.py new file mode 100644 index 000000000000..cbf11a632768 --- /dev/null +++ b/python/testData/formatter/variableAnnotations.py @@ -0,0 +1,2 @@ +x : int +y : Optional[str] = 'foo' \ No newline at end of file diff --git a/python/testData/formatter/variableAnnotations_after.py b/python/testData/formatter/variableAnnotations_after.py new file mode 100644 index 000000000000..65670c87f0d6 --- /dev/null +++ b/python/testData/formatter/variableAnnotations_after.py @@ -0,0 +1,2 @@ +x: int +y: Optional[str] = 'foo' diff --git a/python/testSrc/com/jetbrains/python/PyFormatterTest.java b/python/testSrc/com/jetbrains/python/PyFormatterTest.java index c1a23e9e5a8f..5da55236a3a8 100644 --- a/python/testSrc/com/jetbrains/python/PyFormatterTest.java +++ b/python/testSrc/com/jetbrains/python/PyFormatterTest.java @@ -673,4 +673,8 @@ public class PyFormatterTest extends PyTestCase { getCommonCodeStyleSettings().SPACE_AFTER_COMMA = false; doTest(); } + + public void testVariableAnnotations() { + runWithLanguageLevel(LanguageLevel.PYTHON36, this::doTest); + } } From 409aad3f71ae491a8debfc208deb10b67f6ff93b Mon Sep 17 00:00:00 2001 From: Mikhail Golubev Date: Wed, 14 Sep 2016 14:26:28 +0300 Subject: [PATCH 09/23] PY-20744 Compatibility inspection and annotator warn about variable annotations --- .../jetbrains/python/psi/PyElementVisitor.java | 4 ++++ .../python/psi/impl/PyAnnotationImpl.java | 6 ++++++ .../python/validation/CompatibilityVisitor.java | 15 +++++++++++++++ .../testData/highlighting/variableAnnotations.py | 8 ++++++++ .../variableAnnotations.py | 8 ++++++++ .../jetbrains/python/PythonHighlightingTest.java | 4 ++++ .../PyCompatibilityInspectionTest.java | 4 ++++ 7 files changed, 49 insertions(+) create mode 100644 python/testData/highlighting/variableAnnotations.py create mode 100644 python/testData/inspections/PyCompatibilityInspection/variableAnnotations.py diff --git a/python/psi-api/src/com/jetbrains/python/psi/PyElementVisitor.java b/python/psi-api/src/com/jetbrains/python/psi/PyElementVisitor.java index 076dd026db10..91e43c7044e1 100644 --- a/python/psi-api/src/com/jetbrains/python/psi/PyElementVisitor.java +++ b/python/psi-api/src/com/jetbrains/python/psi/PyElementVisitor.java @@ -284,4 +284,8 @@ public class PyElementVisitor extends PsiElementVisitor { public void visitPyTypeDeclarationStatement(PyTypeDeclarationStatement node) { visitPyStatement(node); } + + public void visitPyAnnotation(PyAnnotation node) { + visitPyElement(node); + } } diff --git a/python/src/com/jetbrains/python/psi/impl/PyAnnotationImpl.java b/python/src/com/jetbrains/python/psi/impl/PyAnnotationImpl.java index 1fcb700def0f..3737fd491570 100644 --- a/python/src/com/jetbrains/python/psi/impl/PyAnnotationImpl.java +++ b/python/src/com/jetbrains/python/psi/impl/PyAnnotationImpl.java @@ -18,6 +18,7 @@ package com.jetbrains.python.psi.impl; import com.intellij.lang.ASTNode; import com.jetbrains.python.PyElementTypes; import com.jetbrains.python.psi.PyAnnotation; +import com.jetbrains.python.psi.PyElementVisitor; import com.jetbrains.python.psi.PyExpression; import com.jetbrains.python.psi.stubs.PyAnnotationStub; import org.jetbrains.annotations.Nullable; @@ -39,4 +40,9 @@ public class PyAnnotationImpl extends PyBaseElementImpl implem public PyExpression getValue() { return findChildByClass(PyExpression.class); } + + @Override + protected void acceptPyVisitor(PyElementVisitor pyVisitor) { + pyVisitor.visitPyAnnotation(this); + } } diff --git a/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java b/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java index 3b950a09b2d6..fafbaca04a31 100644 --- a/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java +++ b/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java @@ -60,6 +60,21 @@ public abstract class CompatibilityVisitor extends PyAnnotator { myVersionsToProcess = versionsToProcess; } + @Override + public void visitPyAnnotation(PyAnnotation node) { + final PsiElement parent = node.getParent(); + if (!(parent instanceof PyFunction || parent instanceof PyNamedParameter)) { + final StringBuilder message = new StringBuilder(myCommonMessage); + int len = 0; + for (LanguageLevel languageLevel : myVersionsToProcess) { + if (languageLevel.isOlderThan(LanguageLevel.PYTHON36)) { + len = appendLanguageLevel(message, len, languageLevel); + } + } + commonRegisterProblem(message, " not support variable annotations", len, node, null); + } + } + @Override public void visitPyDictCompExpression(PyDictCompExpression node) { super.visitPyDictCompExpression(node); diff --git a/python/testData/highlighting/variableAnnotations.py b/python/testData/highlighting/variableAnnotations.py new file mode 100644 index 000000000000..392a0b47d550 --- /dev/null +++ b/python/testData/highlighting/variableAnnotations.py @@ -0,0 +1,8 @@ +class C: + x: int + y: None = 42 + + def m(self, d): + x: List[bool] + d['foo']: str + (d['bar']): float diff --git a/python/testData/inspections/PyCompatibilityInspection/variableAnnotations.py b/python/testData/inspections/PyCompatibilityInspection/variableAnnotations.py new file mode 100644 index 000000000000..f6186a0e651c --- /dev/null +++ b/python/testData/inspections/PyCompatibilityInspection/variableAnnotations.py @@ -0,0 +1,8 @@ +class C: + x: int + y: None = 42 + + def m(self, d): + x: List[bool] + d['foo']: str + (d['bar']): float diff --git a/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java b/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java index 3beb8ee03954..b9c6daeaf54e 100644 --- a/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java +++ b/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java @@ -293,6 +293,10 @@ public class PythonHighlightingTest extends PyTestCase { doTest(LanguageLevel.PYTHON35, true, false); } + public void testVariableAnnotations() { + doTest(LanguageLevel.PYTHON35, true, false); + } + // --- private void doTest(final LanguageLevel languageLevel, final boolean checkWarnings, final boolean checkInfos) { PythonLanguageLevelPusher.setForcedLanguageLevel(myFixture.getProject(), languageLevel); diff --git a/python/testSrc/com/jetbrains/python/inspections/PyCompatibilityInspectionTest.java b/python/testSrc/com/jetbrains/python/inspections/PyCompatibilityInspectionTest.java index c76c25e6d517..fdd5d0ecc4dd 100644 --- a/python/testSrc/com/jetbrains/python/inspections/PyCompatibilityInspectionTest.java +++ b/python/testSrc/com/jetbrains/python/inspections/PyCompatibilityInspectionTest.java @@ -190,6 +190,10 @@ public class PyCompatibilityInspectionTest extends PyTestCase { doTest(LanguageLevel.PYTHON36); } + public void testVariableAnnotations() { + doTest(LanguageLevel.PYTHON36); + } + private void doTest(@NotNull LanguageLevel level) { runWithLanguageLevel(level, this::doTest); } From 6d86b858ca3e31d85c7a5951eb4470e170009c96 Mon Sep 17 00:00:00 2001 From: Mikhail Golubev Date: Wed, 14 Sep 2016 15:34:56 +0300 Subject: [PATCH 10/23] =?UTF-8?q?PY-20744=20Initial=20support=20of=20varia?= =?UTF-8?q?ble=20annotations=20in=20type=20=D1=81hecking?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../python/psi/PyTargetExpression.java | 2 +- .../codeInsight/PyTypingTypeProvider.java | 9 +++++++++ .../python/psi/impl/PyTargetExpressionImpl.java | 10 ++++++++++ .../com/jetbrains/python/PyTypingTest.java | 17 ++++++++++++++++- 4 files changed, 36 insertions(+), 2 deletions(-) diff --git a/python/psi-api/src/com/jetbrains/python/psi/PyTargetExpression.java b/python/psi-api/src/com/jetbrains/python/psi/PyTargetExpression.java index 9012137bb53f..a248dee2d144 100644 --- a/python/psi-api/src/com/jetbrains/python/psi/PyTargetExpression.java +++ b/python/psi-api/src/com/jetbrains/python/psi/PyTargetExpression.java @@ -27,7 +27,7 @@ import org.jetbrains.annotations.Nullable; */ public interface PyTargetExpression extends PyQualifiedExpression, PsiNamedElement, PsiNameIdentifierOwner, PyDocStringOwner, PyQualifiedNameOwner, PyReferenceOwner, StubBasedPsiElement, - PyPossibleClassMember, PyTypeCommentOwner { + PyPossibleClassMember, PyTypeCommentOwner, PyAnnotationOwner { PyTargetExpression[] EMPTY_ARRAY = new PyTargetExpression[0]; /** diff --git a/python/src/com/jetbrains/python/codeInsight/PyTypingTypeProvider.java b/python/src/com/jetbrains/python/codeInsight/PyTypingTypeProvider.java index bf017fc484c0..3d9a6c001553 100644 --- a/python/src/com/jetbrains/python/codeInsight/PyTypingTypeProvider.java +++ b/python/src/com/jetbrains/python/codeInsight/PyTypingTypeProvider.java @@ -176,6 +176,15 @@ public class PyTypingTypeProvider extends PyTypeProviderBase { public PyType getReferenceType(@NotNull PsiElement referenceTarget, TypeEvalContext context, @Nullable PsiElement anchor) { if (referenceTarget instanceof PyTargetExpression) { final PyTargetExpression target = (PyTargetExpression)referenceTarget; + // XXX: Requires switching from stub to AST + final PyAnnotation annotation = target.getAnnotation(); + if (annotation != null) { + final PyExpression value = annotation.getValue(); + if (value != null) { + return getType(value, new Context(context)); + } + return null; + } final String comment = target.getTypeCommentAnnotation(); if (comment != null) { final PyType type = getStringBasedType(comment, referenceTarget, new Context(context)); diff --git a/python/src/com/jetbrains/python/psi/impl/PyTargetExpressionImpl.java b/python/src/com/jetbrains/python/psi/impl/PyTargetExpressionImpl.java index 868370081cc7..90e30082cf6e 100644 --- a/python/src/com/jetbrains/python/psi/impl/PyTargetExpressionImpl.java +++ b/python/src/com/jetbrains/python/psi/impl/PyTargetExpressionImpl.java @@ -214,6 +214,16 @@ public class PyTargetExpressionImpl extends PyBaseElementImpl Date: Wed, 14 Sep 2016 17:19:00 +0300 Subject: [PATCH 11/23] PY-20744 Warn about illegal targets for variable annotations --- .../validation/PyAnnotatingVisitor.java | 1 + .../TypeAnnotationTargetAnnotator.java | 55 +++++++++++++++++++ .../illegalVariableAnnotationTarget.py | 12 ++++ .../python/PythonHighlightingTest.java | 4 ++ 4 files changed, 72 insertions(+) create mode 100644 python/src/com/jetbrains/python/validation/TypeAnnotationTargetAnnotator.java create mode 100644 python/testData/highlighting/illegalVariableAnnotationTarget.py diff --git a/python/src/com/jetbrains/python/validation/PyAnnotatingVisitor.java b/python/src/com/jetbrains/python/validation/PyAnnotatingVisitor.java index d5d1964b0faa..150bebc9a1c6 100644 --- a/python/src/com/jetbrains/python/validation/PyAnnotatingVisitor.java +++ b/python/src/com/jetbrains/python/validation/PyAnnotatingVisitor.java @@ -33,6 +33,7 @@ public class PyAnnotatingVisitor implements Annotator { private static final Logger LOGGER = Logger.getInstance(PyAnnotatingVisitor.class.getName()); private static final Class[] ANNOTATOR_CLASSES = new Class[] { AssignTargetAnnotator.class, + TypeAnnotationTargetAnnotator.class, ParameterListAnnotator.class, HighlightingAnnotator.class, ReturnAnnotator.class, diff --git a/python/src/com/jetbrains/python/validation/TypeAnnotationTargetAnnotator.java b/python/src/com/jetbrains/python/validation/TypeAnnotationTargetAnnotator.java new file mode 100644 index 000000000000..d54de6f85e1c --- /dev/null +++ b/python/src/com/jetbrains/python/validation/TypeAnnotationTargetAnnotator.java @@ -0,0 +1,55 @@ +/* + * Copyright 2000-2016 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.jetbrains.python.validation; + +import com.jetbrains.python.psi.*; +import com.jetbrains.python.psi.impl.PyPsiUtils; +import org.jetbrains.annotations.NotNull; + +/** + * @author Mikhail Golubev + */ +public class TypeAnnotationTargetAnnotator extends PyAnnotator { + @Override + public void visitPyAssignmentStatement(PyAssignmentStatement node) { + if (node.getAnnotation() != null && LanguageLevel.forElement(node).isAtLeast(LanguageLevel.PYTHON36)) { + if (node.getRawTargets().length > 1) { + getHolder().createErrorAnnotation(node, "Variable annotation cannot be used in assignment with multiple targets"); + } + final PyExpression target = node.getLeftHandSideExpression(); + if (target != null) { + checkAnnotationTarget(target); + } + } + } + + @Override + public void visitPyTypeDeclarationStatement(PyTypeDeclarationStatement node) { + if (node.getAnnotation() != null && LanguageLevel.forElement(node).isAtLeast(LanguageLevel.PYTHON36)) { + checkAnnotationTarget(node.getTarget()); + } + } + + private void checkAnnotationTarget(@NotNull PyExpression expression) { + final PyExpression innerExpr = PyPsiUtils.flattenParens(expression); + if (innerExpr instanceof PyTupleExpression || innerExpr instanceof PyListLiteralExpression) { + getHolder().createErrorAnnotation(innerExpr, "Variable annotation cannot be combined with tuple unpacking"); + } + else if (innerExpr != null && !(innerExpr instanceof PyTargetExpression || innerExpr instanceof PySubscriptionExpression)) { + getHolder().createErrorAnnotation(innerExpr, "Illegal target for variable annotation"); + } + } +} diff --git a/python/testData/highlighting/illegalVariableAnnotationTarget.py b/python/testData/highlighting/illegalVariableAnnotationTarget.py new file mode 100644 index 000000000000..cbaecf67be4e --- /dev/null +++ b/python/testData/highlighting/illegalVariableAnnotationTarget.py @@ -0,0 +1,12 @@ +(x): int = 42 +(((x))): float +x['foo']: str +f(42).attr: dict + +2 ** 8: int +f(): bool +x, y, z: Tuple[int, ...] +(x, y, z): Tuple[int, int, int] +[x, y, z]: Tuple[Any, Any, Any] +x, *xs: tuple = range(10) +x:int = y = 42 \ No newline at end of file diff --git a/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java b/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java index b9c6daeaf54e..5991a6d16135 100644 --- a/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java +++ b/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java @@ -297,6 +297,10 @@ public class PythonHighlightingTest extends PyTestCase { doTest(LanguageLevel.PYTHON35, true, false); } + public void testIllegalVariableAnnotationTarget() { + doTest(LanguageLevel.PYTHON36, true, false); + } + // --- private void doTest(final LanguageLevel languageLevel, final boolean checkWarnings, final boolean checkInfos) { PythonLanguageLevelPusher.setForcedLanguageLevel(myFixture.getProject(), languageLevel); From 18f9ba8b6e6d3f73834140675a7a49c58429f93e Mon Sep 17 00:00:00 2001 From: Mikhail Golubev Date: Wed, 14 Sep 2016 18:15:42 +0300 Subject: [PATCH 12/23] PY-20744 PyTargetExpression#getAnnotation() better handles illegal annotation targets --- .../psi/impl/PyTargetExpressionImpl.java | 19 ++++++++++++++++--- .../com/jetbrains/python/PyTypingTest.java | 9 +++++++++ 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/python/src/com/jetbrains/python/psi/impl/PyTargetExpressionImpl.java b/python/src/com/jetbrains/python/psi/impl/PyTargetExpressionImpl.java index 90e30082cf6e..ec27e5b09fc8 100644 --- a/python/src/com/jetbrains/python/psi/impl/PyTargetExpressionImpl.java +++ b/python/src/com/jetbrains/python/psi/impl/PyTargetExpressionImpl.java @@ -217,9 +217,22 @@ public class PyTargetExpressionImpl extends PyBaseElementImpl Date: Thu, 15 Sep 2016 13:36:24 +0300 Subject: [PATCH 13/23] PY-20744 Consider variable annotations only in current file to prevent unstabbing everywhere It will be fixed eventually when we start storing annotations for parameter, functions and target expressions in stub files and process them using PyTypeParser only. --- .../python/codeInsight/PyTypingTypeProvider.java | 16 +++++++++------- .../__init__.py | 0 .../variableAnnotationsInExternalFiles/lib.py | 1 + .../variableAnnotationsInExternalFiles/main.py | 3 +++ .../com/jetbrains/python/PyStubsTest.java | 13 +++++++++++++ 5 files changed, 26 insertions(+), 7 deletions(-) create mode 100644 python/testData/stubs/variableAnnotationsInExternalFiles/__init__.py create mode 100644 python/testData/stubs/variableAnnotationsInExternalFiles/lib.py create mode 100644 python/testData/stubs/variableAnnotationsInExternalFiles/main.py diff --git a/python/src/com/jetbrains/python/codeInsight/PyTypingTypeProvider.java b/python/src/com/jetbrains/python/codeInsight/PyTypingTypeProvider.java index 3d9a6c001553..cdd550e018fc 100644 --- a/python/src/com/jetbrains/python/codeInsight/PyTypingTypeProvider.java +++ b/python/src/com/jetbrains/python/codeInsight/PyTypingTypeProvider.java @@ -176,14 +176,16 @@ public class PyTypingTypeProvider extends PyTypeProviderBase { public PyType getReferenceType(@NotNull PsiElement referenceTarget, TypeEvalContext context, @Nullable PsiElement anchor) { if (referenceTarget instanceof PyTargetExpression) { final PyTargetExpression target = (PyTargetExpression)referenceTarget; - // XXX: Requires switching from stub to AST - final PyAnnotation annotation = target.getAnnotation(); - if (annotation != null) { - final PyExpression value = annotation.getValue(); - if (value != null) { - return getType(value, new Context(context)); + if (context.maySwitchToAST(target)) { + // XXX: Requires switching from stub to AST + final PyAnnotation annotation = target.getAnnotation(); + if (annotation != null) { + final PyExpression value = annotation.getValue(); + if (value != null) { + return getType(value, new Context(context)); + } + return null; } - return null; } final String comment = target.getTypeCommentAnnotation(); if (comment != null) { diff --git a/python/testData/stubs/variableAnnotationsInExternalFiles/__init__.py b/python/testData/stubs/variableAnnotationsInExternalFiles/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/python/testData/stubs/variableAnnotationsInExternalFiles/lib.py b/python/testData/stubs/variableAnnotationsInExternalFiles/lib.py new file mode 100644 index 000000000000..80b60df6b81c --- /dev/null +++ b/python/testData/stubs/variableAnnotationsInExternalFiles/lib.py @@ -0,0 +1 @@ +attr: int = ... \ No newline at end of file diff --git a/python/testData/stubs/variableAnnotationsInExternalFiles/main.py b/python/testData/stubs/variableAnnotationsInExternalFiles/main.py new file mode 100644 index 000000000000..662608fcd7b6 --- /dev/null +++ b/python/testData/stubs/variableAnnotationsInExternalFiles/main.py @@ -0,0 +1,3 @@ +from .lib import attr + +x = attr diff --git a/python/testSrc/com/jetbrains/python/PyStubsTest.java b/python/testSrc/com/jetbrains/python/PyStubsTest.java index c4bddf13d69a..a03029b3ee47 100644 --- a/python/testSrc/com/jetbrains/python/PyStubsTest.java +++ b/python/testSrc/com/jetbrains/python/PyStubsTest.java @@ -596,4 +596,17 @@ public class PyStubsTest extends PyTestCase { assertNotParsed(file1); assertNotParsed(file2); } + + public void testVariableAnnotationsInExternalFiles() { + runWithLanguageLevel(LanguageLevel.PYTHON36, () -> { + final PyFile current = getTestFile(getTestName(true) + "/main.py"); + final PyFile external = getTestFile(getTestName(true) + "/lib.py"); + final PyTargetExpression attr = current.findTopLevelAttribute("x"); + assertNotNull(attr); + final TypeEvalContext context = TypeEvalContext.codeAnalysis(myFixture.getProject(), current); + // Will turn into concrete type when we start saving annotations in stubs + assertNull(context.getType(attr)); + assertNotParsed(external); + }); + } } From b16311ef602d2ac18cd3bc12feb17437891708c2 Mon Sep 17 00:00:00 2001 From: Mikhail Golubev Date: Tue, 6 Sep 2016 20:57:13 +0300 Subject: [PATCH 14/23] PY-18972 Initial support of f-string literals Namely, Python lexer, compatibility inspection and unsupported features annotator are aware of them now. --- .../jetbrains/python/lexer/_PythonLexer.java | 556 +++++++++--------- .../python/lexer/PyStringLiteralLexer.java | 12 + .../com/jetbrains/python/lexer/Python.flex | 4 +- .../impl/PyStringLiteralExpressionImpl.java | 1 + .../validation/CompatibilityVisitor.java | 1 + .../testData/highlighting/fStringLiterals.py | 9 + .../stringLiteralExpression.py | 12 + python/testData/intentions/removeLeadingF.py | 1 + .../intentions/removeLeadingF_after.py | 1 + python/testData/psi/FStrings.py | 7 + python/testData/psi/FStrings.txt | 63 ++ .../python/PythonHighlightingTest.java | 4 + .../com/jetbrains/python/PythonLexerTest.java | 7 + .../jetbrains/python/PythonParsingTest.java | 5 + .../python/intentions/PyIntentionTest.java | 5 + 15 files changed, 411 insertions(+), 277 deletions(-) create mode 100644 python/testData/highlighting/fStringLiterals.py create mode 100644 python/testData/intentions/removeLeadingF.py create mode 100644 python/testData/intentions/removeLeadingF_after.py create mode 100644 python/testData/psi/FStrings.py create mode 100644 python/testData/psi/FStrings.txt diff --git a/python/gen/com/jetbrains/python/lexer/_PythonLexer.java b/python/gen/com/jetbrains/python/lexer/_PythonLexer.java index 51143eb991ce..c8b81989dc44 100644 --- a/python/gen/com/jetbrains/python/lexer/_PythonLexer.java +++ b/python/gen/com/jetbrains/python/lexer/_PythonLexer.java @@ -117,7 +117,7 @@ class _PythonLexer implements FlexLexer { static final char ZZ_CMAP_A[] = zzUnpackCMap( "\11\0\1\31\1\33\1\111\1\32\1\14\22\0\1\30\1\76\1\27\1\13\1\0\1\70\1\71\1\25"+ "\1\100\1\101\1\65\1\63\1\106\1\21\1\17\1\67\1\1\1\5\6\3\2\2\1\107\1\34\1\75"+ - "\1\64\1\74\1\0\1\66\1\4\1\11\1\23\1\4\1\20\1\4\3\15\1\22\1\15\1\12\2\15\1"+ + "\1\64\1\74\1\0\1\66\1\4\1\11\1\23\1\4\1\20\1\23\3\15\1\22\1\15\1\12\2\15\1"+ "\10\2\15\1\24\2\15\1\24\2\15\1\6\2\15\1\102\1\26\1\103\1\73\1\7\1\110\1\35"+ "\1\44\1\46\1\37\1\41\1\53\1\60\1\62\1\51\1\22\1\45\1\47\1\57\1\36\1\50\1\55"+ "\1\15\1\42\1\40\1\43\1\52\1\15\1\61\1\54\1\56\1\15\1\104\1\72\1\105\1\77\6"+ @@ -182,27 +182,27 @@ class _PythonLexer implements FlexLexer { "\1\16\1\17\1\20\1\21\1\22\1\23\1\24\1\25"+ "\1\26\1\27\1\30\1\1\1\31\1\32\1\33\1\34"+ "\1\35\1\36\1\37\1\40\1\41\1\42\2\43\1\44"+ - "\2\45\1\46\1\3\2\47\3\3\1\41\1\2\5\0"+ + "\2\45\1\46\1\3\2\47\4\3\1\41\1\2\5\0"+ "\1\2\1\50\1\0\1\51\1\0\1\3\1\50\1\52"+ "\1\53\3\7\1\54\3\7\15\3\1\55\1\56\1\57"+ "\1\60\10\3\1\61\1\62\1\63\1\64\1\65\1\66"+ "\1\67\1\70\1\71\1\72\1\73\1\74\1\75\1\76"+ "\1\77\1\100\1\101\1\0\3\45\1\102\3\45\1\3"+ - "\6\47\1\3\2\0\1\103\1\0\1\2\1\0\1\2"+ + "\6\47\2\3\2\0\1\103\1\0\1\2\1\0\1\2"+ "\1\0\1\2\1\0\1\50\1\0\1\3\1\0\1\7"+ "\1\104\1\105\1\0\1\104\1\106\1\3\1\107\1\110"+ "\1\111\5\3\1\112\6\3\1\113\5\3\1\114\1\115"+ "\1\116\1\117\1\0\1\45\1\120\1\121\1\0\1\120"+ - "\1\3\1\47\2\122\3\0\2\123\1\0\1\3\1\124"+ - "\1\125\10\3\1\126\1\3\1\127\3\3\3\0\2\121"+ - "\12\0\2\104\1\0\2\3\1\130\1\3\1\131\1\132"+ - "\4\3\1\133\1\3\1\134\3\0\2\120\4\0\2\122"+ + "\1\3\1\47\2\122\1\0\2\123\1\0\1\3\1\124"+ + "\1\125\10\3\1\126\1\3\1\127\3\3\1\0\2\121"+ + "\6\0\2\104\1\0\2\3\1\130\1\3\1\131\1\132"+ + "\4\3\1\133\1\3\1\134\1\0\2\120\2\0\2\122"+ "\1\0\3\104\1\135\1\136\1\137\1\3\1\140\1\141"+ "\1\3\1\142\3\120\3\122\1\123\1\0\1\143\2\0"+ "\1\3\1\144\4\0\2\104\1\145\2\120\2\122"; private static int [] zzUnpackAction() { - int [] result = new int[307]; + int [] result = new int[297]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -236,39 +236,38 @@ class _PythonLexer implements FlexLexer { "\0\336\0\336\0\336\0\336\0\336\0\336\0\336\0\336"+ "\0\336\0\336\0\u0bda\0\u0c24\0\u0c6e\0\u0cb8\0\336\0\u0d02"+ "\0\u0d4c\0\u0d96\0\u0de0\0\u0e2a\0\u0e74\0\u0ebe\0\u0f08\0\u0f52"+ - "\0\u0f9c\0\u0fe6\0\u1030\0\u107a\0\336\0\u10c4\0\u110e\0\336"+ - "\0\u1158\0\u11a2\0\u11ec\0\336\0\336\0\u1236\0\u1280\0\u12ca"+ - "\0\336\0\u1314\0\u135e\0\u13a8\0\u13f2\0\u143c\0\u1486\0\u14d0"+ + "\0\u0f9c\0\u0fe6\0\u1030\0\u107a\0\u10c4\0\336\0\u110e\0\u1158"+ + "\0\336\0\u11a2\0\u11ec\0\u1236\0\336\0\336\0\u1280\0\u12ca"+ + "\0\u1314\0\336\0\u135e\0\u13a8\0\u13f2\0\u143c\0\u1486\0\u14d0"+ "\0\u151a\0\u1564\0\u15ae\0\u15f8\0\u1642\0\u168c\0\u16d6\0\u1720"+ - "\0\u176a\0\u01bc\0\u01bc\0\u01bc\0\u01bc\0\u17b4\0\u17fe\0\u1848"+ - "\0\u1892\0\u18dc\0\u1926\0\u1970\0\u19ba\0\336\0\336\0\336"+ - "\0\u1a04\0\336\0\336\0\u1a4e\0\336\0\336\0\336\0\336"+ - "\0\336\0\u1a98\0\336\0\336\0\u1ae2\0\336\0\u1b2c\0\u1b76"+ - "\0\u1bc0\0\u1c0a\0\336\0\u1c54\0\u1c9e\0\u1ce8\0\u1d32\0\u1d7c"+ - "\0\u1dc6\0\u1e10\0\u1e5a\0\u1ea4\0\u1eee\0\u1f38\0\u1f82\0\u0ebe"+ - "\0\336\0\u1fcc\0\u2016\0\u2060\0\u20aa\0\u20f4\0\u213e\0\u2188"+ - "\0\u21d2\0\u221c\0\u2266\0\u029a\0\u22b0\0\u22fa\0\336\0\u22b0"+ - "\0\u2344\0\u01bc\0\u238e\0\u01bc\0\u01bc\0\u01bc\0\u23d8\0\u2422"+ - "\0\u246c\0\u24b6\0\u2500\0\u01bc\0\u254a\0\u2594\0\u25de\0\u2628"+ - "\0\u2672\0\u26bc\0\u01bc\0\u2706\0\u2750\0\u279a\0\u27e4\0\u282e"+ - "\0\336\0\336\0\336\0\336\0\u2878\0\u28c2\0\u290c\0\336"+ - "\0\u28c2\0\u2956\0\u29a0\0\336\0\u29ea\0\u2a34\0\u2a7e\0\u2ac8"+ + "\0\u176a\0\u17b4\0\u01bc\0\u01bc\0\u01bc\0\u01bc\0\u17fe\0\u1848"+ + "\0\u1892\0\u18dc\0\u1926\0\u1970\0\u19ba\0\u1a04\0\336\0\336"+ + "\0\336\0\u1a4e\0\336\0\336\0\u1a98\0\336\0\336\0\336"+ + "\0\336\0\336\0\u1ae2\0\336\0\336\0\u1b2c\0\336\0\u1b76"+ + "\0\u1bc0\0\u1c0a\0\u1c54\0\336\0\u1c9e\0\u1ce8\0\u1d32\0\u1d7c"+ + "\0\u1dc6\0\u1e10\0\u1e5a\0\u1ea4\0\u1eee\0\u1f38\0\u1f82\0\u1fcc"+ + "\0\u2016\0\u0f08\0\336\0\u2060\0\u20aa\0\u20f4\0\u213e\0\u2188"+ + "\0\u21d2\0\u221c\0\u2266\0\u22b0\0\u22fa\0\u029a\0\u2344\0\u238e"+ + "\0\336\0\u2344\0\u23d8\0\u01bc\0\u2422\0\u01bc\0\u01bc\0\u01bc"+ + "\0\u246c\0\u24b6\0\u2500\0\u254a\0\u2594\0\u01bc\0\u25de\0\u2628"+ + "\0\u2672\0\u26bc\0\u2706\0\u2750\0\u01bc\0\u279a\0\u27e4\0\u282e"+ + "\0\u2878\0\u28c2\0\336\0\336\0\336\0\336\0\u290c\0\u2956"+ + "\0\u29a0\0\336\0\u2956\0\u29ea\0\u2a34\0\336\0\u2a7e\0\u2ac8"+ "\0\u2b12\0\u2b5c\0\u2ba6\0\u2bf0\0\u2c3a\0\u01bc\0\u01bc\0\u2c84"+ "\0\u2cce\0\u2d18\0\u2d62\0\u2dac\0\u2df6\0\u2e40\0\u2e8a\0\u01bc"+ "\0\u2ed4\0\u01bc\0\u2f1e\0\u2f68\0\u2fb2\0\u2ffc\0\u3046\0\u3090"+ "\0\u30da\0\u3124\0\u316e\0\u31b8\0\u3202\0\u324c\0\u3296\0\u32e0"+ - "\0\u332a\0\u3374\0\u33be\0\u3408\0\u3452\0\u349c\0\u34e6\0\u3530"+ - "\0\u357a\0\u01bc\0\u35c4\0\u01bc\0\u01bc\0\u360e\0\u3658\0\u36a2"+ - "\0\u36ec\0\u01bc\0\u3736\0\u01bc\0\u3780\0\u37ca\0\u3814\0\u385e"+ - "\0\u38a8\0\u38f2\0\u1dc6\0\u1eee\0\u393c\0\u3986\0\u39d0\0\u3a1a"+ - "\0\u3a64\0\u3aae\0\u3af8\0\u01bc\0\u01bc\0\u01bc\0\u3b42\0\u01bc"+ - "\0\u01bc\0\u3b8c\0\u01bc\0\u28c2\0\u3bd6\0\u3c20\0\336\0\u3c6a"+ - "\0\u3cb4\0\336\0\u3a64\0\336\0\u3cfe\0\u3d48\0\u3d92\0\u01bc"+ - "\0\u3ddc\0\u3e26\0\u3e70\0\u3eba\0\u3408\0\u34e6\0\u01bc\0\u3814"+ - "\0\u38f2\0\u393c\0\u3a1a"; + "\0\u332a\0\u3374\0\u33be\0\u01bc\0\u3408\0\u01bc\0\u01bc\0\u3452"+ + "\0\u349c\0\u34e6\0\u3530\0\u01bc\0\u357a\0\u01bc\0\u35c4\0\u360e"+ + "\0\u3658\0\u36a2\0\u36ec\0\u3736\0\u3780\0\u37ca\0\u3814\0\u385e"+ + "\0\u38a8\0\u01bc\0\u01bc\0\u01bc\0\u38f2\0\u01bc\0\u01bc\0\u393c"+ + "\0\u01bc\0\u2956\0\u3986\0\u39d0\0\336\0\u3a1a\0\u3a64\0\336"+ + "\0\u3814\0\336\0\u3aae\0\u3af8\0\u3b42\0\u01bc\0\u3b8c\0\u3bd6"+ + "\0\u3c20\0\u3c6a\0\u324c\0\u332a\0\u01bc\0\u35c4\0\u36a2\0\u36ec"+ + "\0\u37ca"; private static int [] zzUnpackRowMap() { - int [] result = new int[307]; + int [] result = new int[297]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -302,257 +301,264 @@ class _PythonLexer implements FlexLexer { "\1\65\1\66\1\67\1\70\1\71\1\4\11\72\1\73"+ "\1\72\1\74\1\0\6\72\2\73\1\75\1\15\1\76"+ "\1\17\1\20\1\21\1\77\6\72\1\73\1\72\1\73"+ - "\1\72\1\73\3\72\1\73\36\72\1\0\1\4\1\5"+ + "\1\72\1\73\3\72\2\73\35\72\1\0\1\4\1\5"+ "\2\6\1\7\1\6\3\7\1\100\1\7\1\74\1\4"+ "\1\7\1\4\1\12\1\7\1\13\1\7\2\100\1\101"+ "\1\15\1\102\1\17\1\20\1\21\1\77\1\23\1\24"+ "\1\25\1\26\1\7\1\27\1\103\1\31\1\104\1\7"+ - "\1\105\1\34\1\35\1\36\1\100\1\37\1\7\1\40"+ + "\1\105\1\34\1\35\1\36\1\100\1\106\1\7\1\40"+ "\1\41\1\7\1\42\1\43\1\7\1\44\1\45\1\46"+ "\1\47\1\50\1\51\1\52\1\53\1\54\1\55\1\56"+ "\1\57\1\60\1\61\1\62\1\63\1\64\1\65\1\66"+ - "\1\67\1\106\1\71\1\4\113\0\1\107\1\110\1\107"+ - "\1\0\1\107\1\111\1\112\1\113\1\114\1\115\4\0"+ - "\1\116\1\117\1\0\1\120\16\0\1\117\2\0\1\114"+ - "\2\0\1\115\1\113\3\0\1\111\36\0\3\6\1\0"+ - "\1\6\1\0\1\121\2\0\1\115\4\0\1\116\1\117"+ - "\1\0\1\120\16\0\1\117\5\0\1\115\43\0\12\7"+ + "\1\67\1\107\1\71\1\4\113\0\1\110\1\111\1\110"+ + "\1\0\1\110\1\112\1\113\1\114\1\115\1\116\4\0"+ + "\1\117\1\120\1\0\1\121\16\0\1\120\2\0\1\115"+ + "\2\0\1\116\1\114\3\0\1\112\36\0\3\6\1\0"+ + "\1\6\1\0\1\122\2\0\1\116\4\0\1\117\1\120"+ + "\1\0\1\121\16\0\1\120\5\0\1\116\43\0\12\7"+ "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\26\7"+ - "\30\0\10\7\1\122\1\7\2\0\2\7\1\0\1\7"+ - "\1\0\1\7\2\122\1\14\1\0\1\16\5\0\5\7"+ - "\1\122\1\7\1\122\1\7\1\122\3\7\1\122\10\7"+ - "\27\0\14\11\1\0\16\11\1\0\56\11\1\0\3\123"+ - "\1\0\1\123\170\0\1\124\7\0\1\125\15\0\14\126"+ - "\1\0\10\126\1\127\1\130\4\126\1\131\56\126\14\132"+ - "\1\0\11\132\1\133\1\134\3\132\1\131\56\132\1\0"+ + "\30\0\10\7\1\123\1\7\2\0\2\7\1\0\1\7"+ + "\1\0\1\7\2\123\1\14\1\0\1\16\5\0\5\7"+ + "\1\123\1\7\1\123\1\7\1\123\3\7\2\123\7\7"+ + "\27\0\14\11\1\0\16\11\1\0\56\11\1\0\3\124"+ + "\1\0\1\124\170\0\1\125\7\0\1\126\15\0\14\127"+ + "\1\0\10\127\1\130\1\131\4\127\1\132\56\127\14\133"+ + "\1\0\11\133\1\134\1\135\3\133\1\132\56\133\1\0"+ "\12\7\2\0\2\7\1\0\1\7\1\0\3\7\10\0"+ - "\1\7\1\135\1\7\1\136\22\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\13\7\1\137"+ + "\1\7\1\136\1\7\1\137\22\7\30\0\12\7\2\0"+ + "\2\7\1\0\1\7\1\0\3\7\10\0\13\7\1\140"+ "\12\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\4\7\1\140\21\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\12\7\1\141"+ - "\4\7\1\142\6\7\30\0\10\7\1\122\1\7\2\0"+ - "\2\7\1\0\1\7\1\0\1\7\2\122\1\14\1\0"+ - "\1\16\5\0\1\143\3\7\1\144\1\122\1\7\1\122"+ - "\1\7\1\122\3\7\1\122\10\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\5\7\1\145"+ - "\20\7\30\0\10\7\1\122\1\7\2\0\2\7\1\0"+ - "\1\7\1\0\1\7\2\122\1\14\1\0\1\16\5\0"+ - "\5\7\1\146\1\7\1\122\1\7\1\122\3\7\1\122"+ - "\10\7\30\0\10\7\1\122\1\7\2\0\2\7\1\0"+ - "\1\7\1\0\1\7\2\122\1\14\1\0\1\16\5\0"+ - "\5\7\1\122\1\7\1\122\1\7\1\122\1\147\1\150"+ - "\1\7\1\122\10\7\30\0\12\7\2\0\2\7\1\0"+ - "\1\7\1\0\3\7\10\0\1\151\25\7\30\0\12\7"+ + "\3\7\10\0\4\7\1\141\21\7\30\0\12\7\2\0"+ + "\2\7\1\0\1\7\1\0\3\7\10\0\12\7\1\142"+ + "\4\7\1\143\6\7\30\0\10\7\1\123\1\7\2\0"+ + "\2\7\1\0\1\7\1\0\1\7\2\123\1\14\1\0"+ + "\1\16\5\0\1\144\3\7\1\145\1\123\1\7\1\123"+ + "\1\7\1\123\3\7\2\123\7\7\30\0\12\7\2\0"+ + "\2\7\1\0\1\7\1\0\3\7\10\0\5\7\1\146"+ + "\20\7\30\0\10\7\1\123\1\7\2\0\2\7\1\0"+ + "\1\7\1\0\1\7\2\123\1\14\1\0\1\16\5\0"+ + "\5\7\1\147\1\7\1\123\1\7\1\123\3\7\2\123"+ + "\7\7\30\0\10\7\1\123\1\7\2\0\2\7\1\0"+ + "\1\7\1\0\1\7\2\123\1\14\1\0\1\16\5\0"+ + "\5\7\1\123\1\7\1\123\1\7\1\123\1\150\1\151"+ + "\1\7\2\123\7\7\30\0\12\7\2\0\2\7\1\0"+ + "\1\7\1\0\3\7\10\0\1\152\25\7\30\0\12\7"+ "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\5\7"+ - "\1\152\20\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\1\7\1\153\1\7\1\154\12\7"+ - "\1\155\3\7\1\156\3\7\30\0\12\7\2\0\2\7"+ - "\1\0\1\7\1\0\3\7\10\0\5\7\1\157\5\7"+ - "\1\160\1\161\11\7\30\0\12\7\2\0\2\7\1\0"+ - "\1\7\1\0\3\7\10\0\1\162\25\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\14\7"+ - "\1\163\11\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\12\7\1\164\13\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\25\7"+ - "\1\165\113\0\1\166\111\0\1\167\111\0\1\170\1\171"+ - "\110\0\1\172\111\0\1\173\2\0\1\174\106\0\1\175"+ - "\111\0\1\176\111\0\1\177\111\0\1\200\111\0\1\201"+ - "\7\0\1\202\101\0\1\203\7\0\1\204\1\205\100\0"+ - "\1\206\36\0\1\207\11\0\2\207\1\75\1\0\1\76"+ - "\12\0\1\207\1\0\1\207\1\0\1\207\3\0\1\207"+ - "\37\0\14\74\1\0\16\74\1\0\56\74\14\210\1\0"+ - "\10\210\1\211\1\212\4\210\1\213\56\210\14\214\1\0"+ - "\11\214\1\215\1\216\3\214\1\213\56\214\1\0\10\7"+ - "\1\217\1\7\2\0\2\7\1\0\1\7\1\0\1\7"+ - "\2\217\1\101\1\0\1\102\5\0\5\7\1\217\1\7"+ - "\1\217\1\7\1\217\3\7\1\217\10\7\27\0\14\220"+ - "\1\0\10\220\1\221\1\222\4\220\1\0\56\220\14\223"+ - "\1\0\11\223\1\224\1\225\3\223\1\0\56\223\1\0"+ - "\10\7\1\217\1\7\2\0\2\7\1\0\1\7\1\0"+ - "\1\7\2\217\1\101\1\0\1\102\5\0\1\143\3\7"+ - "\1\144\1\217\1\7\1\217\1\7\1\217\3\7\1\217"+ - "\10\7\30\0\10\7\1\217\1\7\2\0\2\7\1\0"+ - "\1\7\1\0\1\7\2\217\1\101\1\0\1\102\5\0"+ - "\5\7\1\226\1\7\1\217\1\7\1\217\3\7\1\217"+ - "\10\7\30\0\10\7\1\217\1\7\2\0\2\7\1\0"+ - "\1\7\1\0\1\7\2\217\1\101\1\0\1\102\5\0"+ - "\5\7\1\217\1\7\1\217\1\7\1\217\1\147\1\150"+ - "\1\7\1\217\10\7\42\0\1\227\14\0\1\230\2\0"+ - "\1\231\57\0\1\107\1\110\1\107\1\0\1\107\1\0"+ - "\1\112\2\0\1\115\4\0\1\116\1\117\1\0\1\120"+ - "\16\0\1\117\5\0\1\115\43\0\3\110\1\0\1\110"+ - "\1\0\1\232\7\0\1\116\1\117\1\0\1\120\16\0"+ - "\1\117\51\0\5\233\1\0\1\234\1\0\1\233\6\0"+ - "\1\233\2\0\1\233\11\0\1\233\1\0\1\233\1\0"+ - "\1\233\2\0\1\233\1\0\1\233\4\0\1\233\37\0"+ - "\1\107\1\110\1\107\1\0\1\107\105\0\1\235\1\0"+ - "\1\235\1\0\1\235\1\0\1\236\103\0\1\237\3\0"+ - "\1\237\1\0\1\240\103\0\3\123\1\0\1\123\12\0"+ - "\1\117\1\0\1\120\16\0\1\117\51\0\3\241\1\0"+ - "\1\241\13\0\1\242\41\0\1\242\27\0\3\6\1\0"+ - "\1\6\105\0\10\7\1\243\1\7\2\0\2\7\1\0"+ - "\1\7\1\0\1\7\2\243\1\14\1\0\1\16\5\0"+ - "\5\7\1\243\1\7\1\243\1\7\1\243\3\7\1\243"+ - "\10\7\30\0\3\123\1\0\1\123\1\0\1\244\10\0"+ - "\1\117\1\0\1\120\16\0\1\117\50\0\14\126\1\0"+ - "\10\126\1\245\1\130\4\126\1\131\56\126\25\0\1\246"+ - "\1\247\1\0\2\250\1\0\2\131\55\0\112\126\14\132"+ - "\1\0\11\132\1\133\1\245\3\132\1\131\170\132\26\0"+ - "\1\247\1\251\2\250\1\0\2\131\56\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\2\7\1\252"+ - "\23\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\3\7\1\253\22\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\6\7\1\254"+ - "\17\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\12\7\1\255\3\7\1\256\7\7\30\0"+ - "\12\7\2\0\2\7\1\0\1\7\1\0\3\7\10\0"+ - "\3\7\1\257\10\7\1\260\11\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\11\7\1\261"+ - "\14\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\14\7\1\262\11\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\6\7\1\263"+ - "\17\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\21\7\1\264\4\7\30\0\10\7\1\243"+ - "\1\7\2\0\2\7\1\0\1\7\1\0\1\7\2\243"+ - "\1\14\1\0\1\16\5\0\4\7\1\265\1\243\1\7"+ - "\1\243\1\7\1\243\3\7\1\243\10\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\1\266"+ + "\1\153\20\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\1\7\1\154\1\7\1\155\12\7"+ + "\1\156\3\7\1\157\3\7\30\0\10\7\1\123\1\7"+ + "\2\0\2\7\1\0\1\7\1\0\1\7\2\123\1\14"+ + "\1\0\1\16\5\0\5\7\1\160\1\7\1\123\1\7"+ + "\1\123\1\7\1\161\1\162\2\123\7\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\1\163"+ "\25\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\1\7\1\267\24\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\22\7\1\270"+ - "\3\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\20\7\1\271\5\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\13\7\1\272"+ - "\12\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\5\7\1\273\20\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\1\7\1\274"+ - "\24\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\3\7\1\275\22\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\4\7\1\276"+ - "\21\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\13\7\1\277\12\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\14\7\1\300"+ - "\11\7\113\0\1\301\111\0\1\302\111\0\1\303\111\0"+ - "\1\304\36\0\1\305\11\0\2\305\1\75\1\0\1\76"+ - "\12\0\1\305\1\0\1\305\1\0\1\305\3\0\1\305"+ - "\37\0\14\210\1\0\10\210\1\306\1\212\4\210\1\213"+ - "\56\210\25\0\1\307\1\310\1\0\2\311\1\0\2\213"+ - "\55\0\112\210\14\214\1\0\11\214\1\215\1\306\3\214"+ - "\1\213\170\214\26\0\1\310\1\312\2\311\1\0\2\213"+ - "\56\0\10\7\1\313\1\7\2\0\2\7\1\0\1\7"+ - "\1\0\1\7\2\313\1\101\1\0\1\102\5\0\5\7"+ - "\1\313\1\7\1\313\1\7\1\313\3\7\1\313\10\7"+ - "\27\0\14\220\1\0\10\220\1\314\1\222\4\220\1\0"+ - "\56\220\25\0\1\315\64\0\112\220\14\223\1\0\11\223"+ - "\1\224\1\314\3\223\1\0\170\223\27\0\1\316\63\0"+ - "\10\7\1\313\1\7\2\0\2\7\1\0\1\7\1\0"+ - "\1\7\2\313\1\101\1\0\1\102\5\0\4\7\1\265"+ - "\1\313\1\7\1\313\1\7\1\313\3\7\1\313\10\7"+ - "\27\0\14\227\1\0\16\227\1\231\56\227\1\0\3\110"+ - "\1\0\1\110\105\0\5\233\1\0\1\234\1\0\1\233"+ - "\1\115\5\0\1\233\2\0\1\233\11\0\1\233\1\0"+ - "\1\233\1\0\1\233\2\0\1\233\1\0\1\233\1\115"+ - "\3\0\1\233\37\0\5\233\3\0\1\233\6\0\1\233"+ - "\2\0\1\233\11\0\1\233\1\0\1\233\1\0\1\233"+ - "\2\0\1\233\1\0\1\233\4\0\1\233\37\0\1\235"+ - "\1\0\1\235\1\0\1\235\1\0\1\236\2\0\1\115"+ - "\34\0\1\115\43\0\1\235\1\0\1\235\1\0\1\235"+ - "\105\0\1\237\3\0\1\237\1\0\1\240\2\0\1\115"+ - "\34\0\1\115\43\0\1\237\3\0\1\237\105\0\3\241"+ - "\1\0\1\241\1\0\1\242\12\0\1\120\70\0\3\241"+ - "\1\0\1\241\105\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\1\317\1\0\1\320\5\0\26\7\55\0"+ - "\1\247\1\0\2\250\1\0\2\131\55\0\25\246\1\321"+ - "\1\322\63\246\26\251\1\323\1\324\62\251\1\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\4\7"+ - "\1\325\21\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\4\7\1\326\21\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\16\7"+ - "\1\327\7\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\4\7\1\330\21\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\3\7"+ - "\1\331\22\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\15\7\1\332\10\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\1\333"+ - "\25\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\3\7\1\334\22\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\6\7\1\335"+ - "\17\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\7\7\1\336\16\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\13\7\1\337"+ - "\12\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\22\7\1\340\3\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\1\341\25\7"+ - "\30\0\12\7\2\0\2\7\1\0\1\7\1\0\3\7"+ - "\10\0\3\7\1\342\22\7\30\0\12\7\2\0\2\7"+ - "\1\0\1\7\1\0\3\7\10\0\12\7\1\343\13\7"+ - "\30\0\12\7\2\0\2\7\1\0\1\7\1\0\3\7"+ - "\10\0\7\7\1\344\16\7\30\0\12\7\2\0\2\7"+ - "\1\0\1\7\1\0\3\7\10\0\12\7\1\345\13\7"+ - "\54\0\1\346\1\0\1\347\110\0\1\310\1\0\2\311"+ - "\1\0\2\213\55\0\25\307\1\350\1\351\63\307\26\312"+ - "\1\352\1\353\62\312\1\0\12\7\2\0\2\7\1\0"+ - "\1\7\1\0\3\7\1\354\1\0\1\355\5\0\26\7"+ - "\27\0\25\315\1\356\1\357\63\315\26\316\1\360\1\361"+ - "\62\316\25\0\1\362\113\0\1\363\62\0\25\246\1\364"+ - "\1\365\175\246\140\251\1\366\1\367\62\251\1\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\5\7"+ - "\1\370\20\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\20\7\1\371\5\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\4\7"+ - "\1\372\21\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\5\7\1\373\20\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\10\7"+ - "\1\374\15\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\3\7\1\375\22\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\14\7"+ - "\1\376\11\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\2\7\1\377\23\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\5\7"+ - "\1\u0100\20\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\12\7\1\u0101\13\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\2\7"+ - "\1\u0102\23\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\1\u0103\25\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\4\7\1\u0104"+ - "\21\7\54\0\1\u0105\113\0\1\u0106\62\0\25\307\1\u0107"+ - "\1\u0108\175\307\140\312\1\u0109\1\u010a\62\312\25\0\1\u010b"+ - "\113\0\1\u010c\62\0\25\315\1\u010d\1\u010e\175\315\140\316"+ - "\1\u010f\1\u0110\62\316\25\0\1\246\113\0\1\251\62\0"+ - "\25\246\1\u0111\1\365\110\246\1\u0112\1\365\63\246\26\251"+ - "\1\366\1\u0113\110\251\1\366\1\u0111\62\251\1\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\6\7"+ - "\1\u0114\17\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\6\7\1\u0115\17\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\1\7"+ - "\1\u0116\24\7\30\0\12\7\2\0\2\7\1\0\1\7"+ - "\1\0\3\7\10\0\1\7\1\u0117\24\7\30\0\12\7"+ - "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\1\u0118"+ - "\25\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\6\7\1\u0119\17\7\30\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\12\7\1\u011a"+ + "\3\7\10\0\14\7\1\164\11\7\30\0\12\7\2\0"+ + "\2\7\1\0\1\7\1\0\3\7\10\0\12\7\1\165"+ "\13\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\12\7\1\u011b\13\7\54\0\1\307\113\0"+ - "\1\312\62\0\25\307\1\u011c\1\u0108\110\307\1\u011d\1\u0108"+ - "\63\307\26\312\1\u0109\1\u011e\110\312\1\u0109\1\u011c\62\312"+ - "\25\315\1\u011f\1\u010e\110\315\1\u0120\1\u010e\63\315\26\316"+ - "\1\u010f\1\u0121\110\316\1\u010f\1\u011f\62\316\26\0\1\u0122"+ - "\1\0\2\u0123\1\0\2\u0124\55\0\25\246\1\u0125\1\365"+ - "\63\246\26\251\1\366\1\u0126\62\251\1\0\12\7\2\0"+ - "\2\7\1\0\1\7\1\0\3\7\10\0\15\7\1\u0127"+ - "\10\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ - "\3\7\10\0\21\7\1\u0128\4\7\27\0\25\307\1\u0129"+ - "\1\u0108\63\307\26\312\1\u0109\1\u012a\62\312\25\315\1\u012b"+ - "\1\u010e\63\315\26\316\1\u010f\1\u012c\62\316\25\246\1\u012d"+ - "\1\365\63\246\26\251\1\366\1\u012e\62\251\1\0\12\7"+ + "\3\7\10\0\25\7\1\166\113\0\1\167\111\0\1\170"+ + "\111\0\1\171\1\172\110\0\1\173\111\0\1\174\2\0"+ + "\1\175\106\0\1\176\111\0\1\177\111\0\1\200\111\0"+ + "\1\201\111\0\1\202\7\0\1\203\101\0\1\204\7\0"+ + "\1\205\1\206\100\0\1\207\36\0\1\210\11\0\2\210"+ + "\1\75\1\0\1\76\12\0\1\210\1\0\1\210\1\0"+ + "\1\210\3\0\2\210\36\0\14\74\1\0\16\74\1\0"+ + "\56\74\14\211\1\0\10\211\1\212\1\213\4\211\1\214"+ + "\56\211\14\215\1\0\11\215\1\216\1\217\3\215\1\214"+ + "\56\215\1\0\10\7\1\220\1\7\2\0\2\7\1\0"+ + "\1\7\1\0\1\7\2\220\1\101\1\0\1\102\5\0"+ + "\5\7\1\220\1\7\1\220\1\7\1\220\3\7\2\220"+ + "\7\7\27\0\14\221\1\0\10\221\1\222\1\223\4\221"+ + "\1\0\56\221\14\224\1\0\11\224\1\225\1\226\3\224"+ + "\1\0\56\224\1\0\10\7\1\220\1\7\2\0\2\7"+ + "\1\0\1\7\1\0\1\7\2\220\1\101\1\0\1\102"+ + "\5\0\1\144\3\7\1\145\1\220\1\7\1\220\1\7"+ + "\1\220\3\7\2\220\7\7\30\0\10\7\1\220\1\7"+ + "\2\0\2\7\1\0\1\7\1\0\1\7\2\220\1\101"+ + "\1\0\1\102\5\0\5\7\1\227\1\7\1\220\1\7"+ + "\1\220\3\7\2\220\7\7\30\0\10\7\1\220\1\7"+ + "\2\0\2\7\1\0\1\7\1\0\1\7\2\220\1\101"+ + "\1\0\1\102\5\0\5\7\1\220\1\7\1\220\1\7"+ + "\1\220\1\150\1\151\1\7\2\220\7\7\30\0\10\7"+ + "\1\220\1\7\2\0\2\7\1\0\1\7\1\0\1\7"+ + "\2\220\1\101\1\0\1\102\5\0\5\7\1\230\1\7"+ + "\1\220\1\7\1\220\1\7\1\161\1\162\2\220\7\7"+ + "\42\0\1\231\14\0\1\232\2\0\1\233\57\0\1\110"+ + "\1\111\1\110\1\0\1\110\1\0\1\113\2\0\1\116"+ + "\4\0\1\117\1\120\1\0\1\121\16\0\1\120\5\0"+ + "\1\116\43\0\3\111\1\0\1\111\1\0\1\234\7\0"+ + "\1\117\1\120\1\0\1\121\16\0\1\120\51\0\5\235"+ + "\1\0\1\236\1\0\1\235\6\0\1\235\2\0\1\235"+ + "\11\0\1\235\1\0\1\235\1\0\1\235\2\0\1\235"+ + "\1\0\1\235\4\0\1\235\37\0\1\110\1\111\1\110"+ + "\1\0\1\110\105\0\1\237\1\0\1\237\1\0\1\237"+ + "\1\0\1\240\103\0\1\241\3\0\1\241\1\0\1\242"+ + "\103\0\3\124\1\0\1\124\12\0\1\120\1\0\1\121"+ + "\16\0\1\120\51\0\3\243\1\0\1\243\13\0\1\244"+ + "\41\0\1\244\27\0\3\6\1\0\1\6\105\0\10\7"+ + "\1\245\1\7\2\0\2\7\1\0\1\7\1\0\1\7"+ + "\2\245\1\14\1\0\1\16\5\0\5\7\1\245\1\7"+ + "\1\245\1\7\1\245\3\7\2\245\7\7\30\0\3\124"+ + "\1\0\1\124\1\0\1\246\10\0\1\120\1\0\1\121"+ + "\16\0\1\120\50\0\14\127\1\0\10\127\1\247\1\131"+ + "\4\127\1\132\56\127\25\0\1\250\1\251\1\0\2\252"+ + "\1\0\2\132\55\0\112\127\14\133\1\0\11\133\1\134"+ + "\1\247\3\133\1\132\170\133\26\0\1\251\1\253\2\252"+ + "\1\0\2\132\56\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\2\7\1\254\23\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\3\7"+ + "\1\255\22\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\6\7\1\256\17\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\12\7"+ + "\1\257\3\7\1\260\7\7\30\0\12\7\2\0\2\7"+ + "\1\0\1\7\1\0\3\7\10\0\3\7\1\261\10\7"+ + "\1\262\11\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\11\7\1\263\14\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\14\7"+ + "\1\264\11\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\6\7\1\265\17\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\21\7"+ + "\1\266\4\7\30\0\10\7\1\245\1\7\2\0\2\7"+ + "\1\0\1\7\1\0\1\7\2\245\1\14\1\0\1\16"+ + "\5\0\4\7\1\267\1\245\1\7\1\245\1\7\1\245"+ + "\3\7\2\245\7\7\30\0\12\7\2\0\2\7\1\0"+ + "\1\7\1\0\3\7\10\0\1\270\25\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\1\7"+ + "\1\271\24\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\22\7\1\272\3\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\20\7"+ + "\1\273\5\7\30\0\10\7\1\245\1\7\2\0\2\7"+ + "\1\0\1\7\1\0\1\7\2\245\1\14\1\0\1\16"+ + "\5\0\5\7\1\245\1\7\1\245\1\7\1\245\1\7"+ + "\1\274\1\7\2\245\7\7\30\0\12\7\2\0\2\7"+ + "\1\0\1\7\1\0\3\7\10\0\5\7\1\275\20\7"+ + "\30\0\12\7\2\0\2\7\1\0\1\7\1\0\3\7"+ + "\10\0\1\7\1\276\24\7\30\0\12\7\2\0\2\7"+ + "\1\0\1\7\1\0\3\7\10\0\3\7\1\277\22\7"+ + "\30\0\12\7\2\0\2\7\1\0\1\7\1\0\3\7"+ + "\10\0\4\7\1\300\21\7\30\0\12\7\2\0\2\7"+ + "\1\0\1\7\1\0\3\7\10\0\13\7\1\301\12\7"+ + "\30\0\12\7\2\0\2\7\1\0\1\7\1\0\3\7"+ + "\10\0\14\7\1\302\11\7\113\0\1\303\111\0\1\304"+ + "\111\0\1\305\111\0\1\306\36\0\1\307\11\0\2\307"+ + "\1\75\1\0\1\76\12\0\1\307\1\0\1\307\1\0"+ + "\1\307\3\0\2\307\36\0\14\211\1\0\10\211\1\310"+ + "\1\213\4\211\1\214\56\211\25\0\1\311\1\312\1\0"+ + "\2\313\1\0\2\214\55\0\112\211\14\215\1\0\11\215"+ + "\1\216\1\310\3\215\1\214\170\215\26\0\1\312\1\314"+ + "\2\313\1\0\2\214\56\0\10\7\1\315\1\7\2\0"+ + "\2\7\1\0\1\7\1\0\1\7\2\315\1\101\1\0"+ + "\1\102\5\0\5\7\1\315\1\7\1\315\1\7\1\315"+ + "\3\7\2\315\7\7\27\0\14\221\1\0\10\221\1\316"+ + "\1\223\4\221\1\0\56\221\25\0\1\317\64\0\112\221"+ + "\14\224\1\0\11\224\1\225\1\316\3\224\1\0\170\224"+ + "\27\0\1\320\63\0\10\7\1\315\1\7\2\0\2\7"+ + "\1\0\1\7\1\0\1\7\2\315\1\101\1\0\1\102"+ + "\5\0\4\7\1\267\1\315\1\7\1\315\1\7\1\315"+ + "\3\7\2\315\7\7\30\0\10\7\1\315\1\7\2\0"+ + "\2\7\1\0\1\7\1\0\1\7\2\315\1\101\1\0"+ + "\1\102\5\0\5\7\1\315\1\7\1\315\1\7\1\315"+ + "\1\7\1\274\1\7\2\315\7\7\27\0\14\231\1\0"+ + "\16\231\1\233\56\231\1\0\3\111\1\0\1\111\105\0"+ + "\5\235\1\0\1\236\1\0\1\235\1\116\5\0\1\235"+ + "\2\0\1\235\11\0\1\235\1\0\1\235\1\0\1\235"+ + "\2\0\1\235\1\0\1\235\1\116\3\0\1\235\37\0"+ + "\5\235\3\0\1\235\6\0\1\235\2\0\1\235\11\0"+ + "\1\235\1\0\1\235\1\0\1\235\2\0\1\235\1\0"+ + "\1\235\4\0\1\235\37\0\1\237\1\0\1\237\1\0"+ + "\1\237\1\0\1\240\2\0\1\116\34\0\1\116\43\0"+ + "\1\237\1\0\1\237\1\0\1\237\105\0\1\241\3\0"+ + "\1\241\1\0\1\242\2\0\1\116\34\0\1\116\43\0"+ + "\1\241\3\0\1\241\105\0\3\243\1\0\1\243\1\0"+ + "\1\244\12\0\1\121\70\0\3\243\1\0\1\243\105\0"+ + "\12\7\2\0\2\7\1\0\1\7\1\0\3\7\1\14"+ + "\1\0\1\16\5\0\26\7\55\0\1\251\1\0\2\252"+ + "\1\0\2\132\55\0\25\250\1\321\1\322\63\250\26\253"+ + "\1\323\1\324\62\253\1\0\12\7\2\0\2\7\1\0"+ + "\1\7\1\0\3\7\10\0\4\7\1\325\21\7\30\0"+ + "\12\7\2\0\2\7\1\0\1\7\1\0\3\7\10\0"+ + "\4\7\1\326\21\7\30\0\12\7\2\0\2\7\1\0"+ + "\1\7\1\0\3\7\10\0\16\7\1\327\7\7\30\0"+ + "\12\7\2\0\2\7\1\0\1\7\1\0\3\7\10\0"+ + "\4\7\1\330\21\7\30\0\12\7\2\0\2\7\1\0"+ + "\1\7\1\0\3\7\10\0\3\7\1\331\22\7\30\0"+ + "\12\7\2\0\2\7\1\0\1\7\1\0\3\7\10\0"+ + "\15\7\1\332\10\7\30\0\12\7\2\0\2\7\1\0"+ + "\1\7\1\0\3\7\10\0\1\333\25\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\3\7"+ + "\1\334\22\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\6\7\1\335\17\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\7\7"+ + "\1\336\16\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\13\7\1\337\12\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\22\7"+ + "\1\340\3\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\1\341\25\7\30\0\12\7\2\0"+ + "\2\7\1\0\1\7\1\0\3\7\10\0\3\7\1\342"+ + "\22\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ + "\3\7\10\0\12\7\1\343\13\7\30\0\12\7\2\0"+ + "\2\7\1\0\1\7\1\0\3\7\10\0\7\7\1\344"+ + "\16\7\30\0\12\7\2\0\2\7\1\0\1\7\1\0"+ + "\3\7\10\0\12\7\1\345\13\7\54\0\1\75\1\0"+ + "\1\76\110\0\1\312\1\0\2\313\1\0\2\214\55\0"+ + "\25\311\1\346\1\347\63\311\26\314\1\350\1\351\62\314"+ + "\1\0\12\7\2\0\2\7\1\0\1\7\1\0\3\7"+ + "\1\101\1\0\1\102\5\0\26\7\27\0\25\317\1\352"+ + "\1\353\63\317\26\320\1\354\1\355\62\320\25\250\1\356"+ + "\1\357\175\250\140\253\1\360\1\361\62\253\1\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\5\7"+ + "\1\362\20\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\20\7\1\363\5\7\30\0\12\7"+ "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\4\7"+ - "\1\u012f\21\7\27\0\25\307\1\u0130\1\u0108\63\307\26\312"+ - "\1\u0109\1\u0131\62\312\25\315\1\u0132\1\u010e\63\315\26\316"+ - "\1\u010f\1\u0133\62\316"; + "\1\364\21\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\5\7\1\365\20\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\10\7"+ + "\1\366\15\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\3\7\1\367\22\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\14\7"+ + "\1\370\11\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\2\7\1\371\23\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\5\7"+ + "\1\372\20\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\12\7\1\373\13\7\30\0\12\7"+ + "\2\0\2\7\1\0\1\7\1\0\3\7\10\0\2\7"+ + "\1\374\23\7\30\0\12\7\2\0\2\7\1\0\1\7"+ + "\1\0\3\7\10\0\1\375\25\7\30\0\12\7\2\0"+ + "\2\7\1\0\1\7\1\0\3\7\10\0\4\7\1\376"+ + "\21\7\27\0\25\311\1\377\1\u0100\175\311\140\314\1\u0101"+ + "\1\u0102\62\314\25\317\1\u0103\1\u0104\175\317\140\320\1\u0105"+ + "\1\u0106\62\320\25\250\1\u0107\1\357\110\250\1\u0108\1\357"+ + "\63\250\26\253\1\360\1\u0109\110\253\1\360\1\u0107\62\253"+ + "\1\0\12\7\2\0\2\7\1\0\1\7\1\0\3\7"+ + "\10\0\6\7\1\u010a\17\7\30\0\12\7\2\0\2\7"+ + "\1\0\1\7\1\0\3\7\10\0\6\7\1\u010b\17\7"+ + "\30\0\12\7\2\0\2\7\1\0\1\7\1\0\3\7"+ + "\10\0\1\7\1\u010c\24\7\30\0\12\7\2\0\2\7"+ + "\1\0\1\7\1\0\3\7\10\0\1\7\1\u010d\24\7"+ + "\30\0\12\7\2\0\2\7\1\0\1\7\1\0\3\7"+ + "\10\0\1\u010e\25\7\30\0\12\7\2\0\2\7\1\0"+ + "\1\7\1\0\3\7\10\0\6\7\1\u010f\17\7\30\0"+ + "\12\7\2\0\2\7\1\0\1\7\1\0\3\7\10\0"+ + "\12\7\1\u0110\13\7\30\0\12\7\2\0\2\7\1\0"+ + "\1\7\1\0\3\7\10\0\12\7\1\u0111\13\7\27\0"+ + "\25\311\1\u0112\1\u0100\110\311\1\u0113\1\u0100\63\311\26\314"+ + "\1\u0101\1\u0114\110\314\1\u0101\1\u0112\62\314\25\317\1\u0115"+ + "\1\u0104\110\317\1\u0116\1\u0104\63\317\26\320\1\u0105\1\u0117"+ + "\110\320\1\u0105\1\u0115\62\320\26\0\1\u0118\1\0\2\u0119"+ + "\1\0\2\u011a\55\0\25\250\1\u011b\1\357\63\250\26\253"+ + "\1\360\1\u011c\62\253\1\0\12\7\2\0\2\7\1\0"+ + "\1\7\1\0\3\7\10\0\15\7\1\u011d\10\7\30\0"+ + "\12\7\2\0\2\7\1\0\1\7\1\0\3\7\10\0"+ + "\21\7\1\u011e\4\7\27\0\25\311\1\u011f\1\u0100\63\311"+ + "\26\314\1\u0101\1\u0120\62\314\25\317\1\u0121\1\u0104\63\317"+ + "\26\320\1\u0105\1\u0122\62\320\25\250\1\u0123\1\357\63\250"+ + "\26\253\1\360\1\u0124\62\253\1\0\12\7\2\0\2\7"+ + "\1\0\1\7\1\0\3\7\10\0\4\7\1\u0125\21\7"+ + "\27\0\25\311\1\u0126\1\u0100\63\311\26\314\1\u0101\1\u0127"+ + "\62\314\25\317\1\u0128\1\u0104\63\317\26\320\1\u0105\1\u0129"+ + "\62\320"; private static int [] zzUnpackTrans() { - int [] result = new int[16132]; + int [] result = new int[15540]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -591,19 +597,19 @@ class _PythonLexer implements FlexLexer { private static final String ZZ_ATTRIBUTE_PACKED_0 = "\3\0\1\11\10\1\1\11\1\1\5\11\34\1\13\11"+ - "\4\1\1\11\10\1\5\0\1\11\1\1\1\0\1\11"+ + "\4\1\1\11\11\1\5\0\1\11\1\1\1\0\1\11"+ "\1\0\2\1\2\11\3\1\1\11\34\1\3\11\1\1"+ "\2\11\1\1\5\11\1\1\2\11\1\1\1\11\1\0"+ - "\3\1\1\11\13\1\2\0\1\11\1\0\1\1\1\0"+ + "\3\1\1\11\14\1\2\0\1\11\1\0\1\1\1\0"+ "\1\1\1\0\1\1\1\0\1\1\1\0\1\1\1\0"+ "\2\1\1\11\1\0\30\1\4\11\1\0\2\1\1\11"+ - "\1\0\2\1\1\11\2\1\3\0\2\1\1\0\21\1"+ - "\3\0\2\1\12\0\2\1\1\0\15\1\3\0\2\1"+ - "\4\0\2\1\1\0\16\1\1\11\2\1\1\11\1\0"+ + "\1\0\2\1\1\11\2\1\1\0\2\1\1\0\21\1"+ + "\1\0\2\1\6\0\2\1\1\0\15\1\1\0\2\1"+ + "\2\0\2\1\1\0\16\1\1\11\2\1\1\11\1\0"+ "\1\11\2\0\2\1\4\0\7\1"; private static int [] zzUnpackAttribute() { - int [] result = new int[307]; + int [] result = new int[297]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; diff --git a/python/src/com/jetbrains/python/lexer/PyStringLiteralLexer.java b/python/src/com/jetbrains/python/lexer/PyStringLiteralLexer.java index 1606ac65d543..20ec3a9b5251 100644 --- a/python/src/com/jetbrains/python/lexer/PyStringLiteralLexer.java +++ b/python/src/com/jetbrains/python/lexer/PyStringLiteralLexer.java @@ -48,6 +48,7 @@ public class PyStringLiteralLexer extends LexerBase { private boolean myIsRaw; private boolean myIsTriple; + private boolean myIsFormatted; private final IElementType myOriginalLiteralToken; private boolean mySeenEscapedSpacesOnly; @@ -74,6 +75,9 @@ public class PyStringLiteralLexer extends LexerBase { int offset = skipRawPrefix(buffer, i); if (offset > i) myIsRaw = true; i = offset; + offset = skipFormattedPrefix(buffer, i); + if (offset > i) myIsFormatted = true; + i = offset; i = skipEncodingPrefix(buffer, i); offset = skipRawPrefix(buffer, i); if (offset > i) myIsRaw = true; @@ -90,6 +94,14 @@ public class PyStringLiteralLexer extends LexerBase { myEnd = locateToken(myStart); } + public static int skipFormattedPrefix(CharSequence text, int startOffset) { + char c = Character.toUpperCase(text.charAt(startOffset)); + if (c == 'F') { + startOffset++; + } + return startOffset; + } + public static int skipRawPrefix(CharSequence text, int startOffset) { char c = Character.toUpperCase(text.charAt(startOffset)); if (c == 'R') { diff --git a/python/src/com/jetbrains/python/lexer/Python.flex b/python/src/com/jetbrains/python/lexer/Python.flex index 6450207ab542..c7f49f080c65 100644 --- a/python/src/com/jetbrains/python/lexer/Python.flex +++ b/python/src/com/jetbrains/python/lexer/Python.flex @@ -46,8 +46,8 @@ IMAGNUMBER=(({FLOATNUMBER})|({INTPART}))[Jj] //RAW_STRING=[Rr]{QUOTED_STRING} //QUOTED_STRING=({TRIPLE_APOS_LITERAL})|({QUOTED_LITERAL})|({DOUBLE_QUOTED_LITERAL})|({TRIPLE_QUOTED_LITERAL}) -SINGLE_QUOTED_STRING=[UuBbCcRr]{0,2}({QUOTED_LITERAL} | {DOUBLE_QUOTED_LITERAL}) -TRIPLE_QUOTED_STRING=[UuBbCcRr]{0,2}[UuBbCcRr]?({TRIPLE_QUOTED_LITERAL}|{TRIPLE_APOS_LITERAL}) +SINGLE_QUOTED_STRING=[UuBbCcRrFf]{0,3}({QUOTED_LITERAL} | {DOUBLE_QUOTED_LITERAL}) +TRIPLE_QUOTED_STRING=[UuBbCcRrFf]{0,3}({TRIPLE_QUOTED_LITERAL}|{TRIPLE_APOS_LITERAL}) DOCSTRING_LITERAL=({SINGLE_QUOTED_STRING}|{TRIPLE_QUOTED_STRING}) diff --git a/python/src/com/jetbrains/python/psi/impl/PyStringLiteralExpressionImpl.java b/python/src/com/jetbrains/python/psi/impl/PyStringLiteralExpressionImpl.java index d2bc6f5bc3e5..212dadf48f46 100644 --- a/python/src/com/jetbrains/python/psi/impl/PyStringLiteralExpressionImpl.java +++ b/python/src/com/jetbrains/python/psi/impl/PyStringLiteralExpressionImpl.java @@ -135,6 +135,7 @@ public class PyStringLiteralExpressionImpl extends PyElementImpl implements PySt int startOffset = 0; startOffset = PyStringLiteralLexer.skipEncodingPrefix(text, startOffset); startOffset = PyStringLiteralLexer.skipRawPrefix(text, startOffset); + startOffset = PyStringLiteralLexer.skipFormattedPrefix(text, startOffset); startOffset = PyStringLiteralLexer.skipEncodingPrefix(text, startOffset); startOffset = PyStringLiteralLexer.skipRawPrefix(text, startOffset); return startOffset; diff --git a/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java b/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java index fafbaca04a31..0be080329b5d 100644 --- a/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java +++ b/python/src/com/jetbrains/python/validation/CompatibilityVisitor.java @@ -52,6 +52,7 @@ public abstract class CompatibilityVisitor extends PyAnnotator { AVAILABLE_PREFIXES.put(LanguageLevel.PYTHON30, Sets.newHashSet("R", "B")); AVAILABLE_PREFIXES.put(LanguageLevel.PYTHON31, Sets.newHashSet("R", "B", "BR")); AVAILABLE_PREFIXES.put(LanguageLevel.PYTHON32, Sets.newHashSet("R", "B", "BR")); + AVAILABLE_PREFIXES.put(LanguageLevel.PYTHON36, Sets.newHashSet("R", "U", "B", "BR", "RB", "F", "FR", "RF")); } private static final Set DEFAULT_PREFIXES = Sets.newHashSet(Sets.newHashSet("R", "U", "B", "BR", "RB")); diff --git a/python/testData/highlighting/fStringLiterals.py b/python/testData/highlighting/fStringLiterals.py new file mode 100644 index 000000000000..f9d47a00b205 --- /dev/null +++ b/python/testData/highlighting/fStringLiterals.py @@ -0,0 +1,9 @@ +a = f"" +a = F"" +a = rf"" +a = fr"" +a = fu"" +a = uf"" +a = bf"" +a = fb"" +a = ufr"" diff --git a/python/testData/inspections/PyCompatibilityInspection/stringLiteralExpression.py b/python/testData/inspections/PyCompatibilityInspection/stringLiteralExpression.py index aba46f914952..93e7740bf809 100644 --- a/python/testData/inspections/PyCompatibilityInspection/stringLiteralExpression.py +++ b/python/testData/inspections/PyCompatibilityInspection/stringLiteralExpression.py @@ -1,5 +1,17 @@ a = u"String" +# Python 3.6 + +a = f"" +a = F"" +a = rf"" +a = fr"" +a = fu"" +a = uf"" +a = bf"" +a = fb"" +a = ufr"" + # python 3.3 a = u"" diff --git a/python/testData/intentions/removeLeadingF.py b/python/testData/intentions/removeLeadingF.py new file mode 100644 index 000000000000..8eb9f652464b --- /dev/null +++ b/python/testData/intentions/removeLeadingF.py @@ -0,0 +1 @@ +a = f"{42}" \ No newline at end of file diff --git a/python/testData/intentions/removeLeadingF_after.py b/python/testData/intentions/removeLeadingF_after.py new file mode 100644 index 000000000000..641404c32f32 --- /dev/null +++ b/python/testData/intentions/removeLeadingF_after.py @@ -0,0 +1 @@ +a = "{42}" \ No newline at end of file diff --git a/python/testData/psi/FStrings.py b/python/testData/psi/FStrings.py new file mode 100644 index 000000000000..24ebfa1cd20d --- /dev/null +++ b/python/testData/psi/FStrings.py @@ -0,0 +1,7 @@ +s1 = f'' +s2 = fr'' +s3 = rf'' +s4 = F'' +s5 = bf'' +s6 = uf'' +s7 = ufr'' diff --git a/python/testData/psi/FStrings.txt b/python/testData/psi/FStrings.txt new file mode 100644 index 000000000000..d7825d5f2883 --- /dev/null +++ b/python/testData/psi/FStrings.txt @@ -0,0 +1,63 @@ +PyFile:FStrings.py + PyAssignmentStatement + PyTargetExpression: s1 + PsiElement(Py:IDENTIFIER)('s1') + PsiWhiteSpace(' ') + PsiElement(Py:EQ)('=') + PsiWhiteSpace(' ') + PyStringLiteralExpression: + PsiElement(Py:SINGLE_QUOTED_STRING)('f''') + PsiWhiteSpace(' \n') + PyAssignmentStatement + PyTargetExpression: s2 + PsiElement(Py:IDENTIFIER)('s2') + PsiWhiteSpace(' ') + PsiElement(Py:EQ)('=') + PsiWhiteSpace(' ') + PyStringLiteralExpression: + PsiElement(Py:SINGLE_QUOTED_STRING)('fr''') + PsiWhiteSpace('\n') + PyAssignmentStatement + PyTargetExpression: s3 + PsiElement(Py:IDENTIFIER)('s3') + PsiWhiteSpace(' ') + PsiElement(Py:EQ)('=') + PsiWhiteSpace(' ') + PyStringLiteralExpression: + PsiElement(Py:SINGLE_QUOTED_STRING)('rf''') + PsiWhiteSpace('\n') + PyAssignmentStatement + PyTargetExpression: s4 + PsiElement(Py:IDENTIFIER)('s4') + PsiWhiteSpace(' ') + PsiElement(Py:EQ)('=') + PsiWhiteSpace(' ') + PyStringLiteralExpression: + PsiElement(Py:SINGLE_QUOTED_STRING)('F''') + PsiWhiteSpace('\n') + PyAssignmentStatement + PyTargetExpression: s5 + PsiElement(Py:IDENTIFIER)('s5') + PsiWhiteSpace(' ') + PsiElement(Py:EQ)('=') + PsiWhiteSpace(' ') + PyStringLiteralExpression: + PsiElement(Py:SINGLE_QUOTED_STRING)('bf''') + PsiWhiteSpace('\n') + PyAssignmentStatement + PyTargetExpression: s6 + PsiElement(Py:IDENTIFIER)('s6') + PsiWhiteSpace(' ') + PsiElement(Py:EQ)('=') + PsiWhiteSpace(' ') + PyStringLiteralExpression: + PsiElement(Py:SINGLE_QUOTED_STRING)('uf''') + PsiWhiteSpace('\n') + PyAssignmentStatement + PyTargetExpression: s7 + PsiElement(Py:IDENTIFIER)('s7') + PsiWhiteSpace(' ') + PsiElement(Py:EQ)('=') + PsiWhiteSpace(' ') + PyStringLiteralExpression: + PsiElement(Py:SINGLE_QUOTED_STRING)('ufr''') \ No newline at end of file diff --git a/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java b/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java index 5991a6d16135..25f1fcff2fc3 100644 --- a/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java +++ b/python/testSrc/com/jetbrains/python/PythonHighlightingTest.java @@ -301,6 +301,10 @@ public class PythonHighlightingTest extends PyTestCase { doTest(LanguageLevel.PYTHON36, true, false); } + public void testFStringLiterals() { + doTest(); + } + // --- private void doTest(final LanguageLevel languageLevel, final boolean checkWarnings, final boolean checkInfos) { PythonLanguageLevelPusher.setForcedLanguageLevel(myFixture.getProject(), languageLevel); diff --git a/python/testSrc/com/jetbrains/python/PythonLexerTest.java b/python/testSrc/com/jetbrains/python/PythonLexerTest.java index 4398fdd77be0..644496dd0a70 100644 --- a/python/testSrc/com/jetbrains/python/PythonLexerTest.java +++ b/python/testSrc/com/jetbrains/python/PythonLexerTest.java @@ -388,6 +388,13 @@ public class PythonLexerTest extends PyLexerTestCase { doTest("10_000_000J", "Py:IMAGINARY_LITERAL", "Py:STATEMENT_BREAK"); } + public void testFStringLiterals() { + doTest("s = f'{x}'", "Py:IDENTIFIER", "Py:SPACE", "Py:EQ", "Py:SPACE", "Py:SINGLE_QUOTED_STRING", "Py:STATEMENT_BREAK"); + doTest("s = rf\"{x}\"", "Py:IDENTIFIER", "Py:SPACE", "Py:EQ", "Py:SPACE", "Py:SINGLE_QUOTED_STRING", "Py:STATEMENT_BREAK"); + doTest("s = fr'''{x}\n'''", "Py:IDENTIFIER", "Py:SPACE", "Py:EQ", "Py:SPACE", "Py:TRIPLE_QUOTED_STRING", "Py:STATEMENT_BREAK"); + doTest("s = f\"\"\"{x}\n\"\"\"", "Py:IDENTIFIER", "Py:SPACE", "Py:EQ", "Py:SPACE", "Py:TRIPLE_QUOTED_STRING", "Py:STATEMENT_BREAK"); + } + private static void doTest(String text, String... expectedTokens) { PyLexerTestCase.doLexerTest(text, new PythonIndentingLexer(), expectedTokens); } diff --git a/python/testSrc/com/jetbrains/python/PythonParsingTest.java b/python/testSrc/com/jetbrains/python/PythonParsingTest.java index e90e63aff9f7..605b56ac0d78 100644 --- a/python/testSrc/com/jetbrains/python/PythonParsingTest.java +++ b/python/testSrc/com/jetbrains/python/PythonParsingTest.java @@ -506,6 +506,11 @@ public class PythonParsingTest extends ParsingTestCase { doTest(LanguageLevel.PYTHON35); } + // PY-18972 + public void testFStrings() { + doTest(LanguageLevel.PYTHON36); + } + // PY-19036 public void testAwaitInNonAsyncNestedFunction() { doTest(LanguageLevel.PYTHON35); diff --git a/python/testSrc/com/jetbrains/python/intentions/PyIntentionTest.java b/python/testSrc/com/jetbrains/python/intentions/PyIntentionTest.java index 53d2dc40c315..5aeb68f87bcb 100644 --- a/python/testSrc/com/jetbrains/python/intentions/PyIntentionTest.java +++ b/python/testSrc/com/jetbrains/python/intentions/PyIntentionTest.java @@ -105,6 +105,11 @@ public class PyIntentionTest extends PyTestCase { doTest(PyBundle.message("INTN.remove.leading.$0", "U"), LanguageLevel.PYTHON30); } + public void testRemoveLeadingF() { + doTest(PyBundle.message("INTN.remove.leading.$0", "F"), LanguageLevel.PYTHON35); + } + + // PY-18972 public void testRemoveTrailingL() { doTest(PyBundle.message("INTN.remove.trailing.l"), LanguageLevel.PYTHON30); } From d50db53561da2ae1c20ba243763a221d62156b55 Mon Sep 17 00:00:00 2001 From: Mikhail Golubev Date: Fri, 9 Sep 2016 18:36:10 +0300 Subject: [PATCH 15/23] PY-18972 Injections for expressions embedded inside f-strings Most of the logic regarding proper detection of "{}" fragments follows CPython's implementation of PEP-498. --- .../jetbrains/python/psi/impl/PyPsiUtils.java | 19 +++ python/src/META-INF/python-core-common.xml | 3 + .../codeInsight/PyFStringsInjector.java | 142 ++++++++++++++++++ .../python/codeInsight/PyInjectorBase.java | 2 +- .../StringLiteralQuotesAnnotator.java | 3 +- .../com/jetbrains/python/PyFStringTest.java | 88 +++++++++++ 6 files changed, 255 insertions(+), 2 deletions(-) create mode 100644 python/src/com/jetbrains/python/codeInsight/PyFStringsInjector.java create mode 100644 python/testSrc/com/jetbrains/python/PyFStringTest.java diff --git a/python/psi-api/src/com/jetbrains/python/psi/impl/PyPsiUtils.java b/python/psi-api/src/com/jetbrains/python/psi/impl/PyPsiUtils.java index 93d99e05176e..496caeac5941 100644 --- a/python/psi-api/src/com/jetbrains/python/psi/impl/PyPsiUtils.java +++ b/python/psi-api/src/com/jetbrains/python/psi/impl/PyPsiUtils.java @@ -17,6 +17,7 @@ package com.jetbrains.python.psi.impl; import com.google.common.base.Preconditions; import com.intellij.lang.ASTNode; +import com.intellij.lang.injection.InjectedLanguageManager; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.module.Module; import com.intellij.openapi.util.Couple; @@ -645,4 +646,22 @@ public class PyPsiUtils { protected abstract void checkAddElement(PsiElement node); } + + /** + * Returns text of the given PSI element. Unlike obvious {@link PsiElement#getText()} this method unescapes text of the element if latter + * belongs to injected code fragment using {@link InjectedLanguageManager#getUnescapedText(PsiElement)}. + * + * @param element PSI element which text is needed + * @return text of the element with any host escaping removed + */ + @NotNull + public static String getElementTextWithoutHostEscaping(@NotNull PsiElement element) { + final InjectedLanguageManager manager = InjectedLanguageManager.getInstance(element.getProject()); + if (manager.isInjectedFragment(element.getContainingFile())) { + return manager.getUnescapedText(element); + } + else { + return element.getText(); + } + } } \ No newline at end of file diff --git a/python/src/META-INF/python-core-common.xml b/python/src/META-INF/python-core-common.xml index af172075a984..6e7610a6065b 100644 --- a/python/src/META-INF/python-core-common.xml +++ b/python/src/META-INF/python-core-common.xml @@ -578,6 +578,9 @@ + + + diff --git a/python/src/com/jetbrains/python/codeInsight/PyFStringsInjector.java b/python/src/com/jetbrains/python/codeInsight/PyFStringsInjector.java new file mode 100644 index 000000000000..4020859c88b4 --- /dev/null +++ b/python/src/com/jetbrains/python/codeInsight/PyFStringsInjector.java @@ -0,0 +1,142 @@ +/* + * Copyright 2000-2016 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.jetbrains.python.codeInsight; + +import com.google.common.annotations.VisibleForTesting; +import com.intellij.lang.ASTNode; +import com.intellij.lang.Language; +import com.intellij.lang.injection.MultiHostRegistrar; +import com.intellij.openapi.util.TextRange; +import com.intellij.openapi.util.text.StringUtil; +import com.intellij.psi.PsiElement; +import com.jetbrains.python.documentation.doctest.PyDocstringLanguageDialect; +import com.jetbrains.python.psi.PyStringLiteralExpression; +import com.jetbrains.python.psi.impl.PyStringLiteralExpressionImpl; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Locale; + +import static com.jetbrains.python.psi.PyUtil.as; + +/** + * @author Mikhail Golubev + */ +public class PyFStringsInjector extends PyInjectorBase { + @Override + public void getLanguagesToInject(@NotNull MultiHostRegistrar registrar, @NotNull PsiElement context) { + final PyStringLiteralExpression pyString = as(context, PyStringLiteralExpression.class); + if (pyString == null) { + return; + } + + for (ASTNode node : pyString.getStringNodes()) { + final String nodeText = node.getText(); + final int relNodeOffset = node.getTextRange().getStartOffset() - pyString.getTextRange().getStartOffset(); + final List ranges = getInjectionRanges(nodeText); + for (TextRange range : ranges) { + registrar.startInjecting(PyDocstringLanguageDialect.getInstance()); + registrar.addPlace(null, null, pyString, range.shiftRight(relNodeOffset)); + registrar.doneInjecting(); + } + } + } + + @VisibleForTesting + @NotNull + public static List getInjectionRanges(@NotNull String nodeText) { + final List result = new ArrayList<>(); + final String nodePrefix = nodeText.substring(0, PyStringLiteralExpressionImpl.getPrefixLength(nodeText)); + final boolean isFormattedString = nodePrefix.toLowerCase(Locale.US).contains("f"); + if (isFormattedString) { + int bracesBalance = 0; + boolean insideChunk = false; + String nestedLiteralQuotes = null; + int chunkStart = 0; + final TextRange nodeContentRange = PyStringLiteralExpressionImpl.getNodeTextRange(nodeText); + int offset = nodeContentRange.getStartOffset(); + while (offset < nodeContentRange.getEndOffset()) { + final char c1 = nodeText.charAt(offset); + final char c2 = offset + 1 < nodeContentRange.getEndOffset() ? nodeText.charAt(offset + 1) : '\0'; + final char c3 = offset + 2 < nodeContentRange.getEndOffset() ? nodeText.charAt(offset + 2) : '\0'; + if (!insideChunk) { + if ((c1 == '{' && c2 == '{') || (c1 == '}' && c2 == '}')) { + offset += 2; + continue; + } + else if (c1 == '{') { + chunkStart = offset + 1; + insideChunk = true; + } + } + else if (nestedLiteralQuotes != null) { + if (c1 == '\'' || c1 == '"') { + final String expected; + if (c2 == c1 && c3 == c1) { + expected = StringUtil.repeatSymbol(c1, 3); + } + else { + expected = String.valueOf(c1); + } + if (nestedLiteralQuotes.equals(expected)) { + nestedLiteralQuotes = null; + offset += expected.length(); + continue; + } + } + else if (c1 == '\\') { + offset += 2; + continue; + } + } + else if (c1 == '\'' || c1 == '"') { + if (c2 == c1 && c3 == c1) { + nestedLiteralQuotes = StringUtil.repeatSymbol(c1, 3); + offset += 3; + continue; + } + nestedLiteralQuotes = String.valueOf(c1); + } + else if (c1 == '{' || c1 == '[' || c1 == '(') { + bracesBalance++; + } + else if (bracesBalance > 0 && (c1 == '}' || c1 == ']' || c1 == ')')) { + bracesBalance--; + } + else if (bracesBalance == 0 && (c1 == '}' || (c1 == '!' && c2 != '=') || c1 == ':')) { + insideChunk = false; + if (offset > chunkStart) { + result.add(TextRange.create(chunkStart, offset)); + } + } + offset++; + } + if (insideChunk) { + result.add(TextRange.create(chunkStart, nodeContentRange.getEndOffset())); + } + } + return Collections.unmodifiableList(result); + } + + @Nullable + @Override + public Language getInjectedLanguage(@NotNull PsiElement context) { + return context instanceof PyStringLiteralExpression? PyDocstringLanguageDialect.getInstance() : null; + } +} diff --git a/python/src/com/jetbrains/python/codeInsight/PyInjectorBase.java b/python/src/com/jetbrains/python/codeInsight/PyInjectorBase.java index 94a8fb935b25..943606de14ea 100644 --- a/python/src/com/jetbrains/python/codeInsight/PyInjectorBase.java +++ b/python/src/com/jetbrains/python/codeInsight/PyInjectorBase.java @@ -35,7 +35,7 @@ public abstract class PyInjectorBase implements MultiHostInjector { @NotNull @Override - public List> elementsToInjectIn() { + public List> elementsToInjectIn() { return PyInjectionUtil.ELEMENTS_TO_INJECT_IN; } diff --git a/python/src/com/jetbrains/python/validation/StringLiteralQuotesAnnotator.java b/python/src/com/jetbrains/python/validation/StringLiteralQuotesAnnotator.java index dbc4be9f2f4d..4edeb5ac3019 100644 --- a/python/src/com/jetbrains/python/validation/StringLiteralQuotesAnnotator.java +++ b/python/src/com/jetbrains/python/validation/StringLiteralQuotesAnnotator.java @@ -20,6 +20,7 @@ import com.intellij.openapi.util.TextRange; import com.intellij.openapi.util.text.StringUtil; import com.jetbrains.python.PyBundle; import com.jetbrains.python.psi.PyStringLiteralExpression; +import com.jetbrains.python.psi.impl.PyPsiUtils; import com.jetbrains.python.psi.impl.PyStringLiteralExpressionImpl; import org.jetbrains.annotations.NotNull; @@ -37,7 +38,7 @@ public class StringLiteralQuotesAnnotator extends PyAnnotator { public void visitPyStringLiteralExpression(final PyStringLiteralExpression node) { final List stringNodes = node.getStringNodes(); for (ASTNode stringNode : stringNodes) { - final String nodeText = stringNode.getText(); + final String nodeText = PyPsiUtils.getElementTextWithoutHostEscaping(stringNode.getPsi()); final int index = PyStringLiteralExpressionImpl.getPrefixLength(nodeText); final String unprefixed = nodeText.substring(index); final boolean foundError; diff --git a/python/testSrc/com/jetbrains/python/PyFStringTest.java b/python/testSrc/com/jetbrains/python/PyFStringTest.java new file mode 100644 index 000000000000..e80aff892b76 --- /dev/null +++ b/python/testSrc/com/jetbrains/python/PyFStringTest.java @@ -0,0 +1,88 @@ +/* + * Copyright 2000-2016 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.jetbrains.python; + +import com.intellij.openapi.util.TextRange; +import com.jetbrains.python.codeInsight.PyFStringsInjector; +import com.jetbrains.python.fixtures.PyTestCase; +import org.intellij.lang.annotations.Language; +import org.jetbrains.annotations.NotNull; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Mikhail Golubev + */ +public class PyFStringTest extends PyTestCase { + + private static void doTestRanges(@NotNull @Language("Python") String fstringLiteral) { + final StringBuilder originalString = new StringBuilder(); + int lastBarOffset = -1; + final List barOffsets = new ArrayList<>(); + while (true) { + final int nextOffset = fstringLiteral.indexOf("|", lastBarOffset + 1); + if (nextOffset < 0) { + originalString.append(fstringLiteral.substring(lastBarOffset + 1)); + break; + } + originalString.append(fstringLiteral.substring(lastBarOffset + 1, nextOffset)); + lastBarOffset = nextOffset; + barOffsets.add(lastBarOffset - barOffsets.size()); + } + assertTrue("Odd number of markers", barOffsets.size() % 2 == 0); + final List actualRanges = PyFStringsInjector.getInjectionRanges(originalString.toString()); + final List expectedRanges = new ArrayList<>(); + for (int i = 0; i < barOffsets.size(); i += 2) { + expectedRanges.add(TextRange.create(barOffsets.get(i), barOffsets.get(i + 1))); + } + assertSameElements(actualRanges, expectedRanges); + } + + public void testSimple() { + doTestRanges("f'{|x|} {|y|} {|42|'"); + } + + public void testEscapedBraces() { + doTestRanges("f'{{{|x|}}}{{}}{{{|x|}'"); + } + + public void testBracesInside() { + doTestRanges("f'{| {1, 2, 3} |} {| {x for x in range(10)} |}'"); + } + + public void testBraceInsideNestedLiteral() { + doTestRanges("f'{|\"{x}}}\"|}'"); + doTestRanges("f'{|d[\"}\"]|}'"); + doTestRanges("f'''{|\"'}\"|}'''"); + doTestRanges("f'''{|\"\\\"}\"|}'''"); + } + + public void testChunkTypeConversionsAndFormatSpecifiers() { + doTestRanges("f'{|x|!s} {|y|!r}}'"); + doTestRanges("f'{|x|:^42}}'"); + doTestRanges("f'{|x|!s:{|y|}.{|z|}}'"); + doTestRanges("f'{|x|:{|sum({x for x in range(10)})|}}'"); + } + + public void testNestedLambda() { + doTestRanges("f'{|(lambda: x)|}'"); + } + + public void testNotEquals() { + doTestRanges("f'{|x != 42|}'"); + } +} From aaa238954931e9057aaef147c94f4b24e9fa1042 Mon Sep 17 00:00:00 2001 From: Mikhail Golubev Date: Tue, 13 Sep 2016 02:01:58 +0300 Subject: [PATCH 16/23] PY-18972 Automatically close quotes for f-string literals --- .../jetbrains/python/editor/BaseQuoteHandler.java | 12 ++++-------- .../testSrc/com/jetbrains/python/PyEditingTest.java | 8 ++++++++ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/python/src/com/jetbrains/python/editor/BaseQuoteHandler.java b/python/src/com/jetbrains/python/editor/BaseQuoteHandler.java index fb21ab0ec60c..86e89630cc84 100644 --- a/python/src/com/jetbrains/python/editor/BaseQuoteHandler.java +++ b/python/src/com/jetbrains/python/editor/BaseQuoteHandler.java @@ -88,15 +88,11 @@ public class BaseQuoteHandler extends SimpleTokenSetQuoteHandler implements Mult } private static int getLiteralStartOffset(CharSequence text, int start) { - char c = Character.toUpperCase(text.charAt(start)); - if (c == 'U' || c == 'B') { - start++; - c = Character.toUpperCase(text.charAt(start)); + int index = start; + while (index < start + 2 && "URBF".indexOf(Character.toUpperCase(text.charAt(index))) >= 0) { + index++; } - if (c == 'R') { - start++; - } - return start; + return index; } @Override diff --git a/python/testSrc/com/jetbrains/python/PyEditingTest.java b/python/testSrc/com/jetbrains/python/PyEditingTest.java index ea9caf885adb..7a790dd32886 100644 --- a/python/testSrc/com/jetbrains/python/PyEditingTest.java +++ b/python/testSrc/com/jetbrains/python/PyEditingTest.java @@ -87,6 +87,14 @@ public class PyEditingTest extends PyTestCase { assertEquals("'''docstring'''", doTestTyping("'''docstring''", 14, '\'')); } + // PY-18972 + public void testFString() throws Exception { + assertEquals("f''", doTestTyping("f", 1, '\'')); + assertEquals("rf''", doTestTyping("rf", 2, '\'')); + assertEquals("fr''", doTestTyping("fr", 2, '\'')); + assertEquals("fr''''''", doTestTyping("fr''", 4, '\'')); + } + public void testOvertypeFromInside() { assertEquals("''", doTestTyping("''", 1, '\'')); } From 0d37cf70eb92d68bea68e56067ca83b628159ac7 Mon Sep 17 00:00:00 2001 From: Mikhail Golubev Date: Thu, 15 Sep 2016 17:37:19 +0300 Subject: [PATCH 17/23] PY-20783 Select correct scope owner to resolve symbols inside injection Previously only PSI file containing host element was used to resolve them, thus variables coming from local and nested scopes couldn't have been found inside f-strings. It also fixes similar problems in other places that make use of injections: doctests, type comments and escaped forward references in type annotations. --- .../documentation/doctest/PyDocReference.java | 60 +++++++++++-------- 1 file changed, 35 insertions(+), 25 deletions(-) diff --git a/python/src/com/jetbrains/python/documentation/doctest/PyDocReference.java b/python/src/com/jetbrains/python/documentation/doctest/PyDocReference.java index dcbdc7f3988e..88292f33b891 100644 --- a/python/src/com/jetbrains/python/documentation/doctest/PyDocReference.java +++ b/python/src/com/jetbrains/python/documentation/doctest/PyDocReference.java @@ -26,11 +26,13 @@ import com.intellij.psi.PsiFile; import com.intellij.psi.PsiLanguageInjectionHost; import com.intellij.psi.ResolveResult; import com.jetbrains.python.codeInsight.controlflow.ScopeOwner; +import com.jetbrains.python.codeInsight.dataflow.scope.ScopeUtil; import com.jetbrains.python.psi.PyQualifiedExpression; import com.jetbrains.python.psi.impl.references.PyReferenceImpl; import com.jetbrains.python.psi.resolve.*; import com.jetbrains.python.psi.types.TypeEvalContext; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.List; @@ -53,10 +55,8 @@ public class PyDocReference extends PyReferenceImpl { public ResolveResult[] multiResolve(boolean incompleteCode) { ResolveResult[] results = super.multiResolve(incompleteCode); if (results.length == 0) { - PsiFile file = myElement.getContainingFile(); final InjectedLanguageManager languageManager = InjectedLanguageManager.getInstance(myElement.getProject()); final PsiLanguageInjectionHost host = languageManager.getInjectionHost(myElement); - if (host != null) file = host.getContainingFile(); final String referencedName = myElement.getReferencedName(); if (referencedName == null) return ResolveResult.EMPTY_ARRAY; @@ -75,18 +75,18 @@ public class PyDocReference extends PyReferenceImpl { } } } + final PyResolveProcessor processor = new PyResolveProcessor(referencedName); + final ScopeOwner scopeOwner = getHostScopeOwner(); + if (scopeOwner != null) { + final PsiFile topLevel = scopeOwner.getContainingFile(); + PyResolveUtil.scopeCrawlUp(processor, scopeOwner, referencedName, topLevel); + final List resultList = getResultsFromProcessor(referencedName, processor, scopeOwner, topLevel); + if (resultList.size() > 0) { + final List ret = RatedResolveResult.sorted(resultList); + return ret.toArray(new RatedResolveResult[ret.size()]); + } + } } - - final PyResolveProcessor processor = new PyResolveProcessor(referencedName); - - if (file instanceof ScopeOwner) - PyResolveUtil.scopeCrawlUp(processor, (ScopeOwner)file, referencedName, file); - final List resultList = getResultsFromProcessor(referencedName, processor, file, file); - if (resultList.size() > 0) { - List ret = RatedResolveResult.sorted(resultList); - return ret.toArray(new RatedResolveResult[ret.size()]); - } - } return results; } @@ -94,22 +94,32 @@ public class PyDocReference extends PyReferenceImpl { @NotNull public Object[] getVariants() { final ArrayList ret = Lists.newArrayList(super.getVariants()); - PsiFile file = myElement.getContainingFile(); - final InjectedLanguageManager languageManager = InjectedLanguageManager.getInstance(myElement.getProject()); - final PsiLanguageInjectionHost host = languageManager.getInjectionHost(myElement); - if (host != null) file = host.getContainingFile(); - final PsiElement originalElement = CompletionUtil.getOriginalElement(myElement); final PyQualifiedExpression element = originalElement instanceof PyQualifiedExpression ? (PyQualifiedExpression)originalElement : myElement; - // include our own names - final CompletionVariantsProcessor processor = new CompletionVariantsProcessor(element); - if (file instanceof ScopeOwner) - PyResolveUtil.scopeCrawlUp(processor, (ScopeOwner)file, null, null); - - ret.addAll(processor.getResultList()); - + final ScopeOwner scopeOwner = getHostScopeOwner(); + if (scopeOwner != null) { + final CompletionVariantsProcessor processor = new CompletionVariantsProcessor(element); + PyResolveUtil.scopeCrawlUp(processor, scopeOwner, null, null); + ret.addAll(processor.getResultList()); + } return ret.toArray(); } + + + @Nullable + private ScopeOwner getHostScopeOwner() { + final InjectedLanguageManager languageManager = InjectedLanguageManager.getInstance(myElement.getProject()); + final PsiLanguageInjectionHost host = languageManager.getInjectionHost(myElement); + if (host != null) { + final PsiFile file = host.getContainingFile(); + ScopeOwner result = ScopeUtil.getScopeOwner(host); + if (result == null && file instanceof ScopeOwner) { + result = (ScopeOwner)file; + } + return result; + } + return null; + } } From a493ff0f1d73ea6cb173e6ac3dad19da4187f867 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Fri, 16 Sep 2016 08:31:11 +0300 Subject: [PATCH 18/23] annotations: check that modifier list corresponds to class modifier list when ignore list during process declarations (IDEA-160106) --- .../intellij/codeInsight/AnnotationTargetUtil.java | 3 +++ .../src/com/intellij/psi/impl/PsiClassImplUtil.java | 4 ++-- .../annotations/annotationOverIncompleteCode.java | 12 ++++++++++++ .../daemon/AnnotationsHighlightingTest.java | 1 + 4 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/annotations/annotationOverIncompleteCode.java diff --git a/java/java-psi-api/src/com/intellij/codeInsight/AnnotationTargetUtil.java b/java/java-psi-api/src/com/intellij/codeInsight/AnnotationTargetUtil.java index ba4f28077349..7393be47a8e7 100644 --- a/java/java-psi-api/src/com/intellij/codeInsight/AnnotationTargetUtil.java +++ b/java/java-psi-api/src/com/intellij/codeInsight/AnnotationTargetUtil.java @@ -61,6 +61,9 @@ public class AnnotationTargetUtil { } if (owner instanceof PsiModifierList) { + if (((PsiModifierList)owner).getNextSibling() instanceof PsiErrorElement) { + return TargetType.EMPTY_ARRAY; + } PsiElement element = ((PsiModifierList)owner).getParent(); if (element instanceof PsiPackageStatement) { return PACKAGE_TARGETS; diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/PsiClassImplUtil.java b/java/java-psi-impl/src/com/intellij/psi/impl/PsiClassImplUtil.java index defa0a09a4bb..491f4b20e8cc 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/PsiClassImplUtil.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/PsiClassImplUtil.java @@ -467,8 +467,8 @@ public class PsiClassImplUtil { @NotNull LanguageLevel languageLevel, boolean isRaw, @NotNull GlobalSearchScope resolveScope) { - if (last instanceof PsiTypeParameterList || last instanceof PsiModifierList) { - return true; //TypeParameterList and ModifierList do not see our declarations + if (last instanceof PsiTypeParameterList || last instanceof PsiModifierList && aClass.getModifierList() == last) { + return true; } if (visited != null && visited.contains(aClass)) return true; diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/annotations/annotationOverIncompleteCode.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/annotations/annotationOverIncompleteCode.java new file mode 100644 index 000000000000..2e0bf6272dc7 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/annotations/annotationOverIncompleteCode.java @@ -0,0 +1,12 @@ +class Dummy { + + public @interface Debug { + String value() default "[no comment]"; + } + + private static final class Constants { + private static final String INPUT = "Input"; + } + + @Dummy.Debug(Constants.INPUT) +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/AnnotationsHighlightingTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/AnnotationsHighlightingTest.java index c0cf9a49f3e0..6cf7c1c6d20a 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/AnnotationsHighlightingTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/AnnotationsHighlightingTest.java @@ -49,6 +49,7 @@ public class AnnotationsHighlightingTest extends LightDaemonAnalyzerTestCase { public void testRepeatable() { doTest8(); } public void testEnumValues() { doTest8(); } public void testReceiverParameters() { doTest8(); } + public void testAnnotationOverIncompleteCode() { doTest(); } private void doTest() { setLanguageLevel(LanguageLevel.JDK_1_7); From f4dae32d7f07d4035fbe86c3181c8845767c743d Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Fri, 16 Sep 2016 08:32:43 +0300 Subject: [PATCH 19/23] overload resolution: prefer candidates with functional formal type if lambda is passed; this way conflict would be resolved and nested error would be shown instead --- .../psi/infos/MethodCandidateInfo.java | 52 +++++++++++++------ .../JavaMethodsConflictResolver.java | 22 +++++--- .../newMethodRef/PotentialApplicability.java | 2 +- ...WithFunctionalTypeToNonFunctionalType.java | 25 +++++++++ .../daemon/lambda/OverloadResolutionTest.java | 4 ++ 5 files changed, 82 insertions(+), 23 deletions(-) create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/overloadResolution/IgnoreLambdaVoidValueIncompatibilitiesPreferringMethodWithFunctionalTypeToNonFunctionalType.java diff --git a/java/java-psi-api/src/com/intellij/psi/infos/MethodCandidateInfo.java b/java/java-psi-api/src/com/intellij/psi/infos/MethodCandidateInfo.java index 72c5468c2177..3779effed5fe 100644 --- a/java/java-psi-api/src/com/intellij/psi/infos/MethodCandidateInfo.java +++ b/java/java-psi-api/src/com/intellij/psi/infos/MethodCandidateInfo.java @@ -27,6 +27,7 @@ import com.intellij.psi.impl.source.resolve.DefaultParameterTypeInferencePolicy; import com.intellij.psi.impl.source.resolve.ParameterTypeInferencePolicy; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.psi.util.PsiUtil; +import com.intellij.util.ThreeState; import com.intellij.util.containers.ContainerUtil; import org.intellij.lang.annotations.MagicConstant; import org.jetbrains.annotations.NotNull; @@ -132,7 +133,7 @@ public class MethodCandidateInfo extends CandidateInfo{ } //already performed checks, so if inference failed, error message should be saved - if (myInferenceError != null || !isPotentiallyCompatible()) { + if (myInferenceError != null || isPotentiallyCompatible() != ThreeState.YES) { return ApplicabilityLevel.NOT_APPLICABLE; } return isVarargs() ? ApplicabilityLevel.VARARGS : ApplicabilityLevel.FIXED_ARITY; @@ -176,7 +177,7 @@ public class MethodCandidateInfo extends CandidateInfo{ /** * 15.12.2.1 Identify Potentially Applicable Methods */ - public boolean isPotentiallyCompatible() { + public ThreeState isPotentiallyCompatible() { if (myArgumentList instanceof PsiExpressionList) { final PsiMethod method = getElement(); final PsiParameter[] parameters = method.getParameterList().getParameters(); @@ -184,19 +185,21 @@ public class MethodCandidateInfo extends CandidateInfo{ if (!isVarargs() && myLanguageLevel.isAtLeast(LanguageLevel.JDK_1_8)) { if (expressions.length != parameters.length) { - return false; + return ThreeState.NO; } } else { if (expressions.length < parameters.length - 1) { - return false; + return ThreeState.NO; } if (parameters.length == 0 && expressions.length != parameters.length) { - return false; + return ThreeState.NO; } } + boolean unsure = false; + for (int i = 0; i < expressions.length; i++) { final PsiExpression expression = expressions[i]; PsiType formalParameterType = i < parameters.length ? parameters[i].getType() : parameters[parameters.length - 1].getType(); @@ -205,35 +208,54 @@ public class MethodCandidateInfo extends CandidateInfo{ formalParameterType = ((PsiEllipsisType)formalParameterType).getComponentType(); } - if (!isPotentialCompatible(expression, getSiteSubstitutor().substitute(formalParameterType), method)) { - return false; + ThreeState compatible = isPotentialCompatible(expression, getSiteSubstitutor().substitute(formalParameterType), method); + if (compatible == ThreeState.NO) { + return ThreeState.NO; + } + + if (compatible == ThreeState.UNSURE) { + unsure = true; } } + + if (unsure) return ThreeState.UNSURE; + if (method.hasTypeParameters() && myTypeArguments != null) { - return method.getTypeParameters().length == myTypeArguments.length; //todo + return ThreeState.fromBoolean(method.getTypeParameters().length == myTypeArguments.length); //todo } } - return true; + return ThreeState.YES; } - private static boolean isPotentialCompatible(PsiExpression expression, PsiType formalType, PsiMethod method) { + private static ThreeState isPotentialCompatible(PsiExpression expression, PsiType formalType, PsiMethod method) { if (expression instanceof PsiFunctionalExpression) { final PsiClass targetTypeParameter = PsiUtil.resolveClassInClassTypeOnly(formalType); if (targetTypeParameter instanceof PsiTypeParameter && method.equals(((PsiTypeParameter)targetTypeParameter).getOwner())) { - return true; + return ThreeState.YES; } + + if (!LambdaUtil.isFunctionalType(formalType)) { + return ThreeState.NO; + } + if (!((PsiFunctionalExpression)expression).isPotentiallyCompatible(formalType)) { - return false; + return ThreeState.UNSURE; } } else if (expression instanceof PsiParenthesizedExpression) { return isPotentialCompatible(((PsiParenthesizedExpression)expression).getExpression(), formalType, method); } else if (expression instanceof PsiConditionalExpression) { - return isPotentialCompatible(((PsiConditionalExpression)expression).getThenExpression(), formalType, method) && - isPotentialCompatible(((PsiConditionalExpression)expression).getElseExpression(), formalType, method); + ThreeState thenCompatible = isPotentialCompatible(((PsiConditionalExpression)expression).getThenExpression(), formalType, method); + ThreeState elseCompatible = isPotentialCompatible(((PsiConditionalExpression)expression).getElseExpression(), formalType, method); + if (thenCompatible == ThreeState.NO || elseCompatible == ThreeState.NO) { + return ThreeState.NO; + } + if (thenCompatible == ThreeState.UNSURE || elseCompatible == ThreeState.UNSURE) { + return ThreeState.UNSURE; + } } - return true; + return ThreeState.YES; } private T computeForOverloadedCandidate(final Computable computable, diff --git a/java/java-psi-impl/src/com/intellij/psi/scope/conflictResolvers/JavaMethodsConflictResolver.java b/java/java-psi-impl/src/com/intellij/psi/scope/conflictResolvers/JavaMethodsConflictResolver.java index 95b5dc694951..8e914c7f09ef 100644 --- a/java/java-psi-impl/src/com/intellij/psi/scope/conflictResolvers/JavaMethodsConflictResolver.java +++ b/java/java-psi-impl/src/com/intellij/psi/scope/conflictResolvers/JavaMethodsConflictResolver.java @@ -32,6 +32,7 @@ import com.intellij.psi.infos.MethodCandidateInfo; import com.intellij.psi.scope.PsiConflictResolver; import com.intellij.psi.search.GlobalSearchScope; import com.intellij.psi.util.*; +import com.intellij.util.ThreeState; import com.intellij.util.containers.FactoryMap; import com.intellij.util.containers.HashSet; import gnu.trove.THashMap; @@ -40,10 +41,7 @@ import gnu.trove.TIntArrayList; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; /** * Created by IntelliJ IDEA. @@ -140,13 +138,23 @@ public class JavaMethodsConflictResolver implements PsiConflictResolver{ } private static void checkPotentiallyCompatibleMethods(@NotNull List conflicts) { + List partiallyApplicable = new ArrayList(); for (Iterator iterator = conflicts.iterator(); iterator.hasNext(); ) { CandidateInfo conflict = iterator.next(); - if (conflict instanceof MethodCandidateInfo && - !((MethodCandidateInfo)conflict).isPotentiallyCompatible()) { - iterator.remove(); + if (conflict instanceof MethodCandidateInfo) { + ThreeState compatible = ((MethodCandidateInfo)conflict).isPotentiallyCompatible(); + if (compatible == ThreeState.NO) { + iterator.remove(); + } + else if (compatible == ThreeState.UNSURE) { + partiallyApplicable.add(conflict); + } } } + + if (conflicts.size() > partiallyApplicable.size()) { + conflicts.removeAll(partiallyApplicable); + } } public void checkSpecifics(@NotNull List conflicts, diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/PotentialApplicability.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/PotentialApplicability.java index 2275ecb78568..18f5026255c6 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/PotentialApplicability.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/PotentialApplicability.java @@ -52,7 +52,7 @@ class Test { static { Test s1 = staticCall(Test::n0); Test s2 = staticCall(Test::n1); - Test s3 = staticCall(Test::n2); + Test s3 = staticCall(Test::n2); Test s4 = staticCall(Test::n01); Test s5 = staticCall(Test::n012); } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/overloadResolution/IgnoreLambdaVoidValueIncompatibilitiesPreferringMethodWithFunctionalTypeToNonFunctionalType.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/overloadResolution/IgnoreLambdaVoidValueIncompatibilitiesPreferringMethodWithFunctionalTypeToNonFunctionalType.java new file mode 100644 index 000000000000..cc0166d9432b --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/overloadResolution/IgnoreLambdaVoidValueIncompatibilitiesPreferringMethodWithFunctionalTypeToNonFunctionalType.java @@ -0,0 +1,25 @@ +import java.util.function.*; + +class Test { + void foo(Function f) {} + void foo(String f) {} + + { + foo(a -> { + String s = a.substring(0); + }); + } + + interface A { + void m(String s); + } + + void bar(Function f) {} + void bar(A f) {} + + { + bar(a -> { + String s = a.substring(0); + }); + } +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/lambda/OverloadResolutionTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/lambda/OverloadResolutionTest.java index d9da817f04f8..0def48853907 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/lambda/OverloadResolutionTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/lambda/OverloadResolutionTest.java @@ -228,6 +228,10 @@ public class OverloadResolutionTest extends LightDaemonAnalyzerTestCase { doTest(false); } + public void testIgnoreLambdaVoidValueIncompatibilitiesPreferringMethodWithFunctionalTypeToNonFunctionalType() throws Exception { + doTest(false); + } + private void doTest() { doTest(true); } From d4e5f5a2c420885259b0a8e1403ce4e4b5a4572d Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Fri, 16 Sep 2016 12:47:41 +0700 Subject: [PATCH 20/23] IDEA-161007 ComparatorCombinatorsInspection: better variable naming, support integer difference comparators --- .../ComparatorCombinatorsInspection.java | 113 ++++++++++-------- .../comparatorCombinators/afterDouble.java | 2 +- .../comparatorCombinators/afterField.java | 2 +- .../afterIntegerDiff.java | 9 ++ .../comparatorCombinators/beforeDouble.java | 2 +- .../beforeIntegerDiff.java | 9 ++ 6 files changed, 86 insertions(+), 51 deletions(-) create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterIntegerDiff.java create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/beforeIntegerDiff.java diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/ComparatorCombinatorsInspection.java b/java/java-analysis-impl/src/com/intellij/codeInspection/ComparatorCombinatorsInspection.java index d42168b71e3b..dfa6c00d0091 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/ComparatorCombinatorsInspection.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/ComparatorCombinatorsInspection.java @@ -21,6 +21,8 @@ import com.intellij.openapi.project.Project; import com.intellij.psi.*; import com.intellij.psi.codeStyle.CodeStyleManager; import com.intellij.psi.codeStyle.JavaCodeStyleManager; +import com.intellij.psi.codeStyle.SuggestedNameInfo; +import com.intellij.psi.codeStyle.VariableKind; import com.intellij.psi.util.PsiTreeUtil; import com.siyeh.ig.psiutils.EquivalenceChecker; import com.siyeh.ig.psiutils.MethodUtils; @@ -49,10 +51,10 @@ public class ComparatorCombinatorsInspection extends BaseJavaBatchLocalInspectio return; } PsiElement body = LambdaUtil.extractSingleExpressionFromBody(lambda.getBody()); + String methodName = null; if (body instanceof PsiMethodCallExpression) { PsiMethodCallExpression methodCall = (PsiMethodCallExpression)body; PsiExpression[] args = methodCall.getArgumentList().getExpressions(); - String methodName = null; if (args.length == 1 && MethodUtils.isCompareToCall(methodCall)) { PsiExpression left = methodCall.getMethodExpression().getQualifierExpression(); PsiExpression right = args[0]; @@ -91,11 +93,17 @@ public class ComparatorCombinatorsInspection extends BaseJavaBatchLocalInspectio } } } - if (methodName != null) { - holder - .registerProblem(lambda, "Can be replaced with Comparator." + methodName, new ReplaceWithComparatorFix(methodName)); + } else if (body instanceof PsiBinaryExpression) { + PsiBinaryExpression binOp = (PsiBinaryExpression)body; + if (binOp.getOperationTokenType().equals(JavaTokenType.MINUS) && + areEquivalent(parameters, binOp.getLOperand(), binOp.getROperand())) { + methodName = "comparingInt"; } } + if (methodName != null) { + holder + .registerProblem(lambda, "Can be replaced with Comparator." + methodName, new ReplaceWithComparatorFix(methodName)); + } } }; } @@ -150,49 +158,55 @@ public class ComparatorCombinatorsInspection extends BaseJavaBatchLocalInspectio PsiParameter[] parameters = lambda.getParameterList().getParameters(); if (parameters.length != 2) return; PsiElement body = LambdaUtil.extractSingleExpressionFromBody(lambda.getBody()); - if (!(body instanceof PsiMethodCallExpression)) return; - PsiMethodCallExpression methodCall = (PsiMethodCallExpression)body; PsiExpression keyExtractor = null; String methodName = null; - if (MethodUtils.isCompareToCall(methodCall)) { - methodName = "comparing"; - keyExtractor = methodCall.getMethodExpression().getQualifierExpression(); - if (keyExtractor instanceof PsiReferenceExpression) { - PsiElement keyElement = ((PsiReferenceExpression)keyExtractor).resolve(); - if(keyElement == parameters[0]) { - methodName = "naturalOrder"; - } - else if(keyElement == parameters[1]) { - methodName = "reverseOrder"; + if (body instanceof PsiMethodCallExpression) { + PsiMethodCallExpression methodCall = (PsiMethodCallExpression)body; + if (MethodUtils.isCompareToCall(methodCall)) { + methodName = "comparing"; + keyExtractor = methodCall.getMethodExpression().getQualifierExpression(); + if (keyExtractor instanceof PsiReferenceExpression) { + PsiElement keyElement = ((PsiReferenceExpression)keyExtractor).resolve(); + if (keyElement == parameters[0]) { + methodName = "naturalOrder"; + } + else if (keyElement == parameters[1]) { + methodName = "reverseOrder"; + } } } - } - else { - PsiMethod method = methodCall.resolveMethod(); - if (method != null && method.getName().equals("compare")) { - PsiClass containingClass = method.getContainingClass(); - if (containingClass != null) { - String className = containingClass.getQualifiedName(); - if (className != null) { - PsiExpression[] args = methodCall.getArgumentList().getExpressions(); - if (args.length != 2) return; - keyExtractor = args[0]; - switch (className) { - case CommonClassNames.JAVA_LANG_LONG: - methodName = "comparingLong"; - break; - case CommonClassNames.JAVA_LANG_INTEGER: - methodName = "comparingInt"; - break; - case CommonClassNames.JAVA_LANG_DOUBLE: - methodName = "comparingDouble"; - break; - default: - return; + else { + PsiMethod method = methodCall.resolveMethod(); + if (method != null && method.getName().equals("compare")) { + PsiClass containingClass = method.getContainingClass(); + if (containingClass != null) { + String className = containingClass.getQualifiedName(); + if (className != null) { + PsiExpression[] args = methodCall.getArgumentList().getExpressions(); + if (args.length != 2) return; + keyExtractor = args[0]; + switch (className) { + case CommonClassNames.JAVA_LANG_LONG: + methodName = "comparingLong"; + break; + case CommonClassNames.JAVA_LANG_INTEGER: + methodName = "comparingInt"; + break; + case CommonClassNames.JAVA_LANG_DOUBLE: + methodName = "comparingDouble"; + break; + default: + return; + } } } } } + } else if(body instanceof PsiBinaryExpression) { + PsiBinaryExpression binOp = (PsiBinaryExpression)body; + if(!binOp.getOperationTokenType().equals(JavaTokenType.MINUS)) return; + methodName = "comparingInt"; + keyExtractor = binOp.getLOperand(); } if (methodName == null || keyExtractor == null) return; if (!FileModificationService.getInstance().preparePsiElementForWrite(element)) return; @@ -220,20 +234,23 @@ public class ComparatorCombinatorsInspection extends BaseJavaBatchLocalInspectio if (LambdaCanBeMethodReferenceInspection.replaceLambdaWithMethodReference(factory, lambda) == lambda) { PsiParameter parameter = parameters[0]; String name = parameter.getName(); - String nameCandidate = null; + SuggestedNameInfo nameCandidate = null; + JavaCodeStyleManager codeStyleManager = JavaCodeStyleManager.getInstance(expression.getProject()); if (name != null) { if (name.length() > 1 && name.endsWith("1")) { - nameCandidate = name.substring(0, name.length() - 1); + nameCandidate = codeStyleManager.suggestVariableName(VariableKind.PARAMETER, name.substring(0, name.length() - 1), + null, parameter.getType(), true); + } else if (name.equals("first")) { + nameCandidate = + codeStyleManager.suggestVariableName(VariableKind.PARAMETER, null, null, parameter.getType(), true); } } if (nameCandidate != null) { - String newName = JavaCodeStyleManager.getInstance(expression.getProject()).suggestUniqueVariableName(nameCandidate, lambda, true); - if (newName.equals(nameCandidate)) { - Collection references = PsiTreeUtil.collectElementsOfType(body, PsiReferenceExpression.class); - StreamEx.of(references).filter(ref -> ref.resolve() == parameter).map(PsiJavaCodeReferenceElement::getReferenceNameElement) - .nonNull().forEach(nameElement -> nameElement.replace(factory.createIdentifier(newName))); - parameter.setName(newName); - } + String newName = codeStyleManager.suggestUniqueVariableName(nameCandidate, lambda, true).names[0]; + Collection references = PsiTreeUtil.collectElementsOfType(body, PsiReferenceExpression.class); + StreamEx.of(references).filter(ref -> ref.resolve() == parameter).map(PsiJavaCodeReferenceElement::getReferenceNameElement) + .nonNull().forEach(nameElement -> nameElement.replace(factory.createIdentifier(newName))); + parameter.setName(newName); } } } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterDouble.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterDouble.java index 2d8db799749f..bb05aec003bd 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterDouble.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterDouble.java @@ -4,7 +4,7 @@ import java.util.*; public class Main { void sort(List persons) { - persons.sort(Comparator.comparingDouble(p -> p.getName().length())); + persons.sort(Comparator.comparingDouble(person -> person.getName().length())); } interface Person { diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterField.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterField.java index eddcdaf3ac5e..2bf3fd99f4b6 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterField.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterField.java @@ -5,7 +5,7 @@ import java.util.*; public class Main { void sort(List persons) { String p; - persons.sort(Comparator.comparing(p1 -> p1.name)); + persons.sort(Comparator.comparing(p2 -> p2.name)); } class Person { diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterIntegerDiff.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterIntegerDiff.java new file mode 100644 index 000000000000..c83d34e8f1e7 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/afterIntegerDiff.java @@ -0,0 +1,9 @@ +// "Replace with Comparator.comparingInt" "true" + +import java.util.*; + +public class Main { + void sort(List data) { + data.sort(Comparator.comparingInt(String::length)); + } +} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/beforeDouble.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/beforeDouble.java index 3f96c289d228..ccc9685fdaa0 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/beforeDouble.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/beforeDouble.java @@ -4,7 +4,7 @@ import java.util.*; public class Main { void sort(List persons) { - persons.sort((p1, p2) -> Double.compare(p1.getName().length(), p2.getName().length())); + persons.sort((first, second) -> Double.compare(first.getName().length(), second.getName().length())); } interface Person { diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/beforeIntegerDiff.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/beforeIntegerDiff.java new file mode 100644 index 000000000000..580624557884 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/comparatorCombinators/beforeIntegerDiff.java @@ -0,0 +1,9 @@ +// "Replace with Comparator.comparingInt" "true" + +import java.util.*; + +public class Main { + void sort(List data) { + data.sort((d1, d2) -> d1.length() - d2.length()); + } +} From ade087c842d2da3d5ee5918c855210e0c4b23d1c Mon Sep 17 00:00:00 2001 From: peter Date: Fri, 16 Sep 2016 08:06:37 +0200 Subject: [PATCH 21/23] make second home/end leave the live template fragment and work as usual to make it easier to cut/copy stuff from the rest of the line --- .../template/LiveTemplateTest.groovy | 24 +++++++++++++++++++ .../TemplateLineStartEndHandler.java | 7 +++++- 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/template/LiveTemplateTest.groovy b/java/java-tests/testSrc/com/intellij/codeInsight/template/LiveTemplateTest.groovy index e13424b72c51..39a6009d79cd 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/template/LiveTemplateTest.groovy +++ b/java/java-tests/testSrc/com/intellij/codeInsight/template/LiveTemplateTest.groovy @@ -1478,4 +1478,28 @@ java.util.List list; } }}''' } + + void "test home end go outside template fragments if already on their bounds"() { + myFixture.configureByText 'a.txt', ' g' + + TemplateManager manager = TemplateManager.getInstance(getProject()) + Template template = manager.createTemplate("empty", "user", '$VAR$') + template.addVariable("VAR", "", '"foo"', true) + manager.startTemplate(myFixture.editor, template) + + myFixture.checkResult ' foo g' + + myFixture.performEditorAction(IdeActions.ACTION_EDITOR_MOVE_LINE_START) + myFixture.checkResult ' foo g' + + myFixture.performEditorAction(IdeActions.ACTION_EDITOR_MOVE_LINE_START) + myFixture.checkResult ' foo g' + + myFixture.performEditorAction(IdeActions.ACTION_EDITOR_MOVE_CARET_RIGHT) + myFixture.performEditorAction(IdeActions.ACTION_EDITOR_MOVE_LINE_END) + myFixture.checkResult ' foo g' + + myFixture.performEditorAction(IdeActions.ACTION_EDITOR_MOVE_LINE_END) + myFixture.checkResult ' foo g' + } } \ No newline at end of file diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/editorActions/TemplateLineStartEndHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/editorActions/TemplateLineStartEndHandler.java index 4bae932550d7..23b6b24cc0d6 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/editorActions/TemplateLineStartEndHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/editorActions/TemplateLineStartEndHandler.java @@ -56,7 +56,7 @@ public abstract class TemplateLineStartEndHandler extends EditorActionHandler { if (templateState != null && !templateState.isFinished()) { final TextRange range = templateState.getCurrentVariableRange(); final int caretOffset = editor.getCaretModel().getOffset(); - if (range != null && range.containsOffset(caretOffset)) { + if (range != null && shouldStayInsideVariable(range, caretOffset)) { int selectionOffset = editor.getSelectionModel().getLeadSelectionOffset(); int offsetToMove = myIsHomeHandler ? range.getStartOffset() : range.getEndOffset(); editor.getCaretModel().moveToOffset(offsetToMove); @@ -72,4 +72,9 @@ public abstract class TemplateLineStartEndHandler extends EditorActionHandler { } myOriginalHandler.execute(editor, caret, dataContext); } + + private boolean shouldStayInsideVariable(TextRange varRange, int caretOffset) { + return varRange.containsOffset(caretOffset) && + caretOffset != (myIsHomeHandler ? varRange.getStartOffset() : varRange.getEndOffset()); + } } From 719ff2dca82fe45d2c22c7d09881957ad0472c4d Mon Sep 17 00:00:00 2001 From: peter Date: Fri, 16 Sep 2016 08:10:57 +0200 Subject: [PATCH 22/23] show various settings dialogs in a transaction + cleanup --- .../ide/actions/ImportModuleAction.java | 10 +++++- .../ide/actions/NewProjectAction.java | 5 +++ .../actions/ShowStructureSettingsAction.java | 6 ++++ .../ProjectStructureConfigurable.java | 33 ++++++++----------- .../options/newEditor/SettingsDialog.java | 5 ++- 5 files changed, 37 insertions(+), 22 deletions(-) diff --git a/java/idea-ui/src/com/intellij/ide/actions/ImportModuleAction.java b/java/idea-ui/src/com/intellij/ide/actions/ImportModuleAction.java index f167d90aa371..0aa17824ac31 100644 --- a/java/idea-ui/src/com/intellij/ide/actions/ImportModuleAction.java +++ b/java/idea-ui/src/com/intellij/ide/actions/ImportModuleAction.java @@ -24,6 +24,7 @@ import com.intellij.ide.util.projectWizard.ProjectBuilder; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.Presentation; +import com.intellij.openapi.application.TransactionGuard; import com.intellij.openapi.fileChooser.FileChooserDescriptor; import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory; import com.intellij.openapi.fileChooser.FileChooserDialog; @@ -34,6 +35,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.project.ProjectManager; import com.intellij.openapi.roots.ui.configuration.actions.NewModuleAction; import com.intellij.openapi.ui.Messages; +import com.intellij.openapi.util.Ref; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.projectImport.ProjectImportProvider; @@ -83,9 +85,15 @@ public class ImportModuleAction extends AnAction { } public static List createFromWizard(@Nullable Project project, AbstractProjectWizard wizard) { + Ref> result = Ref.create(); + TransactionGuard.getInstance().submitTransactionAndWait(() -> result.set(doCreateFromWizard(project, wizard))); + return result.get(); + } + + private static List doCreateFromWizard(@Nullable Project project, AbstractProjectWizard wizard) { if (project == null) { Project newProject = NewProjectUtil.createFromWizard(wizard, null); - return newProject == null ? Collections.emptyList() : Arrays.asList(ModuleManager.getInstance(newProject).getModules()); + return newProject == null ? Collections.emptyList() : Arrays.asList(ModuleManager.getInstance(newProject).getModules()); } final ProjectBuilder projectBuilder = wizard.getProjectBuilder(); diff --git a/java/idea-ui/src/com/intellij/ide/actions/NewProjectAction.java b/java/idea-ui/src/com/intellij/ide/actions/NewProjectAction.java index 8c99bb408305..33bd7f825b09 100644 --- a/java/idea-ui/src/com/intellij/ide/actions/NewProjectAction.java +++ b/java/idea-ui/src/com/intellij/ide/actions/NewProjectAction.java @@ -26,6 +26,11 @@ import com.intellij.openapi.wm.impl.welcomeScreen.NewWelcomeScreen; import org.jetbrains.annotations.NotNull; public class NewProjectAction extends AnAction implements DumbAware { + @Override + public boolean startInTransaction() { + return true; + } + public void actionPerformed(AnActionEvent e) { NewProjectWizard wizard = new NewProjectWizard(null, ModulesProvider.EMPTY_MODULES_PROVIDER, null); NewProjectUtil.createNewProject(getEventProject(e), wizard); diff --git a/java/idea-ui/src/com/intellij/ide/actions/ShowStructureSettingsAction.java b/java/idea-ui/src/com/intellij/ide/actions/ShowStructureSettingsAction.java index 2a0de25cb312..e167d2f07a5d 100644 --- a/java/idea-ui/src/com/intellij/ide/actions/ShowStructureSettingsAction.java +++ b/java/idea-ui/src/com/intellij/ide/actions/ShowStructureSettingsAction.java @@ -26,6 +26,12 @@ import com.intellij.openapi.roots.ui.configuration.ProjectStructureConfigurable; import org.jetbrains.annotations.NotNull; public class ShowStructureSettingsAction extends AnAction implements DumbAware { + + @Override + public boolean startInTransaction() { + return true; + } + @Override public void actionPerformed(AnActionEvent e) { Project project = e.getProject(); diff --git a/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/ProjectStructureConfigurable.java b/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/ProjectStructureConfigurable.java index 13c89f94e2d1..24bdaa5f8ec0 100644 --- a/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/ProjectStructureConfigurable.java +++ b/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/ProjectStructureConfigurable.java @@ -20,7 +20,9 @@ import com.intellij.facet.Facet; import com.intellij.ide.util.PropertiesComponent; import com.intellij.openapi.actionSystem.*; import com.intellij.openapi.application.AccessToken; +import com.intellij.openapi.application.TransactionGuard; import com.intellij.openapi.components.ServiceManager; +import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.module.Module; import com.intellij.openapi.module.ModuleManager; import com.intellij.openapi.options.BaseConfigurable; @@ -67,6 +69,7 @@ import static com.intellij.openapi.roots.ui.configuration.ProjectStructureConfig public class ProjectStructureConfigurable extends BaseConfigurable implements SearchableConfigurable, Place.Navigator, Configurable.NoMargin, Configurable.NoScroll { + private static final Logger LOG = Logger.getInstance("#com.intellij.openapi.roots.ui.configuration.ProjectStructureConfigurable"); public static final DataKey KEY = DataKey.create("ProjectStructureConfiguration"); @@ -309,6 +312,8 @@ public class ProjectStructureConfigurable extends BaseConfigurable implements Se @Override public void apply() throws ConfigurationException { + LOG.assertTrue(TransactionGuard.getInstance().getContextTransaction() != null, "Project Structure should be shown in a transaction, see AnAction#startInTransaction"); + for (Configurable each : myName2Config) { if (each instanceof BaseStructureConfigurable && each.isModified()) { ((BaseStructureConfigurable)each).checkCanApply(); @@ -331,7 +336,7 @@ public class ProjectStructureConfigurable extends BaseConfigurable implements Se } myContext.getDaemonAnalyzer().clearCaches(); - SwingUtilities.invokeLater(() -> BuildManager.getInstance().scheduleAutoMake()); + BuildManager.getInstance().scheduleAutoMake(); } @Override @@ -376,10 +381,6 @@ public class ProjectStructureConfigurable extends BaseConfigurable implements Se } } - public void hideSidePanel() { - mySplitter.getFirstComponent().setVisible(false); - } - @Override public void disposeUIResources() { if (!myUiInitialized) return; @@ -434,7 +435,7 @@ public class ProjectStructureConfigurable extends BaseConfigurable implements Se if (moduleToSelect != null) { final Module module = ModuleManager.getInstance(myProject).findModuleByName(moduleToSelect); assert module != null; - place = place.putPath(ModuleStructureConfigurable.TREE_OBJECT, module).putPath(ModuleEditor.SELECTED_EDITOR_NAME, editorNameToSelect); + place = place.putPath(MasterDetailsComponent.TREE_OBJECT, module).putPath(ModuleEditor.SELECTED_EDITOR_NAME, editorNameToSelect); } return navigateTo(place, requestFocus); } @@ -444,20 +445,20 @@ public class ProjectStructureConfigurable extends BaseConfigurable implements Se } public Place createModulePlace(@NotNull Module module) { - return createModulesPlace().putPath(ModuleStructureConfigurable.TREE_OBJECT, module); + return createModulesPlace().putPath(MasterDetailsComponent.TREE_OBJECT, module); } public ActionCallback select(@Nullable final Facet facetToSelect, final boolean requestFocus) { Place place = createModulesPlace(); if (facetToSelect != null) { - place = place.putPath(ModuleStructureConfigurable.TREE_OBJECT, facetToSelect); + place = place.putPath(MasterDetailsComponent.TREE_OBJECT, facetToSelect); } return navigateTo(place, requestFocus); } public ActionCallback select(@NotNull Sdk sdk, final boolean requestFocus) { Place place = createPlaceFor(myJdkListConfig); - place.putPath(BaseStructureConfigurable.TREE_NAME, sdk.getName()); + place.putPath(MasterDetailsComponent.TREE_NAME, sdk.getName()); return navigateTo(place, requestFocus); } @@ -473,7 +474,7 @@ public class ProjectStructureConfigurable extends BaseConfigurable implements Se public Place createProjectOrGlobalLibraryPlace(Library library) { Place place = createPlaceFor(getConfigurableFor(library)); - place.putPath(BaseStructureConfigurable.TREE_NAME, library.getName()); + place.putPath(MasterDetailsComponent.TREE_NAME, library.getName()); return place; } @@ -485,7 +486,7 @@ public class ProjectStructureConfigurable extends BaseConfigurable implements Se public Place createArtifactPlace(Artifact artifact) { Place place = createPlaceFor(myArtifactsStructureConfigurable); if (artifact != null) { - place.putPath(BaseStructureConfigurable.TREE_NAME, artifact.getName()); + place.putPath(MasterDetailsComponent.TREE_NAME, artifact.getName()); } return place; } @@ -496,7 +497,7 @@ public class ProjectStructureConfigurable extends BaseConfigurable implements Se return selectOrderEntry(libraryOrderEntry.getOwnerModule(), libraryOrderEntry); } Place place = createPlaceFor(getConfigurableFor(lib)); - place.putPath(BaseStructureConfigurable.TREE_NAME, libraryOrderEntry.getLibraryName()); + place.putPath(MasterDetailsComponent.TREE_NAME, libraryOrderEntry.getLibraryName()); return navigateTo(place, requestFocus); } @@ -600,14 +601,6 @@ public class ProjectStructureConfigurable extends BaseConfigurable implements Se return myJdkListConfig; } - public ProjectLibrariesConfigurable getProjectLibrariesConfig() { - return myProjectLibrariesConfig; - } - - public GlobalLibrariesConfigurable getGlobalLibrariesConfig() { - return myGlobalLibrariesConfig; - } - public ModuleStructureConfigurable getModulesConfig() { return myModulesConfig; } diff --git a/platform/platform-impl/src/com/intellij/openapi/options/newEditor/SettingsDialog.java b/platform/platform-impl/src/com/intellij/openapi/options/newEditor/SettingsDialog.java index 95ec4d9d9e80..f1692ae57ac6 100644 --- a/platform/platform-impl/src/com/intellij/openapi/options/newEditor/SettingsDialog.java +++ b/platform/platform-impl/src/com/intellij/openapi/options/newEditor/SettingsDialog.java @@ -18,6 +18,7 @@ package com.intellij.openapi.options.newEditor; import com.intellij.CommonBundle; import com.intellij.openapi.actionSystem.DataProvider; import com.intellij.openapi.application.ApplicationManager; +import com.intellij.openapi.application.TransactionGuard; import com.intellij.openapi.help.HelpManager; import com.intellij.openapi.options.Configurable; import com.intellij.openapi.options.ConfigurableGroup; @@ -74,7 +75,9 @@ public class SettingsDialog extends DialogWrapper implements DataProvider { @Override public void show() { - DumbService.allowStartingDumbModeInside(DumbModePermission.MAY_START_BACKGROUND, () -> super.show()); + TransactionGuard.getInstance().submitTransactionAndWait( + () -> DumbService.allowStartingDumbModeInside(DumbModePermission.MAY_START_BACKGROUND, () -> + super.show())); } From 89eb51f21c4abfa805e41a017763e83258139fc2 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Fri, 16 Sep 2016 08:52:52 +0300 Subject: [PATCH 23/23] code generation: ensure parameter is created with denotable type EA-69807 - AIOOBE: PsiElementFactoryImpl.createParameter --- .../codeInsight/generation/GenerateMembersUtil.java | 2 +- .../afterWildcardInImplementsClause.java | 10 ++++++++++ .../beforeWildcardInImplementsClause.java | 6 ++++++ 3 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementMethods/afterWildcardInImplementsClause.java create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementMethods/beforeWildcardInImplementsClause.java diff --git a/java/java-impl/src/com/intellij/codeInsight/generation/GenerateMembersUtil.java b/java/java-impl/src/com/intellij/codeInsight/generation/GenerateMembersUtil.java index 3862c04ccbff..1c3b41c04da4 100644 --- a/java/java-impl/src/com/intellij/codeInsight/generation/GenerateMembersUtil.java +++ b/java/java-impl/src/com/intellij/codeInsight/generation/GenerateMembersUtil.java @@ -444,7 +444,7 @@ public class GenerateMembersUtil { paramName = generator.generateUniqueName(paramName); } generator.addExistingName(paramName); - result[i] = factory.createParameter(paramName, substituted, target); + result[i] = factory.createParameter(paramName, GenericsUtil.getVariableTypeByExpressionType(substituted), target); } return result; } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementMethods/afterWildcardInImplementsClause.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementMethods/afterWildcardInImplementsClause.java new file mode 100644 index 000000000000..3fe925c01504 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementMethods/afterWildcardInImplementsClause.java @@ -0,0 +1,10 @@ +// "Implement methods" "true" +interface I { + void m(I i, T v); +} +class Impl implements I { + @Override + public void m(I i, Object v) { + + } +} \ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementMethods/beforeWildcardInImplementsClause.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementMethods/beforeWildcardInImplementsClause.java new file mode 100644 index 000000000000..3c65d5d2e61a --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementMethods/beforeWildcardInImplementsClause.java @@ -0,0 +1,6 @@ +// "Implement methods" "true" +interface I { + void m(I i, T v); +} +class Impl implements I { +} \ No newline at end of file