Commit Graph

762 Commits

Author SHA1 Message Date
Mikhail Pyltsin
5ccf227f51 IJ-CR-151015 [java-decompiler] IDEA-364167 java decompiler failed to decompile bytecode from a kotlin class with default constructor argument
GitOrigin-RevId: 97d894594371fab7e4ba99c6a181b68e0a2a15d3
2024-12-12 14:17:19 +00:00
Mikhail Pyltsin
4746abf37e [java-decompiler] IDEA-363689 (IJ-CR-150053) Fernflower fails to decompile Java 8 Map.class
- use VARTYPE_UNKNOWN for all unknown types and `getExprType` must always return non-null type

(cherry picked from commit ebe50921fe40561ef6219ff4a51448a910f90c3a)

GitOrigin-RevId: b85b5de42549a32a7b445c5bce1df889f6e4a808
2024-11-25 16:09:15 +00:00
Mikhail Pyltsin
6f745681fa [java-decompiler] IDEA-363088 Broken line mapping for instanceOf
- don't add an offset outside sequence


(cherry picked from commit 326733956ba858cdfc4eb142c0eb6e8c2a8864cc)

IJ-CR-149179

GitOrigin-RevId: e916a4db69c77b9f12381a39df472d4eb2cffe17
2024-11-14 19:25:31 +00:00
Mikhail Pyltsin
9ae741194f [java-decompiler] IDEA-363089 Broken line mapping for finally
- use first line description, preserve finally offset for mapping


(cherry picked from commit b404b8627b19c28b190c1600d4d2283098e44ac7)

IJ-CR-149177

GitOrigin-RevId: e4813fd394022fbcf365fffba4b858865dac5f09
2024-11-14 15:50:03 +00:00
Mikhail Pyltsin
89bc9ca827 [java-decompiler] IDEA-346312 adapt patches
- add javadocs

GitOrigin-RevId: db508077f23ff6762b332c877e3bf3bfc64720fa
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
d8acad81dc [java-decompiler] IDEA-346312 adapt patches
- add javadocs

GitOrigin-RevId: 7590d2a966fee3c85ada06a8734ca639db39deec
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
893d54aab6 [java-decompiler] IDEA-346312 adapt patches
- clean-up

GitOrigin-RevId: 2e17885d0357d94ce1461766a0ebe3c7f48e4eac
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
919ddba333 [java-decompiler] IDEA-346312 adapt patches
- improve try-with-resources

GitOrigin-RevId: c549c4459723a5fd0c6d0b2d128cd934425bae58
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
7cd84baeb2 [java-decompiler] IDEA-346312 adapt patches
- add javadoc
- change types to IMatchable

GitOrigin-RevId: 564f51a63e0069ad3743b9fd047be8cb31b10f79
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
764e36f339 [java-decompiler] IDEA-346312 adapt patches
- refactor MergeHelper

GitOrigin-RevId: 749b25785d89b01d3888d6c0ae73550da2f61a65
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
61803797cc [java-decompiler] IDEA-346312 adapt patches
- rename `getInferredExprType` and make it return void

GitOrigin-RevId: 3ec8f3297de738378b153927fb432f642be8866e
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
43becf507e [java-decompiler] IDEA-346312 adapt patches
- fix lost variables for patterns

GitOrigin-RevId: 860d8ce19d78aa30ee08fb08820b9852703e18b6
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
c2d8bc4fe4 [java-decompiler] IDEA-346312 adapt patches
- renaming. introduce `getExprentsOrSequentialObjects`

GitOrigin-RevId: a981bd228b37383fe01776d51e61ddf7b768d9b9
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
dbc17f77e1 [java-decompiler] IDEA-346312 adapt patches
- rename VarVersion, add javadocs

GitOrigin-RevId: eeb96706e651f909b9aa0d0d6b6aecb9f0cc4c1b
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
f8d36213ec [java-decompiler] IDEA-346312 adapt patches
- delete commented code

GitOrigin-RevId: c6e6c687298ed42a8bd03dfea9ce638b4085d131
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
4f94d28887 [java-decompiler] IDEA-346312 adapt patches
- moving checking static into hasModifier

GitOrigin-RevId: e3b84e8ced9b662cce31eff69305a0bfb7e02a94
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
e5e7f5078f [java-decompiler] IDEA-346312 adapt patches
- examples and javadocs

GitOrigin-RevId: b537e1f544c33313a55193d226475ff44817f7c4
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
be78690f9d [java-decompiler] IDEA-346312 adapt patches
- rename, add javadoc for fillBytecodeRange

GitOrigin-RevId: dc23f2cf1ca0fe84de0e7ae84f8a331ecae6938b
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
c6e43f31ec [java-decompiler] IDEA-346312 adapt patches
- fix rounding with leading zeros

GitOrigin-RevId: 9da47bb0fc1a86b7a3b87588a20a49c20c8898bb
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
1e1832b281 [java-decompiler] IDEA-346312 adapt patches
- rework hiding record constructors

GitOrigin-RevId: 954e1860b0b4d2403d423d4074754369ccae7df3
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
ad8224727e [java-decompiler] IDEA-346312 adapt patches
- extract record constructor hider into separate method

GitOrigin-RevId: 8288331c0f308892302a0d5540f5bec136772a65
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
cdb57601a8 [java-decompiler] IDEA-346312 adapt patches
- add comments with examples

GitOrigin-RevId: 22a84867e417c1a326f78c19d1146b3580f583a4
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
041ae74f7e [java-decompiler] IDEA-346312 adapt patches
- rename `IIdentifierRenamer` -> `IMemberIdentifierRenamer`

GitOrigin-RevId: a13b7c8c1cb5b37ebe803803aad81001c0df9350
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
e810100a47 [java-decompiler] IDEA-346312 adapt patches
- renamed `whitelist` to `mustBeDecompiledList`

GitOrigin-RevId: fab5451a8752cd369ccca403fe4bf3d6e0d6453c
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
5ef2fcce90 [java-decompiler] IDEA-346312 adapt patches
- copy constant pool

GitOrigin-RevId: 64d23ceb70b51407645917e75964ba863b422570
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
202dfab298 [java-decompiler] IDEA-346312 adapt patches
- fix format

GitOrigin-RevId: ba26c98ddacbf935070446705446bcc9a35539b9
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
34e160ae93 [java-decompiler] IDEA-346312 adapt patches
- delete commented code

GitOrigin-RevId: 19db180386eb3890b2321168b291b85c91392a0c
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
93adc40827 [java-decompiler] IDEA-346312 adapt patches
- tests for IDEA-354150

GitOrigin-RevId: 9932ae1b83bf30c99829ff0bf42648be1ef8d6c4
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
7e62370666 [java-decompiler] IDEA-346312 adapt patches
- fix switch in more working way

GitOrigin-RevId: 485da13352e66780cf9a83dab105d3ecddbb6c60
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
f0c639a4a2 [java-decompiler] IDEA-346312 adapt patches
- update README.md
- add nullability annotations

GitOrigin-RevId: 6768d1af32c6b4655093d7942b0969b5f4e84fa3
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
f28f052168 [java-decompiler] IDEA-346312 adapt patches
- use lvt for deleted assignments
- move files
- fix switch case

GitOrigin-RevId: dfa08ec11ab01153679c646299afe453ef4da284
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
e7546bddfd [java-decompiler] IDEA-346312 adapt patches
- show constructors and getters for IDEA
- cast with null
- more tests

GitOrigin-RevId: 4a9aef46e4cac7fd15a27b1c75d88dedd8825659
2024-10-10 09:55:50 +00:00
Mikhail Pyltsin
26b21b852e [java-decompiler] IDEA-346312 adapt patches
- more tests for enums, generics

GitOrigin-RevId: d4c15a9094aec2a789f41d745ecd2d88845a9eb8
2024-10-10 09:55:49 +00:00
Mikhail Pyltsin
8accf5cb9e [java-decompiler] IDEA-346312 adapt patch 053
- fix tests
- fix cases for Groovy

GitOrigin-RevId: b58ba3bebb3c838484daa776b5a5a4166f8b19db
2024-10-10 09:55:49 +00:00
LexManos
0ea1fafed8 [java-decompiler] Patch 0053 from ForgeFlower. Fix synthetic parameters that are not stored in fields.
GitOrigin-RevId: c6c74b8201a85951e1b1df7ba6e5a245562f72a9
2024-10-10 09:55:49 +00:00
LexManos
e25a843e50 [java-decompiler] Patch 0051 from ForgeFlower. Make Statements.toString a bit more useful
Co-authored-by: Mikhail Pyltsin <mikhail.pyltsin@jetbrains.com>

GitOrigin-RevId: 5fee3fe45b24050276cc43991a6ca6b03d062c9b
2024-10-10 09:55:49 +00:00
Mikhail Pyltsin
470daefb6f [java-decompiler] IDEA-346312 adapt patch 048
- update Copyrights

GitOrigin-RevId: 9d6fd1f2c40e4d2dc69aae2975f77b466d7ab059
2024-10-10 09:55:49 +00:00
SuperCoder79
74e32bae0d [java-decompiler] Patch 0048 from ForgeFlower.Improve output of loops inside trycatch
GitOrigin-RevId: 44c74aef2d7f6da9c2f7da6f7a53abbc463111cc
2024-10-10 09:55:49 +00:00
SuperCoder79
4b2a63b5f4 [java-decompiler] Patch 0045 from ForgeFlower.Reduce allocations in getAllExprents
GitOrigin-RevId: bf7243717f3d3eb5ede14d9176ba8a6299a7b9ec
2024-10-10 09:55:49 +00:00
Mikhail Pyltsin
0e7c2be54f [java-decompiler] IDEA-346312 adapt patch 044
- clean-up
- more tests

GitOrigin-RevId: 1f763889cae7396a9eaf081decc1e6a8c0785f11
2024-10-10 09:55:49 +00:00
Mikhail Pyltsin
267ccf6ec7 [java-decompiler] IDEA-346312 adapt patch 044
- clean-up
- more tests

GitOrigin-RevId: 0b33a70fbe9e01e38a56fd9311435bbaafcaa4f5
2024-10-10 09:55:49 +00:00
LexManos
fe6b13500a [java-decompiler] Patch 0044 from ForgeFlower.Search generics when finding where to inject local classes.
GitOrigin-RevId: 0382aaa2c6677dccb9937c6188a59a4c6973b9d3
2024-10-10 09:55:49 +00:00
Mikhail Pyltsin
8cb765251d [java-decompiler] IDEA-346312 adapt patch 043
- fix tests

GitOrigin-RevId: 5d2699a8f6f87036a66a1fad98a46d0a17bb9427
2024-10-10 09:55:49 +00:00
coehlrich
b581005d66 [java-decompiler] Patch 0043 from ForgeFlower.Fix variables in finally blocks not getting renamed
GitOrigin-RevId: e7a0e7deec691553be10a595f0563d749470a63b
2024-10-10 09:55:49 +00:00
Mikhail Pyltsin
af9df6e28a [java-decompiler] IDEA-346312 adapt patch 042
- more tests
- more conditions

GitOrigin-RevId: 96d0005dbf661d9a1fa28ff94a18e0c3f79b2367
2024-10-10 09:55:49 +00:00
LexManos
f3bf316311 [java-decompiler] Patch 0042 from ForgeFlower. Filter out generated Record getters and constructor. Make
canonical constructors that can be compact compact

GitOrigin-RevId: c2caa547818249537c6b22eefe3ccd21bad90568
2024-10-10 09:55:49 +00:00
Mikhail Pyltsin
36dcbd0835 [java-decompiler] IDEA-346312 adapt patch 008
- fix switch patterns

GitOrigin-RevId: b115f96d0af7ba7a079759e0e1da92c89b5781c6
2024-10-10 09:55:49 +00:00
Mikhail Pyltsin
5e7e5b2d33 [java-decompiler] IDEA-346312 adapt patch 041
- recompile files

GitOrigin-RevId: b99823da267fe1ce8f1b2bc69504ab08841470da
2024-10-10 09:55:49 +00:00
SuperCoder79
aac5c6da2a [java-decompiler] Patch 0041 from ForgeFlower. Fix compound assignments
Binary files are changed
Co-authored-by: Mikhail Pyltsin <mikhail.pyltsin@jetbrains.com>

GitOrigin-RevId: 1588124bb6662061a2a46fc3e9180e4645f8ccdc
2024-10-10 09:55:49 +00:00
Mikhail Pyltsin
7f93c11ebc [java-decompiler] IDEA-346312 adapt patch 040
- recompile binary
- small fix

GitOrigin-RevId: edea43d2a138b38fc934a74e41ec256123d3a0e1
2024-10-10 09:55:49 +00:00