Commit Graph

168 Commits

Author SHA1 Message Date
Alexander Udalov 1905401273 Move ClassId to module descriptors, closer to other names 2014-09-16 11:36:39 +04:00
Alexander Udalov 7595e32bb6 Use ClassId instead of JvmClassName in KotlinJvmBinaryClass
ClassId contains exact information about origin of the class (e.g. if '$' in
the class name denotes nested classes separator or just a character in the
name)
2014-09-15 19:30:51 +04:00
Alexander Udalov 1f8b2cef52 Read InnerClasses attribute value in FileBasedKotlinClass
Resolve names mentioned in class declarations based on this information
2014-09-15 19:30:51 +04:00
Alexander Udalov 9648c50ac9 Minor, refactor FileBasedKotlinClass factory method 2014-09-15 19:30:51 +04:00
Alexander Udalov fa39bf03a0 Extract abstract FileBasedKotlinClass out of VirtualFileKotlinClass
Add another implementation of FileBasedKotlinClass which was indirectly used in
jps-plugin (LocalFileKotlinClass)
2014-09-15 19:30:51 +04:00
Nikolay Krasko 041d009b9a Regenerate tests 2014-09-09 14:28:24 +04:00
Andrey Breslav 32c8d3a96d Tests regenerated 2014-09-08 19:57:41 +04:00
Evgeny Gerashchenko 35720ff46d Supported methods with default arguments in partial package compilation. 2014-08-29 16:31:29 +04:00
Evgeny Gerashchenko 3226093fa6 Fixed redeclaration from incremental compilation. Added workaround for JPS bug. 2014-08-29 16:31:29 +04:00
Evgeny Gerashchenko 76864a3eb0 Minor. Clearer logic. 2014-08-29 16:31:29 +04:00
Evgeny Gerashchenko 15cb2ec586 Supported multi-module incremental compilation tests. 2014-08-29 16:31:29 +04:00
Evgeny Gerashchenko eae49e23d4 Fixed compilation. 2014-08-27 16:41:36 +04:00
Evgeny Gerashchenko 95ab99cce3 Minor. Removed redundant assertions. 2014-08-27 16:35:12 +04:00
Evgeny Gerashchenko 97beb92fbc Removed dependency on intellij-core in jps-plugin to avoid linkage errors. 2014-08-27 16:35:12 +04:00
Evgeny Gerashchenko 822f02e23a Introduced bare kotlin compiler plugin for IntelliJ IDEA developers. 2014-08-27 16:35:10 +04:00
Evgeny Gerashchenko 75ffc0f5ff Converted KotlinBuilder from Java to Kotlin 2014-08-27 16:35:06 +04:00
Alexander Udalov 087eec4521 Regenerate tests after recent generator improvements 2014-08-25 19:00:09 +04:00
Alexander Udalov d5d4cff701 Minor, remove dependency of everything on "descriptor.loader.java"
Everything already depends on "frontend.java" which exports
"descriptor.loader.java"
2014-08-25 17:53:18 +04:00
Alexander Udalov 994348b0ca Remove dependency on Maps from jps-plugin
It seems that there's no Guava in the classpath formed for JPS plugins

 #KT-5676 Fixed
2014-08-25 12:36:26 +04:00
Pavel V. Talanov 77416aba5f Add dependency on intellij-core explicitly
util module doesn't export intellij-core dependency
2014-08-22 13:09:08 +04:00
Evgeny Gerashchenko 56fd9cec7a Minor. Renamed and cleaned CompilerServices -> Services. 2014-08-20 14:29:03 +04:00
Evgeny Gerashchenko 487f381287 Minor. Renamed and cleaned CompilerServices -> Services. 2014-08-20 13:46:31 +04:00
Evgeny Gerashchenko fe27b2264a Passing condition to prefer parent class loader as a parameter to preloader. 2014-08-20 13:46:30 +04:00
Evgeny Gerashchenko f3b7ae379f Passing services via type-safe container instead of map. 2014-08-20 13:46:30 +04:00
Evgeny Gerashchenko 184ddbc9e1 Removed passing incremental cache base dir via module script. 2014-08-20 13:46:29 +04:00
Evgeny Gerashchenko cbf8af2e88 Made compiler report source to output mapping when invoked from JPS. 2014-08-20 13:46:28 +04:00
Evgeny Gerashchenko 6dd56a08bd Removed storing module ids in incremental caches. 2014-08-20 13:46:28 +04:00
Evgeny Gerashchenko 3233317316 Passing class loader instead of factory to compiler. 2014-08-20 13:46:27 +04:00
Evgeny Gerashchenko e419c1a604 Moved incremental cache API to separate package. 2014-08-20 13:46:27 +04:00
Evgeny Gerashchenko 5fade9a5a6 Made incremental cache per-module.
Reused IDEA framework which manages per-module storage.
2014-08-20 13:46:26 +04:00
Alexander Udalov 807cf1dcc0 Don't pass "-verbose" by default to compiler in IDE
Let user pass it in the settings. Currently doesn't affect anything since
apparently no verbose messages appear in the IDE compiler output
2014-08-13 11:10:41 +04:00
Evgeny Gerashchenko a4bbe2486c Fixed collecting source files for multiple modules in incremental compilation.
Error led to analyzing same file twice.
2014-08-04 13:38:37 +04:00
Evgeny Gerashchenko 7e6b05554e Always closing IncrementalCache after using. Fixed KannotatorJpsTest. 2014-07-22 21:18:16 +04:00
Evgeny Gerashchenko 714ad858ef Minor. Formatting and imports. 2014-07-22 21:18:16 +04:00
Evgeny Gerashchenko 479711e812 Moved current incremental compiler test data into subdirectory.
Tweaked test generator to avoid creating test methods for parent directory of tests.
2014-07-10 15:05:20 +04:00
Evgeny Gerashchenko 829c25bcf9 Not writing compiler script path when in JPS plugin output.
XML script is removed after JPS plugin session anyway, so it's usually hard to check its contents. Also, it is redundant since -printArgs will write it anyway, so there is still possibility to debug.
2014-07-10 15:05:19 +04:00
Evgeny Gerashchenko 40703c125c Made it possible to run incremental compiler from IDEA.
Two guava functions used were replaced with custom tiny functions, because JPS plugin won't have guava in classpath.
2014-07-10 15:05:19 +04:00
Evgeny Gerashchenko 7212597e61 Optimized KotlinBuilder for targets without Kotlin. Checking dirty/removed files only. 2014-07-10 15:05:19 +04:00
Evgeny Gerashchenko 42cba1cc3c Ignoring not static final fields.
Added tests with class object of trait and val inside object.
2014-07-07 17:41:39 +04:00
Evgeny Gerashchenko aa9384a207 Made constants and inline functions maps class-file based. Otherwise data for different class files was overwritten: e.g. several classes in file, class and top-level callables in one source file.
Extracted superclass with common parts.
2014-07-07 17:41:39 +04:00
Evgeny Gerashchenko f8ac8f727e Merged tests with inline functions in class and in package.
Now this test also checks situation when several class files with inline functions are emitted from one source file.
2014-07-07 17:41:38 +04:00
Evgeny Gerashchenko ca647a9ff4 Expanded test with constants unchanged. Now it has class-level and package-level constants mixed in one file. 2014-07-07 17:41:38 +04:00
Evgeny Gerashchenko 11af8ed616 Added test with constant in class object. 2014-07-07 17:41:37 +04:00
Evgeny Gerashchenko 2ac351928e Minor. Renamed parameter and corresponding variable. 2014-07-07 17:41:37 +04:00
Evgeny Gerashchenko aa9f7a73c9 Inline function changed – rebuild all chunk. 2014-07-07 17:41:36 +04:00
Evgeny Gerashchenko 6f8d9f6ed9 Minor. Reused join() instead of makeString() 2014-07-07 17:41:36 +04:00
Evgeny Gerashchenko 7ef5c75f26 Supported inlining functions which access properties via field. 2014-07-07 17:41:36 +04:00
Evgeny Gerashchenko 2259cc605f Preserving annotations in incremental compilation. 2014-07-07 17:41:35 +04:00
Evgeny Gerashchenko 6c8a9ba378 Basic detection for bytecode of inline functions in incremental compilation.
Basic rule is: bytecode of inline function changed -> recompile everything.
2014-07-07 17:41:35 +04:00
Evgeny Gerashchenko 6501066274 Added hacky checks for accessing compiled functions from our module via package part instead of facade.
#KT-4590 fixed
2014-07-07 17:41:34 +04:00