Commit Graph

224 Commits

Author SHA1 Message Date
Toshiaki Kameyama a1c52f69f2 New J2K: convert Long.parseLong(s) to s.toLong()
#KT-21504 Fixed
2019-08-13 12:37:16 +03:00
Ilya Kirillov 09ab98a4f8 New J2K: Don't fail on captured types & don't use functional interface with captured types
Note: we have to print captured types for lambda parameters.
It is needed for nullability inference as it requires explicit types specification to work.
Later in post-processing we remove explicit type specifications for lambda parameters which have captured types

#KT-33186 fixed
2019-08-09 16:31:58 +03:00
Toshiaki Kameyama 154cf46f7c New J2K: add ReplaceGuardClause inspection to post-processing
#KT-22412 Fixed
2019-08-09 00:43:28 +03:00
Toshiaki Kameyama f5c0a30c51 Add intention to replace "Map.getOrDefault"
#KT-21503 Fixed
2019-08-07 17:38:15 +03:00
Ilya Kirillov 1981e8b9bf New J2K: Add better error reporting in AST builder 2019-08-02 12:03:59 +03:00
Ilya Kirillov e795e4b73d New J2K: add conversion of binary literals & fix conversion of octal ones
#KT-32835 fixed
2019-07-25 14:34:36 +03:00
Ilya Kirillov 72a09ab59b New J2K: correctly convert number literals with underscores
#KT-32837 fixed
2019-07-25 14:34:35 +03:00
Ilya Kirillov 4ead820395 New J2K: correctly print comments for qualified expression 2019-07-25 14:34:35 +03:00
Ilya Kirillov 2bd5a1f196 New J2K: separate nullability inference from common one & nullability bug fixes
It will be needed for structure mutability inference

#KT-21467 fixed
#KT-32609 fixed
#KT-32572 fixed
#KT-24677 fixed
2019-07-25 14:34:35 +03:00
Ilya Kirillov d7960caf89 New J2K: move all symbols definitions to symbols package 2019-07-25 14:34:35 +03:00
Ilya Kirillov f79b282c60 New J2K: add better support of implicit functional interfaces
#KT-32702 fixed
#KT-19327 fixed
2019-07-25 14:34:34 +03:00
Ilya Kirillov 96ca4712a0 New J2K: consider in-context declarations while performing conversion on copy-paste plain text conversion
#KT-32602 fixed
2019-07-25 14:34:34 +03:00
Ilya Kirillov c865d74965 New J2K: remove unused dependencies from nj2k modules 2019-07-25 14:34:34 +03:00
Ilya Kirillov 1bbdd0bf15 New J2K: remove unused classes 2019-07-25 14:34:34 +03:00
Ilya Kirillov 6e04b1549c New J2K: remove JKVisitor with type parameters 2019-07-25 14:34:33 +03:00
Ilya Kirillov b7917978b8 New J2K: correctly create AST for Java call of Kotlin data class derived members
#KT-32604 fixed
2019-07-16 11:56:08 +03:00
Ilya Kirillov d29d7fb257 New J2K: do not resolve unary expressions method symbols
As we already have its type and may fail on unresolved declaration

#KT-32603 fixed
2019-07-16 11:55:04 +03:00
Ilya Kirillov 84872e064f New J2K: use test data for nj2k conversion tests from nj2k tests data instead of old one 2019-07-16 11:55:04 +03:00
Ilya Kirillov cabc26184b New J2K: convert single Java static import statements 2019-07-10 13:19:23 +03:00
Ilya Kirillov b18350e9c8 New J2K: fix ExceptionInInitializerError in JKJavaPrimitiveTypeImpl 2019-07-10 13:19:23 +03:00
Ilya Kirillov f0dd21790a New J2K: add plain text copy-paste conversion test for new J2K 2019-07-10 13:18:36 +03:00
Ilya Kirillov ba3927b580 New J2K: add default null value to property with type parameter type when it is implicit in Java
#KT-32436 fixed
2019-07-10 13:16:53 +03:00
Ilya Kirillov 9d6338afb2 New J2K: do not fail conversion if some of post-processings throws exception 2019-07-10 13:16:53 +03:00
Ilya Kirillov a9865e5d7b New J2K: check for element validity before applying fix in diagnostic-based post processings 2019-07-10 13:16:53 +03:00
Ilya Kirillov 236f62be2a New J2K, minor: refactor code builder 2019-07-10 13:16:52 +03:00
Ilya Kirillov 934425e86a New J2K: rearrange and optimize some post-processings 2019-07-10 13:16:52 +03:00
Ilya Kirillov 370f113b78 New J2K: run add/remove modifiers post-processings only single time && do not call resolve in them for some corner cases 2019-07-10 13:16:52 +03:00
Ilya Kirillov 3e04bfb156 New J2K: do not print modifiers which are going to be removed in postprocessing 2019-07-10 13:16:52 +03:00
Mikhail Zarechenskiy 60ac2056bd Update diagnostic message in test data
Follow-up of 42a5c488: function `unCapture` is used to render
 diagnostic messages, therefore we have this change now
2019-07-02 14:02:07 +03:00
Ilya Kirillov 3926be900d New J2K: remove accidentally added println call in conversions 2019-06-26 18:36:05 +03:00
Ilya Kirillov 0dfaae2bb4 New J2K: add some tests from obsolete issues 2019-06-26 18:36:05 +03:00
Ilya Kirillov 98be5d8ed0 New J2K: add copy-paste tests for new j2k 2019-06-26 18:36:05 +03:00
Ilya Kirillov dc469cbdbf New J2K: remove incorrect modifiers in post processing 2019-06-26 18:36:05 +03:00
Ilya Kirillov 3beef2b22e New J2K: do not apply diagnostic based inspections if target element is not in the converting range 2019-06-26 18:36:05 +03:00
Ilya Kirillov 1b681a7dd6 New J2K: correctly handle empty range marker in post processings 2019-06-26 18:36:05 +03:00
Nikolay Krasko beb1bc09d4 Update to 192.5118.30 2019-06-25 11:48:59 +03:00
Ilya Kirillov d6dec2a066 New J2K: use PsiModifierListOwner instead of JvmAnnotatedElement for getting annotations from declaration while building AST as PsiLocalVariable is no longer a JvmAnnotatedElement in 192
#KT-31821 fixed
2019-06-17 12:18:05 +03:00
Vyacheslav Gerasimov 5a39c637c2 Build: Fix intellij dependency leak from ir tree module 2019-06-13 21:03:55 +03:00
Ilya Kirillov 2dd604cd70 New J2K, minor: remove unused declarations, fix typos 2019-06-11 18:16:06 +03:00
Ilya Kirillov b80f2c78a0 New J2K, minor: reformat code, optimize imports 2019-06-11 18:16:06 +03:00
Ilya Kirillov 59f66d5882 New J2K: split diagnostic based processing from inspection ones
Analysing file file with diagnostics on each step of post-processings is rather expensive operation so the inspection-like post-processings which don't require diagnostic information was separated from ones that need it

Related to #KT-31848
2019-06-11 18:16:06 +03:00
Ilya Kirillov 3854a323fa New J2K: do not ignore errors in new j2k tests comparison 2019-06-11 10:37:26 +03:00
Ilya Kirillov ce569ca6e0 New J2K: remove static modifier for the case when member is converted without containing class 2019-06-11 10:37:25 +03:00
Ilya Kirillov 9929dba74d New J2K: fix ConcurrentModificationException while analysing implicit initializers 2019-06-11 10:35:32 +03:00
Ilya Kirillov 184825d59d New J2K: remove open modifier for top level functions on post-processing
#KT-31678 fixed
2019-06-11 10:35:32 +03:00
Ilya Kirillov 6d3967d922 New J2K: add tests for some obsolete J2K issues 2019-06-11 10:35:31 +03:00
Ilya Kirillov 04fe51b0aa New J2K: use default test file directives for choosing SDK in tests instead of by filename approach 2019-06-11 10:35:31 +03:00
Ilya Kirillov 8375a12733 New J2K: properly remove redundant modifiers in post-processing as #KT-30804 is fixed 2019-06-11 10:35:31 +03:00
Ilya Kirillov 2aa20d003d New J2K: convert vararg type parameter Java length call to Kotlin size call 2019-06-11 10:35:30 +03:00
Ilya Kirillov b211ae1070 New J2K: correctly convert Kotlin function type 2019-06-11 10:35:30 +03:00