Commit Graph

25576 Commits

Author SHA1 Message Date
Pavel V. Talanov 52cb404920 Minor: StubIndexServiceImpl -> IdeStubIndexService 2015-09-09 21:20:01 +03:00
Pavel V. Talanov 9720c1d983 Make StubIndexService responsible for creating file stubs
Also convert to kotlin and make an abstract class
2015-09-09 21:19:53 +03:00
Pavel V. Talanov 5181a01a40 Minor: rename forPackageStub -> forFile 2015-09-09 21:19:44 +03:00
Dmitry Petrov 0839d78797 Fix CodegenFileClassesProvider problems related to wrong/incomplete code in IDE 2015-09-09 19:08:19 +03:00
Dmitry Petrov bf1c0260f1 Multifile class part names are "1${PartName}".
Multifile class parts are final.
2015-09-09 19:08:19 +03:00
Dmitry Petrov 025be4f541 No more CodegenContext.STATIC 2015-09-09 19:08:19 +03:00
Dmitry Petrov cd341e957e Cleanup after review
+ stub builder test for multifile class
2015-09-09 19:08:19 +03:00
Dmitry Petrov 8162272106 Cleanup
- do not use annotation resolve in CodegenFileClassProvider
- test using private methods across different parts of multifile class
2015-09-09 19:08:19 +03:00
Dmitry Petrov 5e38c99f81 Name clash test for file class vs multifile class 2015-09-09 19:08:19 +03:00
Dmitry Petrov 0c951b2ed3 Decompilation support
- class header reader for KotlinMultifileClass, KotlinMultifileClassPart
- proper implClassName for multifile class members
2015-09-09 19:08:18 +03:00
Dmitry Petrov e88584742e basic multifile class codegen tests 2015-09-09 19:08:18 +03:00
Dmitry Petrov b3421479f1 cleanup 2015-09-09 19:08:18 +03:00
Dmitry Petrov 07bedc0378 fix CLI help test 2015-09-09 19:08:18 +03:00
Dmitry Petrov 879d7b1b24 workaround for NPE in proguard 2015-09-09 19:08:18 +03:00
Dmitry Petrov a00346a141 MultifileClassCodegen
- initial implementation
- new Kotlin file kinds + stub builder
2015-09-09 19:08:17 +03:00
Nikolay Krasko 9ab658b8d5 Use private val to avoid name clashing (fix after review) 2015-09-09 18:09:39 +03:00
Ilya Gorbunov 5a0cd4f6fb Clarify documentation for asReversed. 2015-09-09 17:56:34 +03:00
Nikolay Krasko f348f56a0b Pre-count and store fqname to avoid read-action requiment in equals and hashCode (EA-72806) 2015-09-09 17:50:04 +03:00
Dmitry Jemerov 736a60cc18 processor passed to searchReferences() can be invoked from multiple threads, so we need synchronization around the results array (EA-72834) 2015-09-09 16:26:47 +02:00
Natalia Ukhorskaya 0096f2668c Fix step over if there isn't any inlined arguments 2015-09-09 15:21:25 +03:00
Mikhail Glukhikh aabf579454 java.lang.annotation.Documented is now special meta annotation + a few unused fields dropped 2015-09-09 14:58:44 +03:00
Nikolay Krasko 0b6c484c6d Disable notification about outdated ABI in Kotlin project 2015-09-09 13:33:32 +03:00
Michael Bogdanov 0f6bf80c0a Fix kotlin module name for gradle plugin 2015-09-09 13:32:40 +03:00
Michael Bogdanov 4d871ef2c6 Added tests for moduleName to maven plugin 2015-09-09 13:32:40 +03:00
Michael Bogdanov a52281f52a Support default module name for withKotlin ant task 2015-09-09 13:32:39 +03:00
Denis Zharkov 7c16fb8a89 Fix StringIndexOutOfBoundsException
#EA-72837 Fixed
2015-09-09 12:51:19 +03:00
Denis Zharkov c449c0d080 Deprecate inlineOption in favor of crossinline modifier 2015-09-09 12:35:19 +03:00
Pavel V. Talanov 9b8540543f Fix generation of light classes for package facade from binaries
Refactor code a bit
2015-09-08 21:27:41 +03:00
Pavel V. Talanov 234b52b24e J2K IDELightClassGenerationSupport: fix code and some prettifications 2015-09-08 21:27:40 +03:00
Pavel V. Talanov d1d18618b5 J2K IDELightClassGenerationSupport: autoconvert 2015-09-08 21:27:40 +03:00
Pavel V. Talanov c37b15d629 J2K IDELightClassGenerationSupport: rename file 2015-09-08 21:27:39 +03:00
Stanislav Erokhin 5fb6a15c81 Minor. fix testdata 2015-09-08 20:51:32 +03:00
Alexander Udalov 4dc29bf0b2 Introduce 'kotlin' script for running programs
'kotlin' is to 'kotlinc' what 'java' is to 'javac'. However it will support
much more: running class by name, jar, scripts, expressions, REPL
2015-09-08 20:30:50 +03:00
Alexander Udalov 3c4b2994a9 Fix protected call to super method from lambda
Previously JVM back-end had an assumption that if we're calling a method
declared in the super class from a lambda via a synthetic accessor, that should
be a super call and it must be done with 'invokespecial'. Which is wrong
because a method declared in the super class may be open and overridden in the
subclass, so 'invokevirtual' should be used. Surprisingly, Java SE verifier
allowed both instructions, but on Android only the latter is possible

 #KT-8899 Fixed
 #KT-9052 Fixed
2015-09-08 20:28:35 +03:00
Alexander Udalov 1ccd0f9fc2 Add GenerationState to CodegenContext 2015-09-08 20:28:34 +03:00
Alexander Udalov 67d683bc59 Minor, use ResolvedCall#getSuperCallExpression in codegen 2015-09-08 20:28:34 +03:00
Alexander Udalov 8a5e83b947 Refactor CodegenContext#accessibleDescriptorIfNeeded 2015-09-08 20:28:33 +03:00
Denis Zharkov dbaf01feed Minor. Add '@' symbol in testData where necessary (fix Java 8 build) 2015-09-08 19:03:49 +03:00
Michael Nedzelsky ea11133142 strict checking for internal visibility 2015-09-08 19:00:45 +03:00
Dmitry Jemerov ae36981a0f trim leading and trailing spaces from text returned as KDocTag.getContent() 2015-09-08 16:57:00 +02:00
Denis Zharkov 297e9484ba Deprecate decapitalized annotations 2015-09-08 17:50:41 +03:00
Mikhail Glukhikh 1dee922861 kotlin.annotation.Target / Retention have now more priority than same java classes if import java.lang.annotation.* is available 2015-09-08 17:18:31 +03:00
Mikhail Glukhikh 0257f46ebb Special modifier parsing for enum entries: last of them is considered as an enum entry name #KT-9088 Fixed 2015-09-08 17:18:28 +03:00
Ilya Gorbunov 52f3e9ca06 Accept in-projection of Comparator as a parameter when possible. 2015-09-08 17:11:12 +03:00
Dmitry Petrov 37d5a16a3d Incremental compilation test for @file:JvmName 2015-09-08 13:02:57 +03:00
Dmitry Petrov c18f87f0c7 Cleanup after review 2015-09-08 13:02:56 +03:00
Dmitry Petrov bc5e29df9f update tests: jvmName --> JvmName 2015-09-08 13:02:56 +03:00
Dmitry Petrov 2519641b2b JvmName annotation support, single-file facade case (just rename file facade class)
- initial implementation of JvmFileClassesProvider
- migrate some of PackagePartClassUtil usages to JvmFileClassesProvider (mostly in Codegen)
- placeholder ("no resolve") implementation for migration period and unclear cases
- tests
2015-09-08 13:02:56 +03:00
Michael Bogdanov 43e91d4d31 Fix npe with ant project 2015-09-08 12:52:57 +03:00
Denis Zharkov 676ca86ea4 Deprecate escaped modifiers and unescaped annotations 2015-09-08 12:11:30 +03:00