Commit Graph

226 Commits

Author SHA1 Message Date
Dmitry Cherniachenko
5db9ad29c8 Removed setConstType() from is isBoxingCall() to avoid hidden side effect
Const type is now adjusted correctly also when the target is
java.lang.Character or java.lang.Integer
2017-07-10 15:55:32 +03:00
Dmitry Cherniachenko
5f292c415c Removed 'Integer.valueOf()' boxing of literals 2017-07-10 15:55:32 +03:00
Egor.Ushakov
1f0d42ba0d stabilize tests 2017-05-10 17:03:47 +03:00
Egor.Ushakov
4da62061d9 do not fail on clinit decompile error 2017-05-10 17:03:47 +03:00
Egor.Ushakov
17d4894848 IDEA-172200 Decompiler switch-on-enum multiple switches in same class generates wrong cases for all but the first switch-on-enum 2017-05-05 13:20:07 +03:00
Egor.Ushakov
bbc76e7cb4 IDEA-127533 int field is displayed as char - show \n etc as chars 2017-05-04 14:41:36 +03:00
Egor.Ushakov
844177d33e IDEA-127533 int field is displayed as char - show only reasonable ascii as chars 2017-05-04 12:53:29 +03:00
Egor.Ushakov
1c0cad79c6 minor optimization 2017-05-04 12:53:29 +03:00
Egor.Ushakov
601cae8cf8 IDEA-149077 Default decompiler is chosen for several classes instead of Fernflower - fixes for IDEA-CR-20517 2017-05-03 15:23:37 +03:00
Egor.Ushakov
6354fc1211 create less trash objects 2017-05-02 11:50:21 +03:00
Egor.Ushakov
af80a017ae minor cleanup 2017-05-02 11:50:21 +03:00
Egor.Ushakov
4de826363f (byte) type cast in constructor calls 2017-04-27 15:34:31 +03:00
Egor.Ushakov
e44ba9905e IDEA-127533 int field is displayed as char 2017-04-26 21:13:00 +03:00
Egor.Ushakov
478e6896e9 fixed static interface methods 2017-04-26 20:32:39 +03:00
Egor.Ushakov
6a7763922b fixed lambda parameter names already used in the context 2017-04-26 20:32:39 +03:00
Egor.Ushakov
8c440e281c fixed incorrect constructor method reference 2017-04-26 13:57:24 +03:00
Egor.Ushakov
7575bb57de removed unneeded boxing 2017-04-26 13:57:24 +03:00
Egor.Ushakov
a62cc3f709 IDEA-127499 Decompiler doesn't support switch over enums 2017-04-25 17:42:09 +03:00
Egor.Ushakov
2e9dfd2437 copyright 2017-04-25 17:42:09 +03:00
Egor.Ushakov
538418e84a headexprent is always single-element 2017-04-25 12:39:26 +03:00
Egor.Ushakov
cba10744d8 toString for debugging 2017-04-25 12:39:25 +03:00
Egor.Ushakov
5b634ecb4d do not collect field names into a separate set 2017-04-25 12:39:25 +03:00
Egor.Ushakov
2fab291fe1 minor cleanup: avoid creating empty arrays and unneeded boxing 2017-04-25 12:39:25 +03:00
Dmitry Cherniachenko
5de2e5b11b Use bootstrap classloader to only provide access to JRE classes 2017-04-24 16:27:20 +03:00
Dmitry Cherniachenko
94198aa8a5 Detect external vararg methods too (if available on the classpath) 2017-04-24 16:27:20 +03:00
Dmitry Cherniachenko
dfd90978c9 Avoid explicit array creation for vararg parameters 2017-04-24 16:27:20 +03:00
Egor.Ushakov
d149b53799 minor cleanup and formatting 2017-04-24 15:13:13 +03:00
Oleg Panashchenko
2a213aa4a0 Use fully qualified static field name in conflict #541 2017-04-24 14:22:41 +03:00
Egor.Ushakov
0b442fc64b do not process vars if there were errors in the method 2017-04-21 19:18:06 +03:00
Egor.Ushakov
7041accfe9 reduced memory usage - use HashMap for attributes 2017-04-21 12:12:17 +03:00
Egor.Ushakov
234073efb2 specify the exact collection size when we know 2017-04-21 12:12:17 +03:00
Egor.Ushakov
6fc7ae736a speedup descriptors parsing, avoid using regexp split 2017-04-21 12:12:17 +03:00
Egor.Ushakov
7868c0e83a avoid string concat in a loop 2017-04-20 12:40:31 +03:00
Dmitry Cherniachenko
0a7a60fa7b Add '(byte)' and '(short)' type cast for int literals only in invocation parameters 2017-04-19 11:39:37 +03:00
Dmitry Cherniachenko
7e1cb88fe2 Removed unnecessary boxing of primitive types 2017-04-19 11:39:37 +03:00
Dmitry Cherniachenko
cd1acfa266 IDEA-171459 fix type cast for int literals used as byte / short in decompiled code 2017-04-19 11:39:37 +03:00
Egor.Ushakov
4beda48cf8 IDEABKL-7547 Decompiler fails to rename class which consists of digits only 2017-04-13 20:06:46 +03:00
Tagir Valeev
fdf34d9be2 DataPoint: useless check removed (already handled in previous branch) 2017-04-13 12:47:51 +07:00
Egor.Ushakov
d706718b1b added spaces after if and inside the ternary operator 2017-04-04 17:05:24 +03:00
Egor.Ushakov
e09e303e71 IDEA-169534 Decompiler overuses ternary operation 2017-04-03 17:16:24 +03:00
Egor.Ushakov
f53a873116 IDEA-167346 Do not escape single quote in strings 2017-02-07 17:52:08 +03:00
Egor.Ushakov
45384fb8c5 fixed access to private outer class methods with params 2017-01-23 18:40:08 +03:00
Egor.Ushakov
85f61bee81 fixed IdeaDecompilerTest.testStubCompatibility 2017-01-17 21:38:48 +03:00
Egor.Ushakov
9ee45b3f5a cleanup: use streams 2017-01-17 21:02:19 +03:00
Egor.Ushakov
f466a2bc55 more correct variable name in cases where definition is not inside debug name offsets 2017-01-13 21:02:36 +03:00
Egor.Ushakov
0684264b3a IDEA-166073 Extended Width (long, double) constructors cause issues with anonymous classes 2017-01-13 17:58:51 +03:00
Egor.Ushakov
abbf2daf30 use known list size 2017-01-13 17:58:51 +03:00
Egor.Ushakov
5e45e5ac40 IDEA-130708 Incorrect locals names 2017-01-12 16:30:41 +03:00
Egor.Ushakov
6a09fe2524 avoid stream to array copying 2017-01-11 15:14:36 +03:00
Egor.Ushakov
0255eb3ba5 IDEA-149813 Decompiler has lost generic parameter - fixed incorrect warning for lambdas 2017-01-10 18:50:16 +03:00