Commit Graph

57 Commits

Author SHA1 Message Date
Toshiaki Kameyama bd661fcf82 Method sepatators: separate single-expression functions (KT-30782)
#KT-30782 Fixed
2019-06-29 20:36:55 +03:00
Mikhail Zarechenskiy c95eddbbbe [IDE-NI-MIGRATE] Migrate few tests for new inference 2019-05-06 13:59:28 +03:00
Natalia Selezneva d45644cea4 Fix path to TestNG library in tests for 191 2019-04-24 11:39:17 +03:00
Pavel V. Talanov 47935c19e6 Show line markers for JUnit test methods in abstract class
#KT-27977 Fixed
2018-11-09 15:51:34 +01:00
Vyacheslav Gerasimov a2bf417d75 Remove 172 bunchset 2018-08-02 19:32:18 +03:00
Nikolay Krasko 1010c1285a 172: Revert "RecursiveMethodCallMarkerInfo and SuspendCallMarkerInfo forced to target Leaf-elements"
This reverts commit c78ec71e17c09ddb1094e44c84d9a1b92a3b509f.
2018-04-11 16:28:00 +03:00
Pavel V. Talanov 229184dd78 Dsl line marker: provide simple tooltip
Test dsl line marker
2018-02-08 15:36:42 +01:00
Nicolay Mitropolsky dd45780de9 RecursiveMethodCallMarkerInfo and SuspendCallMarkerInfo forced to target Leaf-elements
because of restriction added in IDEA 173
2018-01-12 13:53:45 +03:00
Dmitry Jemerov 86c10b635a Initial implementation of method separators
#KT-13029 Fixed
2018-01-10 13:17:33 +01:00
Alexey Sedunov bcdb46653c Line Markers: Detect recursive calls of companion invoke() member
#KT-21076 Fixed
2017-11-27 21:19:23 +03:00
Alexey Sedunov 4cc1e22a5a Misc: Support light-methodless members in overrider search
In particular, support line markers for expect-class members
and navigation to expect-class members from corresponding base members
2017-10-24 15:43:51 +03:00
Dmitry Neverov 3b4dafe691 Detect recursive property accessors #KT-17221 Fixed 2017-05-19 20:36:09 +03:00
Dmitry Jemerov c778e0454d Show line markers for suspending iteration
#KT-16803 Fixed
2017-05-10 14:27:23 +02:00
Dmitry Jemerov baa43a2a55 Show line markers for sealed classes
#KT-16755 Fixed
2017-05-10 14:27:22 +02:00
Dmitry Jemerov d49e9d7064 Fix override navigation from properties defined in primary constructor
EA-91185 - CCE: KotlinLineMarkerProviderKt$OVERRIDDEN_PROPERTY$.browse
2017-04-28 12:02:20 +02:00
Pavel V. Talanov 4f701285b1 Light class builder: do not generate methods delegating to DefaultImpls in kotlin classes
Class APIs from java point of view stays the same so we can avoid generating those methods
Otherwise we have to calculate all supertypes when getMethods() is called,
    which imposes severe performance penalties
We have to pretend these methods are not 'abstract' (also we consider them 'default' for safety)
    so java highlighting does not report "class should be abstract" for all inheritors
We have to manually report "class should be abstract" on some of the java inheritors,
    specifically those that are implementing interfaces directly
	    as opposed to extending kotlin classes implementing those interfaces
2017-04-09 15:09:01 +03:00
Alexey Sedunov 612dffb893 Highlighting: Add line markers for suspend function calls in coroutines
#KT-14689 Fixed
2017-01-10 21:16:10 +03:00
Mikhail Glukhikh a846e41b46 Cleanup: KotlinLineMarkerProvider 2016-12-19 15:46:27 +03:00
Dmitry Jemerov e224041760 show line markers for properties defined in the primary constructor (KT-12626) 2016-07-14 23:32:07 +02:00
Alexey Sedunov 3c79eab2fd Line Markers: Show recursion line markers for extension function calls with different receivers
#KT-11495 Fixed
2016-04-19 20:27:33 +03:00
Nikolay Krasko a642a15947 "Run Test" line markers now wrap the function names. Additional marker on abstract class. 2016-04-05 00:39:46 +03:00
Alexander Udalov f130755972 Use new built-in binary format (.kotlin_builtins files) in IDE
Instead of .kotlin_class and .kotlin_package files, .kotlin_builtins files are
now supported: they are decompiled to a long file consisting of all non-real
classes (those which do not also have .class files) and members in the
corresponding package.

Unlike the old files, .kotlin_builtins files have a binary version in the
beginning, which allows us to skip decompilation and stub building in case the
file has an unsupported version. This could previously lead to exceptions, see
KT-11077, EA-79339.

The change in DecompiledTextFactory is needed because without "defined in ..."
the keys for members in the long decompiled file are not unique, as there are
multiple members with exactly the same signatures in different classes (e.g.
arithmetic operations in primitive classes).

Remove testData files with the decompiled text and stubs of built-in symbols
because now that the whole package is decompiled to a single file, it would be
painful to update these files each time something in built-in sources changes

 #KT-11077 Fixed
2016-02-26 11:29:10 +03:00
Pavel V. Talanov 1c4d4f3e36 Create class descriptors for local classes in illegal positions
Typecheck code in illegal selector position
Fixes exceptions on "val p = A.class" erroneous code
2015-12-29 15:56:44 +03:00
Pavel V. Talanov ca38a50e1a Test data: fix test data for LineMarkerTest 2015-12-15 20:22:12 +03:00
Yan Zhulanow 9d1af5a17e Fix tests: "infix modifier required" and "operator modifier required" errors 2015-11-27 15:51:11 +03:00
Michael Bogdanov c63d221da3 Skip private members in facades 2015-10-18 17:53:26 +03:00
Yan Zhulanow ed5c059cea Rename unary plus() and minus() to unaryPlus() and unaryMinus() 2015-10-09 22:49:17 +03:00
Alexey Sedunov 5a325aeec0 Line Marking: Implement run markers for test classes/functions 2015-10-08 13:15:16 +03:00
Dmitry Jemerov c7b26ed7ca improve support for renaming overriding methods in enum entries
#KT-8891 Fixed
2015-08-28 15:49:07 +02:00
Nikolay Krasko 3d8f04e4fe Update test data: Idea can't parse description with "ctrl+ alt + b" promotion 2015-06-23 15:59:38 +03:00
Nikolay Krasko d1e7e184b6 Do psi-only checks to avoid unnessasary resolve in creating recursion markers 2015-06-19 14:15:17 +03:00
Dmitry Jemerov 625096466e IDE testdata: s/trait/interface 2015-05-13 16:13:13 +02:00
Michael Bogdanov 49f063522c Inline util functions renaming 2015-05-05 12:47:57 +03:00
Michael Bogdanov e0aa64b8d2 Support functional expression in non-local returns 2015-05-05 12:47:56 +03:00
Evgeny Gerashchenko 53ef521a8f Deparenthesizing this expression. 2015-04-08 16:44:45 +03:00
Evgeny Gerashchenko d7928b7251 Added test cases with labeled diff. 2015-04-08 16:43:34 +03:00
Evgeny Gerashchenko 4c5bfaeb8b Checking for different receiver in implicit calls. They are considered not recursive. 2015-04-08 16:37:41 +03:00
Evgeny Gerashchenko 015da2f8ca More proper code to check if lambda is inlined. Parameter of inline function can be annotated with "noInline". 2015-04-08 15:14:15 +03:00
Evgeny Gerashchenko 6041d566d9 Line markers for recursive calls. 2015-04-08 15:14:10 +03:00
Evgeny Gerashchenko 85e9f2207e Minor. Moved test data to subdirectory. 2015-04-08 14:38:04 +03:00
Pavel V. Talanov 06916d98c6 default -> companion: replace all mentions of default and default object 2015-03-17 15:47:39 +03:00
Evgeny Gerashchenko 5a262b976e Fixed overridden/implemented line markers in abstract classes. 2015-03-16 14:11:42 +03:00
Pavel V. Talanov 59f192ef90 Replace 'class object' with 'default object' in renderers and test data
Includes changes to decompiled text
Old syntax is used in builtins and project code for now
2015-03-06 19:36:54 +03:00
Nikolay Krasko c5852152b2 Don't ruin highlighting if there's no descriptor in resolve session
#EA-61683 Fixed
2014-10-14 15:38:27 +04:00
Nikolay Krasko f0e7435254 A better heuristics is declaration implemented or overriden 2014-10-01 18:05:46 +04:00
Nikolay Krasko 5c6d74af7d Test for "Incorrect override icon shown for overloaded methods" (KT-4428)
#KT-4428 Fixed
2014-10-01 18:03:02 +04:00
Nikolay Krasko 236cdc7d82 Filter synthetic trait overrides for "overriding" markers too 2014-10-01 18:02:54 +04:00
Nikolay Krasko 897ebd0347 Linemarker tests 2014-10-01 18:02:52 +04:00
Nikolay Krasko 6aa5e53a00 Fix navigate to super declaration line marker tooltip
Don't show overridden function signature each time, show only where it's declared
2014-10-01 17:58:56 +04:00
Alexander Udalov f7b6457139 Replace "jet" package name with "kotlin" in testData 2014-03-02 19:55:26 +04:00