Roman Shevchenko
c082dfba98
java-decompiler: more lambdas
2015-02-18 18:03:56 +01:00
Roman Shevchenko
2ea3feb527
Cleanup (doc)
2015-02-17 20:16:10 +01:00
Roman Shevchenko
472f68f18a
java-decompiler: better diagnostic
2014-11-12 12:21:42 +01:00
Roman Shevchenko
85e6caaea1
IDEA-130959 (method and system for interrupting binary decompilers)
2014-11-10 21:59:02 +01:00
Roman Shevchenko
3940565598
IDEA-132625 (decompiler time limit)
2014-11-10 16:59:17 +01:00
Roman Shevchenko
52a7e1c7e9
Cleanup (unused code; formatting; typos)
2014-11-10 16:59:08 +01:00
Roman Shevchenko
0b9402bd45
java-decompiler: renamer interface cleaned
...
- enum instead of magic constants
- typos
2014-11-05 13:57:07 +01:00
Roman Shevchenko
1fde78b6f1
java-decompiler: check for non-existent files
2014-11-05 13:33:13 +01:00
Roman Shevchenko
89b40fd28a
java-decompiler: (var, version) class renamed and made immutable
2014-11-05 12:41:52 +01:00
Roman Shevchenko
82a2939271
java-decompiler: cleanups and fixes
...
- duplicates eliminated
- immutable fields
- typos
- formatting
2014-11-05 11:07:37 +01:00
Roman Shevchenko
020f5c404b
java-decompiler: extra casts on method calls omitted
...
(loosely based on https://github.com/JetBrains/intellij-community/pull/217 )
2014-11-04 11:32:40 +01:00
Roman Shevchenko
38f1a1a9ee
Cleanup (unneeded variable)
2014-10-24 21:49:02 +02:00
Roman Shevchenko
c64b0aaa10
Cleanup (formatting)
2014-10-24 21:46:41 +02:00
Roman Shevchenko
a721490f62
IDEA-127182 (passing line number map to debugger)
2014-10-17 21:35:16 +02:00
Roman Shevchenko
ce721c7acd
java-decompiler: test fix
2014-10-17 20:14:28 +02:00
Roman Shevchenko
3199686543
Cleanup (formatting; typos)
2014-10-17 20:14:03 +02:00
Roman Shevchenko
08c4c683a1
java-decompiler: print mapping table only in unit test mode
2014-10-17 18:22:31 +02:00
Roman Shevchenko
2d36ea60eb
Cleanup (formatting; typos)
2014-10-17 18:21:37 +02:00
Roman Shevchenko
fdc75e3c80
java-decompiler: build script fixed to not fail too early
2014-10-17 15:22:59 +02:00
Roman Shevchenko
b3681fe952
Cleanup (test extracted to make option setting per-class instead of per-test)
2014-10-16 13:52:44 +02:00
Roman Shevchenko
46b494f26f
java-decompiler: do not indent log by unprinted messages
2014-10-14 18:33:37 +02:00
Roman Shevchenko
6889e7435a
EA-41231 (omit synthetic inner class constructor parameter)
2014-10-14 18:32:15 +02:00
Roman Shevchenko
373ca99e37
Cleanup (formatting; naming)
2014-10-14 15:27:13 +02:00
Roman Shevchenko
848c420977
java-decompiler: line numbers matching test
2014-10-14 13:35:29 +02:00
Roman Shevchenko
e0f22e6629
java-decompiler: test classes recompiled to match source line numbers
2014-10-09 18:54:16 +02:00
Roman Shevchenko
ce2169f372
java-decompiler: base class extracted to allow decompiler customization in tests
2014-10-09 18:34:08 +02:00
Roman Shevchenko
41b8ab9299
java-decompiler: minor optimization
2014-10-08 13:27:11 +02:00
Roman Shevchenko
1e3d5276a8
java-decompiler: class name logging on non-fatal errors
2014-10-08 08:18:26 +02:00
Roman Shevchenko
d96104bdec
Cleanup (formatting)
2014-10-07 21:45:26 +02:00
Roman Shevchenko
bef17b44fc
java-decompiler: minor optimization (no more empty array creation)
2014-10-06 17:26:24 +02:00
Roman Shevchenko
8462998a86
java-decompiler: minor optimization
2014-10-06 12:34:49 +03:00
Roman Shevchenko
18a9c2851b
Cleanup (formatting)
2014-10-06 12:32:02 +03:00
Roman Shevchenko
6d2b94910c
java-decompiler: modules reorganized
2014-10-06 11:29:52 +03:00
Roman Shevchenko
07ca9cf062
java-decompiler: unwanted dependency dropped
2014-10-06 10:10:01 +03:00
Roman Shevchenko
512a08c13e
tests: decompiler test data lookup fixed for particular build configuration
2014-10-02 13:58:48 +02:00
Roman Shevchenko
91c64c5a94
Cleanup (loop invariant optimization; formatting)
2014-09-29 17:16:42 +02:00
Roman Shevchenko
5349ad435b
IDEA-130478 (optimization of 6fcac6a5: less short-lived objects)
2014-09-29 13:15:57 +02:00
Roman Shevchenko
a4054817d2
EA-60512 (better logging)
2014-09-16 17:29:40 +04:00
Roman Shevchenko
e1d1425f22
java-decompiler: fix for broken Git checkout on Windows
2014-09-12 19:26:15 +04:00
Roman Shevchenko
e90f1de039
IDEA-129221 (tolerate invalid signature attributes)
2014-09-12 17:30:26 +04:00
Roman Shevchenko
e2f7d09f37
java-decompiler: force decompiled test data to be text files
2014-09-12 13:31:19 +04:00
Roman Shevchenko
69dc786510
java-decompiler: NPE in test fixture; diagnostic
2014-09-12 12:51:55 +04:00
Roman Shevchenko
e74977d467
IDEA-128685 (test added)
2014-09-12 10:29:13 +04:00
Roman Shevchenko
95cd67883e
IDEA-128676 (test added)
2014-09-11 16:18:02 +04:00
Roman Shevchenko
ccd7b93497
Cleanup (test)
2014-09-09 21:48:38 +04:00
Roman Shevchenko
cf72873535
IDEA-127466 (test added)
2014-09-07 16:44:22 +04:00
Roman Shevchenko
7a8097321f
java-decompiler: bulk decompilation test added
2014-09-07 16:13:52 +04:00
Roman Shevchenko
ff382a6fdf
java-decompiler: fixes and cleanups
...
- console decompiler: resource closing, lookup instead of scan, error reporting
- logger interface reworked
- saver interface renamed
- bytecode provider returns byte array (to reduce stream leakage)
- extra level of context unit avoided
- unneeded exceptions, dead code, formatting
2014-09-07 14:35:39 +04:00
Roman Shevchenko
4e79d160ca
java-decompiler: code attributes reading restored
2014-09-04 19:02:10 +04:00
Roman Shevchenko
686b5abef9
java-decompiler: optimization (empty lists allocation avoided)
2014-09-04 18:41:39 +04:00
Roman Shevchenko
1cea85e49a
java-decompiler: optimization (less string buffer allocations on generating text)
2014-09-04 14:33:34 +04:00
Roman Shevchenko
f4f9e8be28
java-decompiler: cleanups
...
- better signatures
- accurate suppression
- unused symbols
- typos
2014-09-03 13:21:31 +04:00
Roman Shevchenko
646f1c3f21
java-decompiler: hide synthetic field assignment
2014-09-03 12:52:55 +04:00
Roman Shevchenko
2df49d32a7
java-decompiler: fixes and cleanups
...
- unified attribute loading code
- common methods for checking member flags
- verifying skip()
- correct resource closing
- typos
2014-09-03 11:39:32 +04:00
Roman Shevchenko
c0c83126a6
java-decompiler: post-import cleanup (test sources reformatted)
2014-09-01 20:01:55 +04:00
Roman Shevchenko
e629738a46
java-decompiler: tests moved
2014-09-01 18:54:33 +04:00
Roman Shevchenko
d5fe121d1d
java-decompiler: post-import cleanup (OS-dependent line separator)
2014-09-01 16:19:31 +04:00
Roman Shevchenko
984af2e7d0
java-decompiler: post-import cleanup (typos)
2014-09-01 16:08:53 +04:00
Roman Shevchenko
3104531729
java-decompiler: post-import cleanup (explicit defaults for all preferences)
2014-09-01 15:58:46 +04:00
Roman Shevchenko
3854b67daa
java-decompiler: post-import cleanup (tests reorganized)
2014-09-01 15:11:41 +04:00
Roman Shevchenko
1a4e48d11d
java-decompiler: post-import cleanup (obsolete copyright option dropped)
2014-08-31 12:57:31 +04:00
Roman Shevchenko
8ef7bcb2ad
java-decompiler: post-import cleanup (readme and build file updated)
2014-08-31 12:21:32 +04:00
Roman Shevchenko
f5431c3bb1
java-decompiler: post-import cleanup (common fixes and optimizations)
2014-08-29 21:58:12 +04:00
Roman Shevchenko
63b8d35d08
java-decompiler: post-import cleanup (dead code dropped)
2014-08-29 21:57:50 +04:00
Roman Shevchenko
84ea54eb1e
java-decompiler: post-import cleanup (code style issues)
2014-08-29 14:57:29 +04:00
Roman Shevchenko
076e4393f2
java-decompiler: post-import cleanup (formatting and copyright)
2014-08-28 21:34:19 +04:00
Roman Shevchenko
663631f045
java-decompiler: post-import cleanup (classes moved)
2014-08-28 20:52:43 +04:00
Roman Shevchenko
f864084061
java-decompiler: post-import cleanup (root package renamed)
2014-08-28 20:50:00 +04:00
Roman Shevchenko
270a3f6e22
java-decompiler: post-import cleanup (unneeded files dropped)
2014-08-28 20:31:35 +04:00
Roman Shevchenko
58427deb49
missing parentheses on default constructor invocation
2014-07-18 19:34:54 +02:00
Roman Shevchenko
b668038ed9
check for code presence
2014-07-03 16:21:09 +02:00
Roman Shevchenko
ef85e779c6
context cleaning
2014-07-03 15:21:11 +02:00
Roman Shevchenko
84d16304db
cleanup (commented build options; formatting)
2014-06-30 11:49:42 +02:00
Roman Shevchenko
3bdda752cb
cleanup (unused old class)
2014-06-30 11:49:17 +02:00
Roman Shevchenko
059cb0ff4e
prefix obfuscated classes to avoid namespace pollution
2014-06-30 11:41:40 +02:00
Roman Shevchenko
9ae885c9ec
escape non-printable Unicode characters in literals
2014-06-27 13:55:49 +02:00
Roman Shevchenko
4df7866a5c
"ascii" option documented and used for both string and character literals
2014-06-26 15:52:47 +02:00
Roman Shevchenko
b13dee2567
null check added
2014-06-26 14:09:36 +02:00
Roman Shevchenko
95476dc36b
better filtering of synthetic inner classes
2014-06-26 12:42:49 +02:00
Roman Shevchenko
879330b555
minor optimization (o == this in equals)
2014-06-25 17:23:07 +02:00
Roman Shevchenko
e39ae1e71d
repeatable nameless class names
2014-06-25 13:37:41 +02:00
Roman Shevchenko
6e303d8592
false signatures consistency warning on enums
2014-06-25 12:40:11 +02:00
Roman Shevchenko
ed04ea2d69
minor cleanup
2014-06-24 19:49:30 +02:00
Roman Shevchenko
776bb79a9c
minor optimization
2014-06-24 19:48:57 +02:00
Roman Shevchenko
5e68e6346c
writing line separators fixed
2014-06-23 13:17:22 +02:00
Roman Shevchenko
c5c596b164
interface class renamed
2014-06-20 16:03:00 +02:00
Roman Shevchenko
7189d18bfe
adjustable indentation
2014-05-30 15:44:27 +04:00
Roman Shevchenko
0a5a2c671e
NPE fixed
2014-05-29 21:47:34 +04:00
Roman Shevchenko
1119499562
accept inonsistent anonymous classes (with warning)
...
E.g. Groovy-compiled anonymouses extend both parent class and GroovyObject.
2014-05-28 21:56:57 +04:00
Roman Shevchenko
4996a16139
class literals in annotation attributes supported
2014-05-28 20:49:06 +04:00
Roman Shevchenko
0a66fa8925
option to pass numeric literals undecoded
2014-05-28 19:42:51 +04:00
Roman Shevchenko
5c8ad60f12
method parameter annotations fixed
...
(annotations table doesn't count implicit parameters)
2014-05-27 22:19:42 +04:00
Roman Shevchenko
25bd28a290
logging reworked
...
- implementation-specific method removed from the API
- internal exceptions handling incapsulated
2014-05-26 21:47:04 +04:00
Roman Shevchenko
f221cd1c55
single "extends Object" omitted for type parameters (ultimate fix)
...
- sole "extends Object" ignored
- correct decompilation of <T extends I> vs. <T exends Object & I> cases
2014-05-26 20:03:22 +04:00
Roman Shevchenko
e5a9687c94
Ant warning suppressed
2014-05-26 15:49:53 +04:00
Roman Shevchenko
27f08da5cb
deprecation comments generation changed once again
...
new behavior:
- depreaction comment (/** @deprecated */) is added always
- @Deprecated annotation is added only when presented in .class file
rationale:
- both deprecation comment and @Deprecated anno produce "Deprecated" attribute
- adding annotation to members deprecated by comment (old behavior) is actually incorrect
- adding comment to members deprecated by annotation may be incorrect but is acceptable (there is no way to tell if a member was deprecated by sole annotation or both by annotation and comment)
- additional configuration option is therefore no longer needed
2014-05-26 15:49:53 +04:00
Roman Shevchenko
9e231a7e2e
"Deprecated" attribute recognized
2014-05-26 15:49:53 +04:00
Roman Shevchenko
0bbab47a73
"Synthetic" attribute recognized
2014-05-24 20:54:37 +04:00
Roman Shevchenko
495589a815
natural enum formatting (injected constructor parameters omitted)
2014-05-24 14:00:22 +04:00
Roman Shevchenko
290c3ae066
leading "extends Object" omitted for type parameters
2014-05-21 12:38:35 +04:00