Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
小 白蛋
Intellij Community
Commits
3430c6e7
Commit
3430c6e7
authored
7 years ago
by
Anna Kozlova
Browse files
Options
Download
Email Patches
Plain Diff
disable parameter can be local for overridden methods (IDEA-159001)
parent
b11d12a7
Branches unavailable
Tags unavailable
No related merge requests found
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
java/java-analysis-impl/src/com/intellij/codeInspection/varScopeCanBeNarrowed/ParameterCanBeLocalInspectionBase.java
+2
-1
...ScopeCanBeNarrowed/ParameterCanBeLocalInspectionBase.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterFor.java
+1
-1
...on/quickFix/ConvertParameterToLocalVariable/afterFor.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterIf.java
+1
-1
...ion/quickFix/ConvertParameterToLocalVariable/afterIf.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterJavadocRef.java
+1
-1
...kFix/ConvertParameterToLocalVariable/afterJavadocRef.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterSimple.java
+1
-1
...quickFix/ConvertParameterToLocalVariable/afterSimple.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterUpdateCallers.java
+1
-1
...x/ConvertParameterToLocalVariable/afterUpdateCallers.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterUpdateCallers1.java
+1
-1
.../ConvertParameterToLocalVariable/afterUpdateCallers1.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeFor.java
+1
-1
...n/quickFix/ConvertParameterToLocalVariable/beforeFor.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeIf.java
+1
-1
...on/quickFix/ConvertParameterToLocalVariable/beforeIf.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeJavadocRef.java
+1
-1
...Fix/ConvertParameterToLocalVariable/beforeJavadocRef.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeOverriden.java
+14
-0
...kFix/ConvertParameterToLocalVariable/beforeOverriden.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeSimple.java
+1
-1
...uickFix/ConvertParameterToLocalVariable/beforeSimple.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeUpdateCallers.java
+1
-1
.../ConvertParameterToLocalVariable/beforeUpdateCallers.java
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeUpdateCallers1.java
+1
-1
...ConvertParameterToLocalVariable/beforeUpdateCallers1.java
java/java-tests/testSrc/com/intellij/java/codeInspection/ConvertParameterToLocalVariableTest.java
+8
-21
...a/codeInspection/ConvertParameterToLocalVariableTest.java
with
36 additions
and
34 deletions
+36
-34
java/java-analysis-impl/src/com/intellij/codeInspection/varScopeCanBeNarrowed/ParameterCanBeLocalInspectionBase.java
+
2
-
1
View file @
3430c6e7
...
...
@@ -6,6 +6,7 @@ import com.intellij.codeInspection.*;
import
com.intellij.psi.*
;
import
com.intellij.psi.controlFlow.*
;
import
com.intellij.psi.search.searches.SuperMethodsSearch
;
import
com.siyeh.ig.psiutils.MethodUtils
;
import
org.jetbrains.annotations.NonNls
;
import
org.jetbrains.annotations.NotNull
;
import
org.jetbrains.annotations.Nullable
;
...
...
@@ -92,7 +93,7 @@ public class ParameterCanBeLocalInspectionBase extends AbstractBaseJavaLocalInsp
public
ProblemDescriptor
[]
checkMethod
(
@NotNull
PsiMethod
method
,
@NotNull
InspectionManager
manager
,
boolean
isOnTheFly
)
{
final
Collection
<
PsiParameter
>
parameters
=
filterFinal
(
method
.
getParameterList
().
getParameters
());
final
PsiCodeBlock
body
=
method
.
getBody
();
if
(
body
==
null
||
parameters
.
isEmpty
()
||
isOverrides
(
method
))
{
if
(
body
==
null
||
parameters
.
isEmpty
()
||
isOverrides
(
method
)
||
MethodUtils
.
isOverridden
(
method
)
)
{
return
ProblemDescriptor
.
EMPTY_ARRAY
;
}
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterFor.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
public
Temp
()
{
for
(
int
i
=
0
;
i
<
10
;
i
++)
{
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterIf.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
public
boolean
flag
;
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterJavadocRef.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
/**
*/
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterSimple.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
void
test
()
{
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterUpdateCallers.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
void
foo
()
{
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterUpdateCallers1.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
void
foo
(
int
k
)
{
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeFor.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
public
Temp
(
int
<
caret
>
p
)
{
for
(
int
i
=
0
;
i
<
10
;
i
++)
{
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeIf.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
public
boolean
flag
;
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeJavadocRef.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
/**
* @param x
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeOverriden.java
0 → 100644
+
14
-
0
View file @
3430c6e7
// "Convert to local" "false"
class
A
{
void
foo
(
int
<
caret
>
i
)
{
i
=
3
;
System
.
out
.
println
(
"i = "
+
i
);
}
}
class
B
extends
A
{
@Override
void
foo
(
int
i
)
{
System
.
out
.
println
(
"i = "
+
i
);
// becomes uncompilable
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeSimple.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
void
test
(
int
<
caret
>
p
)
{
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeUpdateCallers.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
void
foo
(
int
<
caret
>
x
)
{
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeUpdateCallers1.java
+
1
-
1
View file @
3430c6e7
// "Convert to local
variable
" "true"
// "Convert to local" "true"
class
Temp
{
void
foo
(
int
<
caret
>
x
,
int
k
)
{
...
...
This diff is collapsed.
Click to expand it.
java/java-tests/testSrc/com/intellij/java/codeInspection/ConvertParameterToLocalVariableTest.java
+
8
-
21
View file @
3430c6e7
...
...
@@ -17,14 +17,9 @@
package
com.intellij.java.codeInspection
;
import
com.intellij.JavaTestUtil
;
import
com.intellij.codeInsight.daemon.quickFix.ActionHint
;
import
com.intellij.codeInsight.daemon.quickFix.LightQuickFixParameterizedTestCase
;
import
com.intellij.codeInspection.InspectionManager
;
import
com.intellij.codeInspection.LocalQuickFix
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemHighlightType
;
import
com.intellij.codeInspection.LocalInspectionTool
;
import
com.intellij.codeInspection.varScopeCanBeNarrowed.ParameterCanBeLocalInspection
;
import
com.intellij.psi.PsiElement
;
import
org.jetbrains.annotations.NonNls
;
import
org.jetbrains.annotations.NotNull
;
...
...
@@ -35,24 +30,16 @@ public class ConvertParameterToLocalVariableTest extends LightQuickFixParameteri
return
JavaTestUtil
.
getJavaTestDataPath
()
+
"/inspection"
;
}
public
void
test
()
{
doAllTests
();
}
@NotNull
@Override
protected
void
doAction
(
@NotNull
final
ActionHint
actionHint
,
final
String
testFullPath
,
final
String
testName
)
{
final
LocalQuickFix
fix
=
new
ParameterCanBeLocalInspection
.
ConvertParameterToLocalQuickFix
();
final
int
offset
=
getEditor
().
getCaretModel
().
getOffset
();
final
PsiElement
psiElement
=
getFile
().
findElementAt
(
offset
);
assert
psiElement
!=
null
;
final
InspectionManager
manager
=
InspectionManager
.
getInstance
(
getProject
());
final
ProblemDescriptor
descriptor
=
manager
.
createProblemDescriptor
(
psiElement
,
""
,
fix
,
ProblemHighlightType
.
LIKE_UNUSED_SYMBOL
,
true
);
fix
.
applyFix
(
getProject
(),
descriptor
);
final
String
expectedFilePath
=
getBasePath
()
+
"/after"
+
testName
;
checkResultByFile
(
"In file :"
+
expectedFilePath
,
expectedFilePath
,
false
);
protected
LocalInspectionTool
[]
configureLocalInspectionTools
()
{
return
new
LocalInspectionTool
[]{
new
ParameterCanBeLocalInspection
()};
}
public
void
test
()
{
doAllTests
();
}
@Override
@NonNls
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Projects
Groups
Snippets
Help