Commit Graph
3708 Commits
Author SHA1 Message Date
peter 4e71366f3b prefer local variables over static method references in completion 2017-02-01 17:53:15 +01:00
Tagir Valeev 9246190c9c StreamApiMigrationInspection: suggest to use takeWhile() in Java-9 2017-02-01 19:46:04 +03:00
peter 8c1e3a6103 IDEA-165033 Completion should prefer expected enum values over the constants from other enums, even if they're more recently used
a test proving it works
2017-02-01 17:42:12 +01:00
Anna.Kozlova 9515470f1f detect generated method name: allow annotations with parameters (IDEA-167480) 2017-02-01 15:47:45 +01:00
Anna.Kozlova e3352b820f method signature: don't substitute twice during erasure (IDEA-167386) 2017-02-01 15:47:45 +01:00
peter 67bd507337 fix collecting completion stats for methods with argument suggestions
ensure that we don't change the tracked document range when starting live template
2017-02-01 11:57:32 +01:00
Tagir Valeev 80256c9bfb StreamToLoopInspection: support some simple StreamEx scenarios; support Java 9 takeWhile/dropWhile 2017-02-01 13:45:40 +03:00
peter 07e1a72077 prefer lookup items with shorter tail text (e.g. List#add(element) without index) 2017-02-01 09:22:50 +01:00
peter f66c322e16 prefer relevant types when completing cast type (IDEA-167190, IDEA-156868) 2017-01-31 19:23:12 +01:00
peter d1d548b8b8 let class name completion statistics not depend on the expected type
once ContainerUtil is selected in one context, prefer it in others
2017-01-31 15:49:07 +01:00
Tagir Valeev d8836c315d StreamToLoopInspection: support block void lambdas (and returns in forEach not inside nested loop) 2017-01-31 16:29:03 +03:00
Tagir Valeev c15f721206 StreamToLoopInspection: support Iterable.forEach() 2017-01-31 16:29:03 +03:00
Tagir Valeev a47088fa4f StringConcatenationInLoopsInspection: automatically create append chains 2017-01-31 16:29:02 +03:00
peter a5a04bb4af IDEA-167285 Using "complete current statement" with code completion produces broken code 2017-01-30 21:10:52 +01:00
Tagir Valeev e8c6ba183b IDEA-167263 Stream API migration does not work when replacing simple loop on array of primitive types (int, long, double) 2017-01-30 14:00:52 +03:00
Pavel Dolgov 14b3a1b38f Java: When generating return statement where the returned type is an array use raw type in array creation (IDEA-163341) 2017-01-30 13:37:29 +03:00
peter 2ac4ed9c48 IDEA-167160 Completion doesn't suggest types for parameters in lambdas in Java 2017-01-27 15:06:16 +01:00
Tagir Valeev fb6ba726e5 StreamToLoop tests grouped 2017-01-27 17:41:53 +07:00
Anna Kozlova 3096de1332 forbid private classes in java 9 interfaces (IDEA-167121) 2017-01-26 19:02:35 +03:00
Tagir Valeevandkskrygan 533f500368 IDEA-167088 Stream API migration: support joining with delimiter 2017-01-26 09:42:45 +01:00
Anna Kozlova 32b5f1d747 ensure local classes are not suggested to be made static (IDEA-167085) 2017-01-25 13:42:32 +03:00
Tagir Valeev 5f29e676e6 IDEA-167088 Stream API migration: allow resulting StringBuilder usages in concatenation 2017-01-25 14:36:47 +07:00
Tagir Valeev 4e6237cc7f IDEA-167088 Stream API migration: intermediate mapping added 2017-01-25 13:36:56 +07:00
Tagir Valeev bfa2fb9348 IDEA-167088 Stream API migration: support simple joining cases: fixed AT_WANTED_PLACE case 2017-01-25 13:05:08 +07:00
Tagir Valeev 16ddd276ed IDEA-167088 Stream API migration: support simple joining cases 2017-01-25 12:46:01 +07:00
Bas Leijdekkers acc75fbbff make class abstract too on making method abstract (IDEA-23358) 2017-01-24 14:41:56 +01:00
Anna Kozlova ff905cfb6d generate super call: insert at caret, fix read only status tracking (IDEA-166864) 2017-01-24 16:16:29 +03:00
Tagir Valeev 2d57e55143 StreamToLoopInspection: support groupingBy(..., counting()/summingInt()/summingLong()/summingDouble()/mapping(summing...)) 2017-01-24 17:56:19 +07:00
Tagir Valeev 1820f2db99 StreamToLoopInspection: allow custom sources when option is set 2017-01-24 15:34:50 +07:00
Tagir Valeev ed51fbe99b LambdaRefactoringUtil#convertToLambda: check context when deciding whether to add qualifier 2017-01-24 13:56:26 +07:00
Tagir Valeev 8f904a0d06 IDEA-166827 Quick-fix to insert SAM-method call 2017-01-23 12:55:51 +07:00
Anna Kozlova 0fe652059e reifiable types: skip anonymous types through the tree hierarchy as they can't be generic (IDEA-166840) 2017-01-20 15:51:24 +03:00
Tagir Valeev 305c101ca6 StreamToLoop: fixed method references unwrap when functional interface type parameter is captured wildcard with upper bound 2017-01-20 17:52:44 +07:00
Anna Kozlova 62d2417879 don't qualify with this in static context (IDEA-166793) 2017-01-20 12:58:34 +03:00
Anna Kozlova 93fa3ed8c8 expected type by prefix expression should be calculated by parent (IDEA-166819) 2017-01-20 12:58:32 +03:00
Anna Kozlova f28bfb5bcb redundant type arguments: check all methods applicability till top level (IDEA-166696) 2017-01-20 12:58:32 +03:00
peter b814473c58 java completion: suggest expected method type arguments (IDEA-166668) 2017-01-19 20:40:38 +01:00
Tagir Valeev 327e51962b IDEA-166814 Stream API migration: support more post-loop steps 2017-01-19 14:14:20 +07:00
peter ab22b9b3ac IDEA-166582 No completion inside lambda when instance of contains lambda 2017-01-18 19:42:14 +01:00
Dmitry Batkovich b8d81c260a java usages highlighting: add an additional test for multiple jdk configuration 2017-01-18 19:47:29 +03:00
Dmitry Batkovich de021824a4 java highlight usages in file: highlight usages of a method when its super method is from alternative jdk 2017-01-18 19:17:19 +03:00
Anna Kozlova e323aa8b9c lambda -> method ref: don't transform by default array access qualifiers (IDEA-166740) 2017-01-18 19:11:49 +03:00
Anna Kozlova 560b5b0265 provide accessibility and static modifier fixes for method references (IDEA-166707) 2017-01-18 16:55:38 +03:00
Anna Kozlova 8913e40ed1 ground type for explicitly typed lambda: add sam to target class substitution (IDEA-166662) 2017-01-18 12:11:17 +03:00
Anna Kozlova 0339448167 diamonds with anonymous: ensure base type calculated over tree cause too much context should be created otherwise (IDEA-166600) 2017-01-18 11:21:35 +03:00
Anna Kozlova 326ad95830 compose throws list on override: ignore supers of super method, ensure same thrown types do not appear in the list (IDEA-166623) 2017-01-18 11:21:34 +03:00
Tagir Valeev cbd273dda8 StreamApiMigration: minor fixes in FindFirst scenarios 2017-01-18 13:52:12 +07:00
Tagir Valeev 4c07a74eb5 CommentTracker: better whitespace handling 2017-01-18 13:52:11 +07:00
Pavel Dolgov ce236e3666 Java: Don't offer "Unwrap 'else' branch" intention if it might cause unreachable code (IDEA-165428) 2017-01-17 16:36:08 +03:00
peter 9ccfc30d74 remember completion method statistics per qualifier type (alas, undoing IDEA-87104)
otherwise methods from base classes get preferred over more relevant ones

example: Object methods like equals/getClass would be preselected when invoking a completion in a just created class, instead of its own methods
2017-01-17 09:24:44 +01:00