Commit Graph

3695 Commits

Author SHA1 Message Date
Pavel Dolgov 8ce43b883c Java: Intention that wraps list/set/map with Collections.unmodifiable - handle ternary 'if' (IDEA-93154) 2019-02-21 18:03:24 +03:00
Pavel Dolgov 96b9ab4f80 Java: Intention that wraps list/set/map with Collections.unmodifiable - handle the caret at the end of the expression (IDEA-93154) 2019-02-21 18:03:24 +03:00
Pavel Dolgov 0267b104b3 Java: Intention that wraps list/set/map with Collections.unmodifiable - check the required type (IDEA-93154) 2019-02-21 18:03:24 +03:00
Tagir Valeev 1f132fb51e ConstantConditionalExpressionInspection: respect precedence when creating type-cast
Fixes EA-137355 - CCE: ConstantConditionalExpressionInspection$ConstantConditionalFix.doFix
Also fix removing parentheses inside RemoveRedundantCastUtil#removeCast
2019-02-21 13:14:16 +07:00
Tagir Valeev e72a28c3e6 Detect recursive type parameter definition when checking for assignability
Fixes EA-137370 - SOE: TypeConversionUtil.isNarrowingReferenceConversionAllowed
2019-02-21 12:58:25 +07:00
Pavel Dolgov 63092d9c2e Java: Intention that wraps list/set/map with Collections.unmodifiableList/Set/Map (IDEA-93154) 2019-02-20 18:00:15 +03:00
Pavel Dolgov ec58711cf3 Java: Quick fix for missing 'return' in lambda body (IDEA-169551) 2019-02-20 13:27:57 +03:00
Tagir Valeev 5c0748b0bc StreamApiMigrationInspection: BufferedReaderLines: support parentheses around readLine in while scenario 2019-02-18 12:37:12 +07:00
Anna.Kozlova bb01072eb6 fix code to compile under java 11 as well 2019-02-11 18:43:21 +01:00
Tagir Valeev 7a897157f1 MergeFilterChainAction: support parentheses 2019-02-08 15:24:53 +07:00
Anna.Kozlova a98a18ce8a calc expected type on the left of assignment based on standalone expression type from the right side (IDEA-199273) 2019-02-07 15:59:00 +01:00
Anna.Kozlova 596fdda3e7 java resolve: prefer package for single-type-import only with default package exception (IDEA-206295) 2019-02-07 11:44:54 +01:00
Artemiy Sartakov 043c2d563e Field can be local: added support for nested and local classes (IDEA-206647) 2019-02-07 17:27:00 +07:00
Tagir Valeev 5de8f58f34 Replace with trivial lambda default fixed after 2cfd1ece23 2019-02-07 10:58:44 +07:00
Pavel Dolgov d9412eba69 Java: Fixed typos in test data file names (IDEA-203895) 2019-02-06 18:40:08 +03:00
Bas Leijdekkers 4e7a841173 qualify field access in initializer when shadowed by new declaration (IDEA-173780) 2019-02-06 16:09:30 +01:00
Anna.Kozlova dac182b6d9 var -> explicit type: fix for foreach parameter (IDEA-206640) 2019-02-05 16:36:29 +01:00
Artemiy Sartakov 1b87c1a508 ConvertToLocalInspection: changed quick-fix to explicitly show type of code block where field is used (IDEA-CR-42222) 2019-02-05 13:26:10 +07:00
Anna.Kozlova 1ace9ab2c3 lambda -> method ref: reuse comment tracker (IDEA-189934) 2019-02-04 15:21:43 +01:00
Pavel Dolgov cf34272833 Java: More tests for intention to split switch branch with multiple values into separate branches (IDEA-203895) 2019-02-04 12:33:41 +03:00
Tagir Valeev 15e0df11f9 IDEA-206497 Replace with stream: support intermediate map operations in counting loops 2019-02-04 14:20:39 +07:00
Pavel Dolgov 4c260c88bc Java: Improvements in intention to split switch branch with multiple values into separate branches (IDEA-203895) 2019-02-01 13:11:28 +03:00
Artemiy Sartakov 4b5b6574aa IntegerMultiplicationImplicitCastToLong: added quick-fix (IDEA-206024) 2019-02-01 15:12:50 +07:00
Tagir Valeev 9e2e512f6b IDEA-192201 Bad code is green: inner class object creation 2019-02-01 12:29:10 +07:00
Anna.Kozlova f92844207a unused imports: don't warn if resolve produces no results but multi resolve does (IDEA-206347) 2019-01-31 18:22:13 +01:00
Anna.Kozlova f2b9476d0f disable create method from usage/change signature based on void argument (IDEA-205710) 2019-01-31 18:22:13 +01:00
Tagir Valeev 8da8dca8e0 IDEA-200455 Suggest to replace (a, b) -> a + b lambdas with Integer::sum, Long::sum, Double::sum 2019-01-31 14:21:13 +07:00
Anna.Kozlova c6e5f6788f overload resolution: ignore explicit type arguments when choosing most specific method for java 8+ 2019-01-30 18:38:47 +01:00
Pavel Dolgov 1bb82a7f5c Java: Intention to split switch branch with multiple values into separate branches (IDEA-203895) 2019-01-30 15:52:26 +03:00
Anna.Kozlova c7af135fba "fix all" should retrieve file to run from the problem description when present (IDEA-206216)
otherwise injected file could be preferred instead of top level one
2019-01-28 20:24:45 +01:00
Anna.Kozlova 582bee8427 type distinction when assignment to parameter bound doesn't work (IDEA-205883) 2019-01-28 18:34:34 +01:00
Artemiy Sartakov 6fbd5cc914 ConvertToLocalInspection: CR fixes (IDEA-CR-42222)
1. localVariableIsCopy -> isLocalVariableCopy
2. added more precise convert to local quick fix message (with info about to where field will be inlined)
3. fixed tests for new convert to local quick fix messages
4. removed inlineVariable(PsiVariable, PsiExpression)
2019-01-28 18:32:01 +07:00
Anna.Kozlova 489bed949a disable add catch exception for method references (IDEA-205952) 2019-01-24 13:59:37 +01:00
Tagir Valeev bcc8d9d5ba CreateLocalFromUsageFix, ExpectedTypesProvider fixes (incl. EA-134473 - assert: CreateLocalFromUsageFix.getAnchor) 2019-01-24 18:49:29 +07:00
Anna.Kozlova 41042d7f09 inference: treat only non-proper bounds of inference variables as unchecked conversion (IDEA-204125) 2019-01-22 13:45:03 +01:00
Anna.Kozlova 4c48f0c2b0 inference: check lower bounds to eqBound assignability explicitly (IDEA-204125) 2019-01-22 13:45:02 +01:00
Anna.Kozlova 1f24e30346 inference: process supertypes starting from self to find valid parameterization (IDEA-204125) 2019-01-22 13:45:02 +01:00
Tagir Valeev c016d59b0c EmptyStatementBodyInspection: delete body on empty foreach 2019-01-21 16:40:02 +07:00
Anna.Kozlova 6d77556d61 method references: error on wrong number of type arguments on static call (IDEA-205657) 2019-01-18 20:31:39 +01:00
Dmitry Batkovich 183921ba14 add test for IDEA-205525 2019-01-18 22:19:56 +03:00
Artemiy Sartakov 52f49b5c5f ConvertToLocalInspection: inline created local variable if this variable is a copy of initializer (IDEA-33733) 2019-01-17 20:26:42 +07:00
Tagir Valeev c51dbd9bc6 IDEA-205482 "Use removal by object" fix may change semantics for List<Integer> 2019-01-16 16:04:35 +07:00
Artemiy Sartakov 25643b9c89 PsiDocMethodOrFieldRef: fixed javadoc resolve for references without param types (IDEA-205390) 2019-01-16 12:45:09 +07:00
Tagir Valeev cfd0c17038 IDEA-205308 'Replace with max()' produces uncompilable source 2019-01-15 13:14:19 +07:00
Tagir Valeev a3ed07435e IDEA-205309 'Replace with findFirst()' produces uncompilable source 2019-01-15 12:32:12 +07:00
Tagir Valeev c68df6edc2 ConvertSwitchToIfIntention: preserve comments from expression when only default branch is present 2019-01-10 17:24:20 +07:00
Tagir Valeev 0835bd0976 ConvertSwitchToIfIntention: fix processing of empty blocks
IDEA-205137 `Replace Switch with If` produce exceptions
IDEA-205122 Unwrap switch fails with exception
2019-01-10 12:40:04 +07:00
Anna.Kozlova e0e26f5b95 fix remove redundant suppress from javadoc tag (IDEA-205073) 2019-01-08 16:16:05 +01:00
Anna.Kozlova 361f188984 highlighting of overriding methods: reorder warnings (IDEA-199315) 2019-01-07 19:09:18 +01:00
Anna.Kozlova 55820ccd15 predict functional type in assignment context (IDEA-199264) 2019-01-07 19:09:17 +01:00