Compare commits

..

8180 Commits

Author SHA1 Message Date
Stanislav Erokhin
0fbd76755a KT-9461: Inference failed: type parameter fixed early
#KT-9461 Fixed
(cherry picked from commit 77ce125)
2015-10-05 17:37:07 +03:00
Nikolay Krasko
1aba7c28dd Enable version auto-increment and bootstrap against M13 2015-09-25 18:45:11 +03:00
Nikolay Krasko
c2ed3ed2f6 Do not substitute version in bootstrap build 2015-09-25 18:41:52 +03:00
Nikolay Krasko
0e695dd185 Enable override version filter only for specific branch - allow auto-merge to other branches 2015-09-25 18:41:51 +03:00
Nikolay Krasko
dfa3acf0ec Auto-increment version from script
This allows to have own version system on particular branch. It's planned to be enabled in release branches.
2015-09-25 18:41:50 +03:00
Dmitry Jemerov
3f792854b6 to avoid deadlock, don't refresh VFS during service initialization, instead refresh asynchronously during plugin initialization
(cherry picked from commit c5309d7)
2015-09-22 15:28:06 +02:00
Dmitry Jemerov
e754035a13 do not cache binary contents when trying to check if a .class file is compiled with Kotlin
(cherry picked from commit 51ee1b3)
2015-09-22 15:28:06 +02:00
Alexander Udalov
7f60605d8e Update .idea/encodings.xml due to latest changes in IDEA EAP 2015-09-17 21:16:00 +03:00
Alexander Udalov
7306b7abfd Disallow arrays as upper bounds of type parameters
#KT-9189 Fixed
2015-09-17 21:15:58 +03:00
Ilya Gorbunov
e0fde36246 Revert unification of operations on Array<T> and Array<out T> (copyOf, copyOfRange) which return the same type as the receiver.
Leave sortedArray, reversedArray and sliceArray only for covariant projection of array as the receiver.
2015-09-17 21:15:53 +03:00
Alexey Tsvetkov
75f52ce5d4 Relax test assert: format-version.txt is ok
This change is due to d1bc711053
In the former commit kotlin cache dir is always created,
so changed assertion is always false. Not so on master.
2015-09-16 18:53:26 +03:00
Alexey Tsvetkov
bf567ca37e Create Kotlin incremental caches only on write 2015-09-16 18:53:26 +03:00
Alexey Tsvetkov
deb71945d4 Revert removing testDoNotCreateUselessKotlinIncrementalCaches
Removed by mistake in b25dfabbcc
2015-09-16 18:53:26 +03:00
Alexander Udalov
475519cbbc Do not decompile old incompatible package parts
Fix the test by reverting 282727b
2015-09-16 03:33:45 +03:00
Alexander Udalov
e3ec6be284 Revert incomplete hierarchy error reporting because of a flaky test
This reverts commit 0d2c6be91a.
2015-09-16 03:33:17 +03:00
Alexander Udalov
188a702599 Improve ABI version error reporting in the compiler
- only report ABI errors if there's at least one other error
- append additional helpful information to the "unresolved reference" error
2015-09-16 01:55:53 +03:00
Alexander Udalov
9e90116e03 Fix ABI version diagnostic for old package facades
Restore the test data that was erroneously replaced in 84649e4
2015-09-16 01:55:47 +03:00
Alexander Udalov
ce9521a8c5 Minor refactoring in LazyJavaPackageScope 2015-09-16 01:55:40 +03:00
Alexander Udalov
0d2c6be91a Report incomplete hierarchy error for deserialized types
#KT-5129 Fixed

Delete a JPS test that was specifically testing that we would not fail in this
situation; now there's a compilation error
2015-09-16 01:55:07 +03:00
Alexander Udalov
6cc26dfb8d Minor, improve exception message for reflection on built-ins 2015-09-16 01:54:27 +03:00
Alexander Udalov
c8bddb7fd8 Improve inline diagnostics, report "nothing to inline" on the modifier 2015-09-16 01:54:21 +03:00
Alexander Udalov
ecf1a1b52f Fix exception from data class codegen for light classes
EA-66827
2015-09-16 01:54:10 +03:00
Valentin Kipyatkov
24dbd7734d KT-9128 ReplaceWith incorrectly converts javaClass<X>() to X::class.java for type with arguments
#KT-9128 Fixed
(cherry picked from commit 695feac)
2015-09-15 20:21:14 +03:00
Dmitry Jemerov
691e68c015 verify.groovy: ignore PERF output 2015-09-15 17:20:21 +02:00
Dmitry Jemerov
f03967dbd7 don't initialize Kotlin caches if there is no Kotlin code to compile 2015-09-15 14:07:10 +02:00
Dmitry Jemerov
d1bc711053 ensure that directory for incremental cache storage is created 2015-09-15 10:22:00 +02:00
Dmitry Petrov
8be86d3b04 Generate light classes for single-file facades using PackageCodegen.
(cherry picked from commit 47b8853)
2015-09-15 10:58:06 +03:00
Dmitry Jemerov
9c1a45d11e fix JetSafeDeleteTest
(cherry picked from commit d499103)
2015-09-14 21:50:59 +02:00
Dmitry Petrov
75b59d1b9f Do not generate facade for single-file light classes
(cherry picked from commit ef6da03)
2015-09-14 22:05:19 +03:00
Dmitry Petrov
e03e78f520 Advance ABI version (due to stdlib binary layout changes)
(cherry picked from commit b63eed4)
2015-09-14 22:03:28 +03:00
Dmitry Jemerov
960c50b696 Merge branch 'm13-facades' into M13 2015-09-14 19:42:24 +02:00
Dmitry Jemerov
93f3cdf5fb fix expected output that changed due to perf removal 2015-09-14 19:28:04 +02:00
Valentin Kipyatkov
fe2ff6d0d3 Made methods generated from declarations marked with @HiddenDeclaration synthetic in JVM
(cherry picked from commit 08e7a9d)
2015-09-14 20:11:32 +03:00
Valentin Kipyatkov
b3cec87b4c Fixed assertion in j2k on updating external usages
(cherry picked from commit aec661a)
2015-09-14 20:11:31 +03:00
Yan Zhulanow
2b0af6c34a Fix .java files compilation in android-compiler-plugin 2015-09-14 19:55:52 +03:00
Alexey Sedunov
062fea3180 Change Signature: Fix processing of top-level declarations usages in Java (old/new package facades are supported) 2015-09-14 18:52:31 +02:00
Dmitry Jemerov
a424020332 code review 2015-09-14 18:52:31 +02:00
Dmitry Jemerov
7df0636206 move supports new facades 2015-09-14 18:52:30 +02:00
Dmitry Jemerov
6c3adeedd9 safe delete supports new facades 2015-09-14 18:52:29 +02:00
Dmitry Jemerov
4f0e6fce52 call hierarchy supports new facades 2015-09-14 18:52:29 +02:00
Dmitry Jemerov
1da391b306 update Java references to file class when a file is renamed 2015-09-14 18:52:29 +02:00
Dmitry Jemerov
77d25b20a7 allow returning multiple PsiMethod wrappers for a JetFunction or JetPropertyAccessor; use that for handling Java usages through old-style and new-style facades
#KT-9102 Fixed
2015-09-14 18:52:29 +02:00
Dmitry Jemerov
3dda274ab6 LightClassUtil: J2K 2015-09-14 18:52:28 +02:00
Dmitry Jemerov
244cfa3e5d LightClassUtil: rename to .kt 2015-09-14 18:52:28 +02:00
Pavel V. Talanov
87aa52995c Do not generate parts of multifile facade when building light classes
Building facade class is enough for this purpose
2015-09-14 19:47:36 +03:00
Pavel V. Talanov
ea743f5748 Introduce ClsJavaStubByVirtualFileCache
Avoid caching in user data of virtual file because it leads to project leaking
2015-09-14 19:47:35 +03:00
Dmitry Petrov
1f3d1595e2 Fix navigation to decompiled multifile class members.
(cherry picked from commit f4e9d9a)
2015-09-14 19:00:20 +03:00
Dmitry Petrov
32960aa445 Multifile facade should contain reflection data,
otherwise callable references to stdlib functions will not work in the migration scheme.
(cherry picked from commit 50ff2a3)
2015-09-14 19:00:17 +03:00
Dmitry Petrov
372e1026c8 Fix incremental compilation tests
(cherry picked from commit 5d0243d)
2015-09-14 19:00:11 +03:00
Dmitry Petrov
688a7b58d2 Make stdlib work with -Xmultifile-package-facades.
Fixed wrong owner mapping in presence of -Xmultifile-package-facades.
Fixed backing field mapping issue.
Added more tests.
(cherry picked from commit 1586a2d)
2015-09-14 19:00:07 +03:00
Dmitry Petrov
120dde0645 - call multifile class members (compiling against binaries)
- inline multifile class members
HACK? scope-based part/facade resolution
(cherry picked from commit 838433b)
2015-09-14 19:00:03 +03:00
Dmitry Petrov
a408401149 - call multifile class members (compiling against binaries)
- inline multifile class members
(cherry picked from commit 50f83da)
2015-09-14 18:59:59 +03:00
Dmitry Petrov
22bc3b8e34 - bytecodeTextMultifile - framework for bytecode text tests
with multiple Kotlin source files
- bytecodeTextMultifile/partMembersCall, initial import
(cherry picked from commit 5f9a59d)
2015-09-14 18:59:55 +03:00
Dmitry Petrov
71f84f7982 - InnerClasses & EnclosingMethod attributes for local classes
in multifile part members
- invocation of multifile part/facade members
(TODO: deserialized descriptor case)
- inlining of multifile part/facade members
(TODO: inline against binaries case)
(cherry picked from commit 2931e47)
2015-09-14 18:59:51 +03:00
Dmitry Jemerov
2910bf69da disable perf output by default (M13 only) 2015-09-14 15:16:02 +02:00
Alexander Udalov
5edc043d05 Fix NPE from REPL initialization 2015-09-14 13:24:37 +03:00
Mikhail Glukhikh
585aa59e4c AnnotationTarget.CLASSIFIER and KotlinTarget.CLASSIFIER both dropped (second step) 2015-09-14 11:16:17 +03:00
Stanislav Erokhin
6a3cd50a70 Fix compilation -- migrate to new markdown. 2015-09-13 04:09:06 +03:00
Nikolay Krasko
ae6731698c Fix test data - Strictfp is not applicable 2015-09-12 21:12:32 +03:00
Nikolay Krasko
d57e90f1ec Add import and fix compilation 2015-09-12 18:13:25 +03:00
Nikolay Krasko
b7a96392dd Revert non-lock value according to comment 2015-09-12 15:16:16 +03:00
Nikolay Krasko
e66c92f3e2 Create helper Java RenameProcessor with Kotlin processor 2015-09-12 15:16:15 +03:00
Nikolay Krasko
3d3f64cc7b Use non-blocking lazy values in completion 2015-09-12 15:16:13 +03:00
Nikolay Krasko
eea8fcdae6 Remove syncronious lazy as all usages are from one thread 2015-09-12 15:16:12 +03:00
Nikolay Krasko
3ad6631df3 Remove lazy value as all usages evaluate it right after creation 2015-09-12 15:16:11 +03:00
Nikolay Krasko
6faf3f1eba Fix deadlock in ReflectionAPICallChecker because of conflict in lazy() and storageManager 2015-09-12 15:16:10 +03:00
Nikolay Krasko
6338a9a65a Drop lazy values in PrimitiveType 2015-09-12 15:16:08 +03:00
Nikolay Krasko
e99b0e751f Minor: reformat 2015-09-12 15:16:07 +03:00
Rodrigo Quesada
69038ba6c0 KT-9003 FileNotFoundException when Kapt is unable to find corresponding annotations.txt
#KT-9003 Fixed
2015-09-11 22:41:58 +03:00
Yan Zhulanow
01b2d02196 Remove @get: @set:, reorder remaining annotation targets 2015-09-11 22:32:23 +03:00
Dmitry Jemerov
4e8d664dfb use new facade classes in run configurations
#KT-9092 Fixed
2015-09-11 20:46:59 +02:00
Mikhail Glukhikh
d4d633ea26 Combined identifier info for things like '(x + y).z' is no longer treated as 'z' identifier info + a pair of tests + code fix #KT-9126 Fixed 2015-09-11 21:06:09 +03:00
Alexander Udalov
085fc3bf87 Transform anonymous types even for public symbols
This became necessary when we removed the requirement to specify types for
public members, because otherwise everything fails not being able to locate the
anonymous class from another module

 #KT-9072 Fixed
 EA-72801
2015-09-11 19:51:42 +03:00
Alexander Udalov
6cecc66d10 Improve ABI version from one number to "major.minor.patch" 2015-09-11 19:28:46 +03:00
Dmitry Jemerov
299df05a74 one more missing read action in find usages (EA-72578 - assert: SharedImplUtil.getParent) 2015-09-11 17:02:05 +02:00
Mikhail Glukhikh
3770e7f49f Introduction of AnnotationTarget.CLASS as a replacement for CLASSIFIER (first step) 2015-09-11 17:59:40 +03:00
Ilya Chernikov
8b970cd186 Fixing run filename compatibility with windows, improving diagnostics, some minor tweaks 2015-09-11 15:30:17 +02:00
Dmitry Jemerov
0e067290af Merge pull request #751 from JetBrains/rr/yole/daemon-ui
UI to enable/disable compiler daemon
2015-09-11 15:08:43 +02:00
Dmitry Jemerov
9f1bd123f9 UI to enable/disable compiler daemon 2015-09-11 15:00:18 +02:00
Natalia Ukhorskaya
ee860fdde5 J2K: Insert class body for anonymous classes
#KT-8952 Fixed
2015-09-11 15:21:39 +03:00
Alexander Udalov
1394e646b7 Minor, fix deprecation message 2015-09-11 15:12:04 +03:00
Mikhail Glukhikh
d5f2bf5666 Design notes changed according to changed annotation option design 2015-09-11 14:58:28 +03:00
Denis Zharkov
aac1f68678 Use original element when resolving java descriptors in IDE 2015-09-11 13:33:51 +03:00
Denis Zharkov
9c69a64789 Do not try to resolve java elements outside of project roots
#EA-69067 Fixed
 #EA-64283 Fixed
2015-09-11 13:33:51 +03:00
Dmitry Jemerov
00d834cf73 revert deprecation that breaks tests 2015-09-11 12:26:20 +02:00
Dmitry Jemerov
8ca54f4dbb minor doc corrections 2015-09-11 11:43:55 +02:00
Natalia Ukhorskaya
137f8b242a Wrong stepping for if followied by captured variable
#KT-9118 Fixed
2015-09-11 11:27:53 +03:00
Natalia Ukhorskaya
dfe9bb65b0 Do not try to find source file in Debugger when Indexes are not ready
#EA-72812 - INRE: FileBasedIndexImpl.handleDumbMode
2015-09-11 11:27:52 +03:00
Yan Zhulanow
fbc769b0e9 Clear cache on fragment onDestroy() 2015-09-11 04:30:08 +03:00
Yan Zhulanow
5dc9557650 Fix cli test that uses android compiler plugin 2015-09-11 04:30:07 +03:00
Yan Zhulanow
fce1a0a8d7 Report more specific warning on a wrong fq Android widget type 2015-09-11 04:30:07 +03:00
Yan Zhulanow
f3462513e2 Optimize AndroidPsiTreeChangePreprocessor counter updating 2015-09-11 04:30:06 +03:00
Yan Zhulanow
ddd4c2ae7f Report exceptions from Android Extensions (KT-7355) 2015-09-11 04:30:06 +03:00
Yan Zhulanow
0339bc55df Fix android synthetic properties compiler plugin tests 2015-09-11 04:30:05 +03:00
Yan Zhulanow
0f5d87957d Do not use JavaPsiFacade in android-compiler-plugin 2015-09-11 04:30:05 +03:00
Yan Zhulanow
d0d846ccfc Report if the widget has an invalid type 2015-09-11 04:30:04 +03:00
Yan Zhulanow
a2096ab0be Check supportv4 library presence on the spot 2015-09-11 04:30:04 +03:00
Yan Zhulanow
de59b79deb Remove default imports for synthetic XML files 2015-09-11 04:30:03 +03:00
Yan Zhulanow
e0bd532b7a Resolve Android widget class fq names properly (KT-8790) 2015-09-11 04:30:03 +03:00
Yan Zhulanow
8577f3e91b Bundle runtime with Android Extensions IDEA plugin 2015-09-11 04:30:03 +03:00
Yan Zhulanow
ad10340bd7 Android Extensions refactoring 2015-09-11 04:30:02 +03:00
Alexey Sedunov
2de4de4a1e Extract Function: Do not use flexible type as default: use one of its bounds instead
#KT-9099 Fixed
2015-09-11 02:20:55 +03:00
Alexey Sedunov
8a2e2e93e7 Pull Up: Apply type substitution to parameters propagated to the target class 2015-09-11 02:20:53 +03:00
Alexey Sedunov
49f0101b70 Pull Up: Approximate anonymous object type with its direct supertype 2015-09-11 02:20:52 +03:00
Alexey Sedunov
4d0cbf83d3 Quick Fixes: Avoid premature write action when calling Change Signature in
interactive mode
 #KT-8722 Fixed
2015-09-11 02:20:51 +03:00
Alexey Sedunov
89ae7d2036 Intentions: Fix test data after default visibility was changed to PUBLIC 2015-09-11 02:20:50 +03:00
Alexey Sedunov
9a00ead331 Change Signature: Do not render visibility of local functions
#KT-9095 Fixed
2015-09-11 02:20:48 +03:00
Alexey Sedunov
d5deb03292 Change Function Signature Fix: Do not render default values in overriding functions
#KT-8520 Fixed
2015-09-11 02:20:47 +03:00
Alexey Sedunov
794127a38b Change Signature: Add/remove constructor keyword on primary constructor when changing modifier list 2015-09-11 02:20:46 +03:00
Alexey Sedunov
aa1de706c1 Change Function Signature Fix: Prefer argument's smartcast (if any) over its original type
#KT-8775 Fixed
2015-09-11 02:20:44 +03:00
Alexey Sedunov
670bb1a27d J2K: AddFunctionParametersFix.java 2015-09-11 02:20:42 +03:00
Alexey Sedunov
3c48882c4f J2K: AddFunctionParametersFix.java (rename to .kt) 2015-09-11 02:20:41 +03:00
Alexey Sedunov
b76c47151c Change Signature: Skip PsiMethods without containing class
#KT-8536 Fixed
2015-09-11 02:20:40 +03:00
Alexey Sedunov
33c93eb4a9 Move Declarations: Add intention which moves top-level declaration to the separate file in the same directory and package
#KT-4936 Fixed
2015-09-11 02:20:38 +03:00
Alexey Sedunov
b4410c625f Change Signature: Recreate call expression when converting receiver to parameter
#KT-8878 Fixed
2015-09-11 02:20:37 +03:00
Alexey Sedunov
9e11a20006 Create from Usage: Drop "Create package" quick-fix
#KT-7138 Fixed
2015-09-11 02:20:35 +03:00
Natalia Ukhorskaya
cc1a756cab Fix debugger tests testData 2015-09-11 01:51:58 +03:00
Natalia Ukhorskaya
0d43ac3ec2 Fix compilation errors 2015-09-11 01:51:58 +03:00
Stanislav Erokhin
32dbae3774 Update to IDEA 142.4675.3 2015-09-11 01:51:57 +03:00
Ilya Chernikov
990c2dc5d7 Extending daemon diagnostics reporting in tests 2015-09-10 22:31:00 +02:00
Ilya Chernikov
cbaa981aab migrate to the new annotations syntax 2015-09-10 22:31:00 +02:00
Ilya Chernikov
473ff00940 adding java startup parameters for headless appearance of the daemon on mac, prepared a function for resetting alive flag in kotlin plugin startup component as a temporary solution to stop daemon from idea, fixing code that disable incremental compilation, that was broken on the last modification of KotlinBuildProcessParametersProvider 2015-09-10 22:30:59 +02:00
Ilya Chernikov
dc3c1beeb9 Fixes after review, adding basic options parsing tests 2015-09-10 22:30:58 +02:00
Ilya Chernikov
b1bdbaf06a Adding jps building test with daemon, removing obsolete daemon shutdown code 2015-09-10 22:30:58 +02:00
Ilya Chernikov
96558c52ff Refactorings, reformatting code, applying code style and other cleanup 2015-09-10 22:30:57 +02:00
Ilya Chernikov
d448602cb2 Making daemon to listen only loopback interface and to work without active ip interface 2015-09-10 22:30:57 +02:00
Ilya Chernikov
c4719175f9 Refactoring startup and shutdown, refactoring service implementation, implementing error and info reporting to compiler output, idle autoshutdown mechanisms, fixing TargetId serializability, some other refactoring
Fixing stream to log handler (by removing non-working optimization), fixing idle time calculation, reporting refactorings
2015-09-10 22:30:56 +02:00
Ilya Chernikov
406bfba473 Implementation of multiple daemon instances management 2015-09-10 22:30:55 +02:00
Ilya Chernikov
f6c6087fe3 Adding escaping to kotlin.daemon.jvm.options property processing to allow passing e.g. debugging agent params; adding kotlin.daemon.startup.timeout property to control startup timeout; more logging; some minor cleanup and fixes 2015-09-10 22:30:55 +02:00
Alexander Udalov
4dbfce605e Minor, improve exception message for non-deserialized types 2015-09-10 21:45:10 +03:00
Alexander Udalov
3e5c8d1b79 Fix NPE on empty JVM name
#KT-9113 Fixed
2015-09-10 21:44:18 +03:00
Alexander Udalov
fb31980c0b Fix EA-68149 which happened on editing Scala sources 2015-09-10 21:44:16 +03:00
Ilya Gorbunov
017db3d36c Correct reference to withDefault method in documentation. 2015-09-10 21:32:41 +03:00
Denis Zharkov
df97496a16 Deprecate 'kotlin.throws' in favor of 'kotlin.jvm.Throws' 2015-09-10 20:39:05 +03:00
Zalim Bashorov
7036b36a94 Minor: replace some usages of (old) package facade with new package parts 2015-09-10 18:49:11 +03:00
Dmitry Petrov
6850e9180e Effectively this is a return of "${facadeName}__${partName}" scheme.
Suggestions from @udalov:
- Make multifile class parts synthetic.
- Multifile class parts should have well-formed Java identifiers as names.
- Multifile class part names should contain facade name.
Add test with clashing part names.
Add test with local generic classes used in method signatures
(it works with parts names not being well-formed Java identifiers, though).

Capitalized annotations.
2015-09-10 18:03:34 +03:00
Mikhail Glukhikh
9b11b5300c Elvis DFA: now only left part is taken into account #KT-9100 Fixed
I had to fix a few incorrect tests using something like x!! in Elvis right part, and also one bug in our code
2015-09-10 17:50:57 +03:00
Michael Nedzelsky
9fd968d59e extend test for code cleanup with changing visibility from private to internal for declarations, which are used outside of their file. 2015-09-10 16:50:47 +03:00
Alexander Udalov
93dfaf72f7 Avoid dependency on HiddenDeclaration from compiler classpath 2015-09-10 15:43:24 +03:00
Alexander Udalov
a1a2adf523 Fix inheritance from protected members of interfaces
#KT-3029 Fixed
2015-09-10 15:42:58 +03:00
Natalia Ukhorskaya
bb17724f96 Gradle: workaround the problem that getVariantDataManager is internal 2015-09-10 15:23:46 +03:00
Natalia Ukhorskaya
b1dbc89a2a Gradle: add bintray to repository list 2015-09-10 15:23:45 +03:00
Michael Nedzelsky
1dfd877af2 add quick fix for ACCESS_TO_TOP_LEVEL_FROM_ANOTHER_FILE to code cleanup 2015-09-10 15:20:07 +03:00
Michael Bogdanov
908228a3cf Test for obsolete KT-8133
#KT-8133 Obsolete
2015-09-10 12:43:27 +03:00
Michael Bogdanov
a5f7df3ebf Fix for KT-9064
#KT-9064 Fixed
2015-09-10 11:08:02 +03:00
Denis Zharkov
e03e9bb1a3 Fix testBuiltins testData 2015-09-10 10:16:15 +03:00
Denis Zharkov
372e35436a Implement annotation related migrational quick fixes 2015-09-10 10:04:59 +03:00
Denis Zharkov
7b3303c152 Report special diagnostic on inlineUsage with LOCAL_CONTINUE_AND_BREAK
Such usages should be removed by quckfixes
2015-09-10 10:04:59 +03:00
Denis Zharkov
04483eb826 Report custom diagnostic instead of symbol deprecation
For annotations that should be replaced with modifiers
2015-09-10 10:04:59 +03:00
Alexander Udalov
c3cb6b62f4 Introduce SmartSet, an optimized Set implementation
Using it instead of LinkedHashSet for overridden descriptors optimizes memory
retained between analysis and codegen by ~5%
2015-09-10 01:18:22 +03:00
Stanislav Erokhin
57c006a1c6 Created Update-Dist-Run configuration 2015-09-09 22:02:10 +03:00
Pavel V. Talanov
40773ad04a KotlinClsStubBuilder: fix reading header for multifile facades 2015-09-09 22:00:26 +03:00
Pavel V. Talanov
6239620f98 Increase stub version 2015-09-09 21:22:41 +03:00
Pavel V. Talanov
eaeabb28b8 Use new index in JetShortNamesCache 2015-09-09 21:22:32 +03:00
Pavel V. Talanov
0257ea6fd8 Index file facades by short names 2015-09-09 21:22:24 +03:00
Pavel V. Talanov
3d0b737916 Minor: rename index 2015-09-09 21:22:16 +03:00
Pavel V. Talanov
f673852d98 Test completion of multifile facades in java 2015-09-09 21:22:07 +03:00
Pavel V. Talanov
01ca092f8b Cli light classes for file facades 2015-09-09 21:21:59 +03:00
Pavel V. Talanov
e9c1df0cb9 J2K CliLightClassGenerationSupport: prettify 2015-09-09 21:21:51 +03:00
Pavel V. Talanov
0c884f10ee J2K CliLightClassGenerationSupport: autoconvert 2015-09-09 21:21:42 +03:00
Pavel V. Talanov
8ded5e97ef J2K CliLightClassGenerationSupport: rename file 2015-09-09 21:21:34 +03:00
Pavel V. Talanov
d077b63fae Initial version of completing unimported file facades 2015-09-09 21:21:25 +03:00
Pavel V. Talanov
4106a0d736 Test for completing unimported file facade 2015-09-09 21:21:17 +03:00
Pavel V. Talanov
ead4f77f21 Make JetShortNamesCache human readible 2015-09-09 21:21:09 +03:00
Pavel V. Talanov
ee393955c4 Use correct codegen for creating light classes for file facade 2015-09-09 21:21:00 +03:00
Pavel V. Talanov
cda35f609a Build light classes for file facades 2015-09-09 21:20:52 +03:00
Pavel V. Talanov
a9b4587b82 Index facade files by package fq names 2015-09-09 21:20:44 +03:00
Pavel V. Talanov
daaefcc7fd Test completion of single file facades in java 2015-09-09 21:20:35 +03:00
Pavel V. Talanov
8cb7ea29fe Test for exception filter with renamed facade 2015-09-09 21:20:26 +03:00
Pavel V. Talanov
26d0d8dbf1 Move jvm specific indexing of files to 'idea-analysis' module
Index facadeFqNames for kotlin source files
2015-09-09 21:20:18 +03:00
Pavel V. Talanov
25f31582c9 Make StubIndexService responsible for serializing and deserializing file stubs 2015-09-09 21:20:09 +03:00
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
Michael Bogdanov
25cd9de71a Support default module name in ant task 2015-09-08 11:34:40 +03:00
Michael Bogdanov
912111d237 Fix for KT-8948: CompilationException: Back-end (JVM) Internal error: Couldn't inline method call 'foo' into
#KT-8948 Fixed
2015-09-08 11:34:40 +03:00
Mikhail Glukhikh
24252b64d0 Test and fix for NPE in CFA #KT-9078 Fixed #EA-71535 Fixed 2015-09-08 11:31:15 +03:00
Dmitry Jemerov
f708871254 use correct scope for ReferencesSearch used for 'find usages' (KT-8904) 2015-09-08 10:10:49 +02:00
Natalia Ukhorskaya
dc7d30c6dc Implement hasBlockBodyCorrectly for constructors
#EA-72355 - TCE: EvaluatePackage$extractFunctionForDebuggerUtil$e.addDebugExpressionBeforeContextElement
2015-09-08 11:00:53 +03:00
Natalia Ukhorskaya
b86e251990 JDIEval: do not throw an exception in case of throw Exception() 2015-09-08 11:00:52 +03:00
Natalia Ukhorskaya
9d7695c337 JDIEval: set vmexec instead of home argument when launching tests 2015-09-08 11:00:51 +03:00
Natalia Ukhorskaya
cee3cf53d9 JDIEval: coerce byte to int correctly 2015-09-08 11:00:51 +03:00
Natalia Ukhorskaya
519c2784ff Debugger: allow evaluate expression in constructors 2015-09-08 11:00:50 +03:00
Natalia Ukhorskaya
e423e99253 Debugger for inline functions: make sure that context is suspended 2015-09-08 11:00:49 +03:00
Natalia Ukhorskaya
ff8b7b4276 Fix NPE in DebuggerUtils
#EA-69703 - assert: DebuggerUtils.analyzeElementWithInline
2015-09-08 11:00:48 +03:00
Natalia Ukhorskaya
3aa7528c8f Show declared type for delegated properties correctly in debugger
#EA-72136 - assert: ValueDescriptorImpl.getValue
2015-09-08 11:00:47 +03:00
Natalia Ukhorskaya
c73e613dc3 Debugger: Fix exception while computing inline lambda context when debug info is unavailable
#EA-72494 - AIE: StackFrameProxyImpl.visibleVariables
2015-09-08 11:00:46 +03:00
Natalia Ukhorskaya
1d5110f424 Debugger: Fix NPE in inline lambda context evaluator
-EA-72501 - KNPE: KotlinCodeFragmentFactory$createCodeFragment$.invoke
2015-09-08 11:00:45 +03:00
Ilya Gorbunov
a63341b901 Some tests for assertion messages. 2015-09-08 10:28:15 +03:00
Ilya Gorbunov
f7c2f034b3 Remove usages of deprecated failsWith 2015-09-08 10:28:03 +03:00
Ilya Gorbunov
c14f376d21 Deprecate precondition checks with non-lazy message.
Make precondition checks with lazy message inline.
Use require with lazy message in stdlib.
#KT-8253 Fixed
2015-09-08 10:27:46 +03:00
Ilya Gorbunov
a59962c620 Change test data to reproduce the same error as was before adding an overload of assert. 2015-09-08 10:27:33 +03:00
Ilya Gorbunov
e9901e7351 Deprecate assert with non-lazy message.
#KT-8253
2015-09-08 10:27:20 +03:00
Ilya Gorbunov
470fcc977c Drop test DSL experiments. 2015-09-08 10:27:08 +03:00
Ilya Gorbunov
4f9e2c24d1 Exclude common file asserts.kt from tests using StdLib, as its methods conflict with kotlin.test.* methods. 2015-09-08 10:26:54 +03:00
Ilya Gorbunov
e61d202d71 Dropped test that tested nothing: there were no files to compile, except common asserts.kt 2015-09-08 10:26:39 +03:00
Ilya Gorbunov
ea896bd217 JsTestsAsserter implement Asserter. 2015-09-08 10:26:24 +03:00
Ilya Gorbunov
44f7b6d699 Unit testing API: better mapping on JUnit, proper formatting assertion details when message is not specified
#KT-8929 Fixed
Sensible default message for assertion methods.
#KT-8314 Fixed
Provide assertFailsWith also with KClass and reified type argument.
2015-09-08 10:26:07 +03:00
Ilya Gorbunov
e20c86c5dc Add missing equals() to primitive-keyed JS map specialization. 2015-09-08 10:24:25 +03:00
Ilya Gorbunov
c82c914c5d Before comparing types of data class objects in dataClass.equals ensure that the other comparand is an object too, otherwise it may fail on Rhino. 2015-09-08 10:24:13 +03:00
Ilya Gorbunov
f6c9d63c46 Simplify asserter implementations.
Do not use inline functions in unit tests API.
2015-09-08 10:23:59 +03:00
Ilya Gorbunov
267aad3926 Simplify asserter acquisition. 2015-09-08 10:23:46 +03:00
Denis Zharkov
708ceb4aff Use FQ name for java.lang.Deprecated and cleanup 2015-09-08 08:53:35 +03:00
Denis Zharkov
d7baef3f8d Revert bf38f56261 2015-09-08 08:53:35 +03:00
Denis Zharkov
fc447e2d2f Parse some builtin annotations as modifiers
But still resolve them as annotations.
Mostly it's needed as begin of migration path, one day they become modifiers anyway

Some tests are dropped because they supposed that `annotation` should have parameter
2015-09-08 08:53:35 +03:00
Denis Zharkov
c9a8609a67 Drop InlineStrategy and corresponding inline parameter 2015-09-08 08:53:35 +03:00
Michael Nedzelsky
9f5bbf94d3 introduce quickfix for change visiblity from private to internal for private top-level declarations 2015-09-08 07:30:27 +03:00
Alexey Tsvetkov
93776b711e Add file without usage to classInlineFunctionChanged test case 2015-09-08 05:49:35 +03:00
Alexey Tsvetkov
12181d274b Remove InlineRegistering interface 2015-09-08 05:49:35 +03:00
Alexey Tsvetkov
a22e15449d Fix incremental compilation for delegated property with inline accessor 2015-09-08 05:49:35 +03:00
Alexey Tsvetkov
196e59247f Update build logs in incremental tests 2015-09-08 05:49:35 +03:00
Alexey Tsvetkov
b07ae87e25 Update after rebase to new package parts 2015-09-08 05:49:35 +03:00
Alexey Tsvetkov
7e515e3820 Use simple data class TargetId instead of Module to get incremental cache 2015-09-08 05:49:34 +03:00
Alexey Tsvetkov
45dae5e1a4 Change one package part, then another at different steps 2015-09-08 05:49:34 +03:00
Alexey Tsvetkov
d9e9f11028 Remove duplicating simple test case 2015-09-08 05:49:34 +03:00
Alexey Tsvetkov
5d305a7286 Add test for inline function lines changed only 2015-09-08 05:49:34 +03:00
Alexey Tsvetkov
8d1480e877 Add incremental compilation inline call site tests 2015-09-08 05:49:34 +03:00
Alexey Tsvetkov
61423a19f0 Fix incremental compilation of inline call assigned to val 2015-09-08 05:49:34 +03:00
Alexey Tsvetkov
a660562743 Pass keyDescriptor to BasicMap using constructor 2015-09-08 05:49:34 +03:00
Alexey Tsvetkov
af144883dc Minor: make BasicStringMap properties parameters 2015-09-08 05:49:34 +03:00
Alexey Tsvetkov
06774423e0 Minor: remove unnecessary 'open' modifiers 2015-09-08 05:49:33 +03:00
Alexey Tsvetkov
ed5dcf2182 Simplify getting class file path for functions from current module 2015-09-08 05:49:33 +03:00
Alexey Tsvetkov
08a11b627c Update INCREMENTAL_CACHE_OWN_VERSION 2015-09-08 05:49:33 +03:00
Alexey Tsvetkov
3d9d6d356b Simplify InlineFunctionsFilesMap 2015-09-08 05:49:33 +03:00
Alexey Tsvetkov
21b6b41112 Rename hasInlineTo->inlinedTo 2015-09-08 05:49:33 +03:00
Alexey Tsvetkov
06bfc5a16b Update inline incremental compilation for compile daemon 2015-09-08 05:49:33 +03:00
Alexey Tsvetkov
f25c10c4a1 Recompile everything if new function is added 2015-09-08 05:49:33 +03:00
Alexey Tsvetkov
43bcc4a6a6 Get rid of RecompilationDecision enum 2015-09-08 05:49:33 +03:00
Alexey Tsvetkov
8cc2e0f68d Always use class file as inline fun source 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
f9fe01047d Fix incremental packages 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
b25dfabbcc Fix modules tests 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
0988b21e9c Use both target name and target type to get incremental cache from backend 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
18dc752c21 Implement hashCode and equals for Module 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
5f05f0d678 Move Module to util method 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
e90ecc48c5 Save target type in Kotlin Builder 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
b36c841b6e Use package facade name to search in dependent modules 2015-09-08 05:49:32 +03:00
Alexey Tsvetkov
44e13dd697 Add another package part with inline to multi-module inline test 2015-09-08 05:49:31 +03:00
Alexey Tsvetkov
12ebe4426c Add file without inline call to multi module test 2015-09-08 05:49:31 +03:00
Alexey Tsvetkov
46d3afaeba Use package facade internal name when processing changed inline functions 2015-09-08 05:49:31 +03:00
Alexey Tsvetkov
9a29750d0e Remove unused parameter 2015-09-08 05:49:31 +03:00
Alexey Tsvetkov
10a330f67a Recompile files depending on changed inline function between modules 2015-09-08 05:49:31 +03:00
Alexey Tsvetkov
2afaa82b57 Pass incrementalCaches as a doBuild parameter 2015-09-08 05:49:31 +03:00
Alexey Tsvetkov
a3145bc798 Flush incremental caches after each test run 2015-09-08 05:49:31 +03:00
Alexey Tsvetkov
039026ccdd Save class files as inline call source too 2015-09-08 05:49:31 +03:00
Alexey Tsvetkov
bde78c2df2 Extract BasicMap from IncrementalCacheImpl 2015-09-08 05:49:30 +03:00
Alexey Tsvetkov
47019dd51f Pass BasicMap storageFile using constructor
It makes possible to extract BasicMap outside of IncrementalCacheImpl
and use it for some maps, that share between build targets
2015-09-08 05:49:30 +03:00
Alexey Tsvetkov
80094605eb Move persistent map parameters to constructor 2015-09-08 05:49:30 +03:00
Alexey Tsvetkov
cf35be90aa Fix value dump for incremental caches 2015-09-08 05:49:30 +03:00
Alexey Tsvetkov
e0419f956e Recompile only files that call changed inline functions 2015-09-08 05:49:30 +03:00
Alexey Tsvetkov
dfa5a420e6 Generalize InlineFunctionsMapExternalizer 2015-09-08 05:49:30 +03:00
Alexey Tsvetkov
f0d7ee4cdf Save changed functions to incremental cache 2015-09-08 05:49:30 +03:00
Alexey Tsvetkov
f2295676bf Minor: removed clear method from DirtyOutputClassesMap
It's already has clean method from BasicMap
2015-09-08 05:49:30 +03:00
Alexey Tsvetkov
701585c0b6 Minor: rename SourceToClassesMap#addSourceToClass->add
addSourceToClass is confusing, because in fact
this function is appending to SourceToClassesMap
2015-09-08 05:49:29 +03:00
Alexey Tsvetkov
2842b74dd8 Add ClassToSourceMap to incremental caches 2015-09-08 05:49:29 +03:00
Alexey Tsvetkov
52a8fe018b Recompile files dependent on inline relationship
Right now, it's always recompiles dependent files,
even if inline function has not been changed.
2015-09-08 05:49:29 +03:00
Alexey Tsvetkov
64cc75c1ba Save info about inlined calls to incremental caches 2015-09-08 05:49:29 +03:00
Alexey Tsvetkov
32c041d4db Add simple inline incremental compilation test cases 2015-09-08 05:49:29 +03:00
Michael Nedzelsky
44691018ce add explicit types for some top-level public val/var declarations in MapDelegationTest due KT-9072 2015-09-08 02:06:34 +03:00
Michael Nedzelsky
873110c6ea add explicit type for PackagePartProvider.EMPTY in order to avoid compilation error due KT-9072 2015-09-08 02:06:26 +03:00
Michael Nedzelsky
e6e6b20885 fix tests in org.jetbrains.kotlin.js.test.semantics for secondary constructors: TODO: fix problem and remove this commit 2015-09-08 02:06:23 +03:00
Michael Nedzelsky
f6892580f6 fix tests in org.jetbrains.kotlin.js.test.semantics 2015-09-08 02:06:19 +03:00
Michael Nedzelsky
aa44606663 fix tests in org.jetbrains.kotlin.checkers (related to KT-9072) 2015-09-08 02:06:16 +03:00
Michael Nedzelsky
7c1758a8d3 fix tests in org.jetbrains.kotlin.idea.debugger.evaluate 2015-09-08 02:06:13 +03:00
Michael Nedzelsky
165e6a9100 fix tests in org.jetbrains.kotlin.serialization.builtins 2015-09-08 02:06:09 +03:00
Michael Nedzelsky
4b9ee88b9a fix tests for java 8 2015-09-08 02:06:05 +03:00
Michael Nedzelsky
aaff442f65 fix tests in org.jetbrains.kotlin.idea.structureView 2015-09-08 02:06:02 +03:00
Michael Nedzelsky
b9906f842d fix tests in org.jetbrains.kotlin.renderer 2015-09-08 02:05:58 +03:00
Michael Nedzelsky
aa8c90893e fix tests in org.jetbrains.kotlin.idea.stubs 2015-09-08 02:05:54 +03:00
Michael Nedzelsky
ce77ac4991 fix tests in org.jetbrains.kotlin.idea.refactoring.changeSignature 2015-09-08 02:05:49 +03:00
Michael Nedzelsky
daa1ac1918 fix tests in org.jetbrains.kotlin.idea.refactoring.introduce 2015-09-08 02:05:46 +03:00
Michael Nedzelsky
92ca057b4a fix tests in org.jetbrains.kotlin.idea.quickfix 2015-09-08 02:05:41 +03:00
Michael Nedzelsky
32c66914fe fix tests in org.jetbrains.kotlin.idea.highlighter 2015-09-08 02:05:38 +03:00
Michael Nedzelsky
fa97b8f91e fix tests in org.jetbrains.kotlin.idea.editor.quickDoc 2015-09-08 02:05:34 +03:00
Michael Nedzelsky
c861b036a0 fix tests in org.jetbrains.kotlin.idea.decompiler.textBuilder 2015-09-08 02:05:30 +03:00
Michael Nedzelsky
a119a6bbeb fix tests in org.jetbrains.kotlin.idea.decompiler.stubBuilder 2015-09-08 02:05:25 +03:00
Michael Nedzelsky
1a48ccff4c fix tests in org.jetbrains.kotlin.idea.decompiler.navigation 2015-09-08 02:05:21 +03:00
Michael Nedzelsky
68c6c7790a fix tests in org.jetbrains.kotlin.idea.codeInsight 2015-09-08 02:05:15 +03:00
Michael Nedzelsky
a40c80e90b fix tests in org.jetbrains.kotlin.codegen.generated 2015-09-08 02:05:09 +03:00
Michael Nedzelsky
de9b5695ae fix tests in org.jetbrains.kotlin.cli 2015-09-08 02:05:05 +03:00
Michael Nedzelsky
2684b7abb0 fix tests in org.jetbrains.kotlin.idea.resolve 2015-09-08 02:04:59 +03:00
Michael Nedzelsky
f717806138 fix tests in org.jetbrains.kotlin.repl 2015-09-08 02:04:54 +03:00
Michael Nedzelsky
d81490d2f2 fix tests in org.jetbrains.kotlin.serialization 2015-09-08 02:04:50 +03:00
Michael Nedzelsky
84b5a57c15 fix tests in org.jetbrains.kotlin.serialization.builtins 2015-09-08 02:04:44 +03:00
Michael Nedzelsky
ece8bb07b2 fix tests in org.jetbrains.kotlin.jvm.compiler 2015-09-08 02:04:38 +03:00
Michael Nedzelsky
bc5c9065d2 fix tests in org.jetbrains.kotlin.checkers 2015-09-08 02:04:32 +03:00
Michael Nedzelsky
a3f22939f1 add explicit type for LookupTracker.DO_NOTHING in order to avoid compilation error due KT-9072 2015-09-08 02:04:20 +03:00
Michael Nedzelsky
7b41106724 explicit internal modifier for JetWholeProjectForEachElementOfTypeFix in order to get rid ot the following error:
Cannot access effectively non-public-api private constructor JetWholeProjectForEachElementOfTypeFix,
defined in org.jetbrains.kotlin.idea.quickfix.JetWholeProjectForEachElementOfTypeFix member from effectively public-api public final fun createForMultiTaskOnElement
2015-09-08 02:04:16 +03:00
Michael Nedzelsky
5e35161d99 explicit internal modifier for some members of core/reflection.jvm in order to avoid generating documentaion 2015-09-08 02:04:09 +03:00
Michael Nedzelsky
d9bbc88112 default visibility: internal -> public 2015-09-08 02:04:04 +03:00
Michael Nedzelsky
b8aa5d43bd add constans Visibilities.DEFAULT_VISIBILITY and JetTokens.DEFAULT_VISIBILITY_KEYWORD 2015-09-08 02:03:58 +03:00
Nikolay Krasko
e7c9699bfa Fix build 2015-09-07 19:57:36 +03:00
Valentin Kipyatkov
97cf562dea Made convert to string template inspection less eager 2015-09-07 19:48:05 +03:00
Ilya Gorbunov
67d1cc80f6 Exclude kotlin-jdbc and kotlin-swing from maven deployment. 2015-09-07 19:36:29 +03:00
Ilya Gorbunov
dcf490d533 Update deprecation replacement. 2015-09-07 19:36:27 +03:00
Ilya Gorbunov
b5af83cb36 Drop deprecated StringTemplate from StdLib and move it to kotlin-jdbc, which is using it. 2015-09-07 19:36:25 +03:00
Valentin Kipyatkov
ef4a3047b9 Changes on code review 2015-09-07 19:34:32 +03:00
Valentin Kipyatkov
6781abb3da AddNameToArgumentFix to use up-to-date names + checking preconditions in isAvailable
#EA-72651 Fixed
2015-09-07 19:34:32 +03:00
Valentin Kipyatkov
527faec457 Moved test data 2015-09-07 19:34:32 +03:00
Valentin Kipyatkov
86830563b0 More refactoring 2015-09-07 19:34:32 +03:00
Valentin Kipyatkov
720dad5207 Minor code simplifications 2015-09-07 19:34:32 +03:00
Valentin Kipyatkov
955a0c2281 Converted to Kotlin + no i18n 2015-09-07 19:34:31 +03:00
Valentin Kipyatkov
55558e2969 Use ConstraintSystem.getPartialSubstitutor to get more correct substitution 2015-09-07 19:27:07 +03:00
Nikolay Krasko
fe8447903e Drop useless tasks for getting mirrored snapshot artifacts (see ADM-9281) 2015-09-07 18:45:46 +03:00
Nikolay Krasko
8c5582a849 Show "No SDK configured" annotation for Kotlin files (KT-8634)
#KT-8634 Fixed
2015-09-07 18:45:44 +03:00
Nikolay Krasko
df28d34f0f Ctrl-W works badly for selecting body of multi-line lambda starting with comment (KT-9014)
#KT-9014 Fixed
2015-09-07 18:45:43 +03:00
Nikolay Krasko
3d5c499773 Wrap test failure to FileComparisonFailure 2015-09-07 18:45:42 +03:00
Valentin Kipyatkov
988b42bba8 J2K to not generate obsolete syntax for accessing java class 2015-09-07 17:44:14 +03:00
Svetlana Isakova
d58a8437d7 Constraint system now may return partial substitutor 2015-09-07 17:05:40 +03:00
Svetlana Isakova
fe34d1673e Exception 'Base expression was not processed: function literal' fixed 2015-09-07 17:05:40 +03:00
Svetlana Isakova
0999d8ea8e Moved 'initial' (renamed from 'topLevel') flag to ConstraintContext 2015-09-07 17:05:39 +03:00
Svetlana Isakova
4f28a0a9a1 KT-8879 Stackoverflow exception on completion from inference
#KT-8879 Fixed
Added ConstraintContext storing 'derivedFrom' variables.
This information is used to prevent infinite recursion:
if a variable was substituted in a type of a bound, it shouldn't be substituted there for the second time.
2015-09-07 17:05:39 +03:00
Ilya Gorbunov
3c5de56e83 Improve diagnostics when test cleanup fails. 2015-09-07 16:45:06 +03:00
Michael Bogdanov
5805c42305 Write abi version to mapping file 2015-09-07 16:29:16 +03:00
Michael Bogdanov
d1964f5ff2 Abi version increased 2015-09-07 16:29:16 +03:00
Michael Bogdanov
225cbb417c Gradle support 2015-09-07 16:29:15 +03:00
Michael Bogdanov
0de83b6f4c Default module name extraction 2015-09-07 16:29:15 +03:00
Michael Bogdanov
b58479a169 TEST_MODULE_NAME extraction 2015-09-07 16:29:15 +03:00
Michael Bogdanov
49ee4169f3 Package part proto generation fix 2015-09-07 16:29:14 +03:00
Michael Bogdanov
4958116566 RuntimePackagePartProvider.registerModule refactoring 2015-09-07 16:29:14 +03:00
Michael Bogdanov
466b535ba9 Get rid of DeserializedNewPackageMemberScope.kt 2015-09-07 16:29:13 +03:00
Michael Bogdanov
cbe42aa0a2 Extracted 'kotlin_module' constant 2015-09-07 16:29:13 +03:00
Michael Bogdanov
bbf63aa38c lazy -> storageManager.createLazyValue 2015-09-07 16:29:12 +03:00
Michael Bogdanov
974095313c Catch NoSuchFieldException 2015-09-07 16:29:11 +03:00
Michael Bogdanov
606b39698c Kotlin module name extraction 2015-09-07 16:29:11 +03:00
Michael Bogdanov
2ca9b3ae0e Code clean 2015-09-07 16:29:10 +03:00
Michael Bogdanov
20bb9963b3 smoke test fix 2015-09-07 16:29:10 +03:00
Zalim Bashorov
2f9f5a3cd5 Minor: fix testdata files
(build.log files for incremental compilation tests)
2015-09-07 16:29:09 +03:00
Zalim Bashorov
5193e6a181 Minor fixes in KotlinJpsBuildTest 2015-09-07 16:29:09 +03:00
Zalim Bashorov
b8db33722c Generate kotlin_module incrementally and report source files 2015-09-07 16:29:08 +03:00
Zalim Bashorov
879b1a8abb Try to detect target for output items using outputDir when sourceFiles is empty 2015-09-07 16:29:08 +03:00
Zalim Bashorov
01f3710211 Save dependencies of kotlin_module in cache 2015-09-07 16:29:07 +03:00
Zalim Bashorov
f48346f272 Introduce IncrementalPackagePartProvider to load unchanged compiled package parts using module mapping info from incremental cache 2015-09-07 16:29:07 +03:00
Zalim Bashorov
ec62cccb1a Fix incremental compilation for new package parts 2015-09-07 16:29:06 +03:00
Zalim Bashorov
8e411e7274 Minor: add incrementalCompilationComponents to GenerationState 2015-09-07 16:29:06 +03:00
Michael Bogdanov
13ca5faa80 Code clean 2015-09-07 16:29:06 +03:00
Michael Bogdanov
25234f672a Maven plugin fixes 2015-09-07 16:29:05 +03:00
Michael Bogdanov
c31f2eecc1 updated build.xml 2015-09-07 16:29:05 +03:00
Michael Bogdanov
42e4d39083 Support module name in ant task 2015-09-07 16:29:04 +03:00
Michael Bogdanov
2b6ebedc3e onReceiver test fix 2015-09-07 16:29:04 +03:00
Michael Bogdanov
b3fc667c1e WrongAbi test data fix 2015-09-07 16:29:03 +03:00
Michael Bogdanov
f1c091e897 Serialize mappings via proto 2015-09-07 16:29:03 +03:00
Michael Bogdanov
672d25e7e0 PackagePartProvider refactoring 2015-09-07 16:29:02 +03:00
Dmitry Petrov
5ca8f7409a Fix debugger tests.
- Index binaries by facade class fqName
- Fix DebuggerUtils: should understand new facades
- Refactor IDELightClassGenerationSupport
- Add facadeSimpleName to KotlinFileStub
2015-09-07 16:29:02 +03:00
Dmitry Petrov
f9901f6075 Fix decompiler tests.
For now, JVM and JS backends produce different metadata for package facades (and package parts),
and thus different output is expected for JVM and JS decompiler.
Split decompiler tests into common (decompiledText), JVM-specific (decompiledTextJvm),
and JS-specific (decompiledTextJs)
Join them back together if JS backend migrates to JVM-like package model.
2015-09-07 16:29:01 +03:00
Michael Bogdanov
282727b9b2 Fix tests: DecompiledTextForWrongAbiVersionTest
- no package facades, public file facades
2015-09-07 16:29:01 +03:00
Dmitry Petrov
aebdaaab46 Fix tests: TextConstistencyBaseTest & DecompiledTextConsistencyTest
- no package facades, public file facades
2015-09-07 16:29:00 +03:00
Michael Bogdanov
0e5a5a2e25 ldifferentTypes test fix 2015-09-07 16:29:00 +03:00
Michael Bogdanov
378740f4be Jps test fix 2015-09-07 16:28:59 +03:00
Michael Bogdanov
47635c19a2 Generate calls through new minifacades 2015-09-07 16:28:59 +03:00
Dmitry Petrov
0289b8e290 Fix tests: ClsStubBuilderTestGenerated should honor new file part generation scheme. 2015-09-07 16:28:58 +03:00
Dmitry Petrov
8e6054f6c7 Fix tests:
- package parts are no longer built;
- test decompiled content for default file facades.
2015-09-07 16:28:58 +03:00
Michael Bogdanov
84649e4b26 Wrong abi test fix 2015-09-07 16:28:57 +03:00
Michael Bogdanov
939f28f293 Jps support 2015-09-07 16:28:57 +03:00
Michael Bogdanov
9e53a0d057 Debugger fix 2015-09-07 16:28:56 +03:00
Michael Bogdanov
9f0662468f Lazy module name propagation 2015-09-07 16:28:56 +03:00
Michael Bogdanov
c274ceffe8 PackageFacadeProvider refactoring 2015-09-07 16:28:55 +03:00
Michael Bogdanov
843241848f Test fix 2015-09-07 16:28:55 +03:00
Dmitry Petrov
42d14f6837 Navigate to corresponding implementation class (which is file part).
TODO: proper SourceElements for file parts / file facades / static facades.
2015-09-07 16:28:54 +03:00
Dmitry Petrov
0fa6e0730a jvmName should be applicable to FILE.
Get jvmName from Annotations
(JetFile is not Annotated, since it is a part of AST hierarchy, and there is no corresponding descriptor;
however, there is a standard way to obtain Annotations for JetFile, which is exactly what we need, and what Annotated provides).
2015-09-07 16:28:54 +03:00
Dmitry Petrov
b1b845d44d Proper light classes generation in presence of the new file facades. 2015-09-07 16:28:53 +03:00
Dmitry Petrov
5fdfe8df3c PackagePartClassUtils converted to Kotlin and refactored 2015-09-07 16:28:53 +03:00
Dmitry Petrov
e050ff3271 Generate ex-package parts as file facades.
Support new facade kind in stub building and incremental compilation.
2015-09-07 16:28:52 +03:00
Michael Bogdanov
43af127ce8 new fixes 2015-09-07 16:28:52 +03:00
Michael Bogdanov
e83ec1017b Reflection support 2015-09-07 16:28:51 +03:00
Michael Bogdanov
357a6d9902 repl fix 2015-09-07 16:28:51 +03:00
Michael Bogdanov
e18c1bb360 propagate proper packageMappingProvider in tests 2015-09-07 16:28:50 +03:00
Michael Bogdanov
21e9c9b0c1 package part indexing hack 2015-09-07 16:28:50 +03:00
Michael Bogdanov
5581d4e207 Don't verify mapping files and proper packagemapper propagation 2015-09-07 16:28:49 +03:00
Michael Bogdanov
0883781f8c TODO: support mapping processing in incremental compilation 2015-09-07 16:28:49 +03:00
Michael Bogdanov
ebb1629285 new scope and deserialization 2015-09-07 16:28:49 +03:00
Michael Bogdanov
7f2973dc7d proto serialization 2015-09-07 16:28:48 +03:00
Michael Bogdanov
1fcacecf93 stubs for new components 2015-09-07 16:28:48 +03:00
Michael Bogdanov
6dcd059009 new kompiler parameter 2015-09-07 16:28:47 +03:00
Michael Bogdanov
65308d6aaf Proper module name: HACK 2015-09-07 16:28:47 +03:00
Michael Bogdanov
42d46853c7 Module mapping generation 2015-09-07 16:28:46 +03:00
Dmitry Petrov
83336553df Use special index to record files corresponding to static facade classes. 2015-09-07 16:28:45 +03:00
Dmitry Petrov
ab8b5d05ed Light class generation for new facades/parts.
1st working (naive) implementation.
2015-09-07 16:28:45 +03:00
Dmitry Petrov
47f5b55e65 KotlinLightClassForPackage -> KotlinLightClassForFacade
(with minor changes)
2015-09-07 16:28:44 +03:00
Dmitry Petrov
1c81b00143 Use ASCII capitalization for part class names 2015-09-07 16:28:44 +03:00
Dmitry Petrov
7af88f6797 Update debug tests & incremental compilation tests depending on part class naming 2015-09-07 16:28:43 +03:00
Dmitry Petrov
cd6ff31129 Update tests depending on part class naming 2015-09-07 16:28:43 +03:00
Dmitry Petrov
a47eaa2cb5 Change part class naming scheme
update tests depending on part class naming
2015-09-07 16:28:42 +03:00
Michael Bogdanov
801d10229b Partially removed replaceHashWithStar 2015-09-07 16:28:41 +03:00
Michael Bogdanov
45a85e3e35 Removed packagePartHASH 2015-09-07 16:28:41 +03:00
Michael Bogdanov
17d9b93790 DelegationClassBuilderFactory class extraction 2015-09-07 16:28:41 +03:00
Michael Bogdanov
35d51a8ea4 Update duplicate diagnostic 2015-09-07 16:28:40 +03:00
Michael Bogdanov
d524cdeef7 ~Redeclaration 2015-09-07 16:28:40 +03:00
Michael Bogdanov
2c2ec508d3 Redeclaration tests patched 2015-09-07 16:28:39 +03:00
Michael Bogdanov
0936351983 Incremental tests patched 2015-09-07 16:28:39 +03:00
Michael Bogdanov
905e74f870 TODO: restore tests: files with same names 2015-09-07 16:28:38 +03:00
Michael Bogdanov
48c5e3d218 Debug tests patched 2015-09-07 16:28:38 +03:00
Michael Bogdanov
8e8ff860d6 New package part naming 2015-09-07 16:28:37 +03:00
Dmitry Jemerov
e388750ebb set flag allowing to update the Kotlin plugin from the repository even though it's bundled 2015-09-07 15:16:25 +02:00
Mikhail Glukhikh
8f7b29f80a Annotation rename: target --> @Target 2015-09-07 13:42:26 +03:00
Alexey Sedunov
6c903a607c Move Declarations: Filter out declarations which are not under source root (including libraries)
#KT-8922 Fixed
2015-09-06 18:09:49 +03:00
Alexey Sedunov
c493a76cfb Move Declarations: Forbid inside non-top-level declarations. Show error hint instead of window when invoked from editor
#KT-8993 Fixed
 #KT-8777 Fixed
2015-09-06 18:04:41 +03:00
Alexey Sedunov
14c657d448 Extract Function: Consider reference "broken" if corresponding diagnostics are changed after code fragment extraction
#KT-8633 Fixed
2015-09-06 18:04:39 +03:00
Alexey Sedunov
e03067846f Extract Function: Ignore internal smartcasts
#KT-8458 Fixed
2015-09-06 18:04:37 +03:00
Ilya Ryzhenkov
ba5d5cc87b Optimize away boxing in JvmDependenciesIndex 2015-09-06 17:01:32 +03:00
Ilya Ryzhenkov
a14d97d8e1 Optimize line mapping initialization. 2015-09-06 17:01:31 +03:00
Ilya Ryzhenkov
970bd46544 Optimize siblings() 2015-09-06 17:01:30 +03:00
Yan Zhulanow
4ca127ecb3 Create custom exception for lateinit 2015-09-05 00:54:20 +03:00
Yan Zhulanow
fc3bf3cca4 Implement lateinit in backend 2015-09-05 00:54:19 +03:00
Yan Zhulanow
e3967b9fa0 Diagnostic on lateinit 2015-09-05 00:54:19 +03:00
Yan Zhulanow
add13cae82 lateinit modifier on property 2015-09-05 00:54:18 +03:00
Valentin Kipyatkov
48bccab31e Minor changes on code review 2015-09-04 23:27:38 +03:00
Valentin Kipyatkov
fe3e9341a1 Smart completion: no instantiation of anonymous object with uninferred type arguments in code 2015-09-04 23:27:37 +03:00
Valentin Kipyatkov
40de063ebd Smart completion for generic class instantiation to not insert explicit type arguments (for they'll probably be inferred from the expected type) 2015-09-04 23:27:37 +03:00
Valentin Kipyatkov
f470fec840 "return emptyList()" & "return emptySet()" in completion 2015-09-04 23:27:37 +03:00
Valentin Kipyatkov
6dca9a4558 Auto-popup completion remebers cancellation for parameter name/type completion only 2015-09-04 23:27:36 +03:00
Valentin Kipyatkov
997aef8fee Smart completion to work when some of previous arguments do not match
#KT-8400 Fixed
2015-09-04 23:27:36 +03:00
Valentin Kipyatkov
7663793e3d Smart completion to work when some of previous arguments have errors (+ fixed testAfterEmptyArgument broken by previous changes) 2015-09-04 23:27:36 +03:00
Valentin Kipyatkov
b11f47ec33 Removed unused parameter 2015-09-04 23:27:36 +03:00
Valentin Kipyatkov
8859fd395d Simplified code 2015-09-04 23:27:36 +03:00
Valentin Kipyatkov
db4c163539 More correct named arguments completion 2015-09-04 23:27:35 +03:00
Dmitry Jemerov
7cf4d265bb remove converter from run confguration format which was used in some ancient Kotlin plugin versions 2015-09-04 20:36:52 +02:00
Alexander Udalov
d0a4f82203 Fix NO_KOTLIN_REFLECT directive handling in codegen tests
It was disabling reflection on classpath at compile time, but not at runtime
2015-09-04 20:18:59 +03:00
Alexander Udalov
308d24eeb4 Don't throw exceptions on unexpected annotation arguments in class file reader 2015-09-04 19:51:26 +03:00
Dmitry Jemerov
55640ac885 assorted Find Usages fixes: add missing read actions, better cancellation, fix search of componentN() usages for data class primary constructor parameter, remove workaround for usage of IDEA API which is now public 2015-09-04 18:25:36 +02:00
Mikhail Glukhikh
ccf78b6fa4 Drop support of annotation(retention, repeatable, mustBeDocumented) format 2015-09-04 19:21:41 +03:00
Mikhail Glukhikh
eab288bdd7 annotation() now has no arguments. Syntax migration to Retention / Repeatable / MustBeDocumented combination
Deprecated test for annotation(params) completion deleted. A lot of tests changed.
2015-09-04 19:21:12 +03:00
Denis Zharkov
86f35acf9e Fix testBuiltins result 2015-09-04 18:19:32 +03:00
Denis Zharkov
bf38f56261 Temporary workaround to compile bootstrap version
May be reverted soon
2015-09-04 18:19:32 +03:00
Denis Zharkov
4159c83282 Support decapitilized obsolete annotations in resolve
Annotations like `deprecated`, `jvmStatic`, etc. has been renamed to capitilized themselves.
But we're going to support both versions.
It's hard just to leave both versions of classes as their class-files can clash
when compiled on register-independent file system.

So here is solution (temporary hack):
we just wrap JetScopes for package fragments of `kotlin.*`
to make them search both versions of annotations if their names are contained
in our hardcoded set.
2015-09-04 18:19:32 +03:00
Denis Zharkov
31244edec9 Deprecate deprecated in favor of Deprecated 2015-09-04 18:19:31 +03:00
Denis Zharkov
952d45dc8b Deprecate JVM platform annotations in favor of capitilized themselves 2015-09-04 18:19:31 +03:00
Denis Zharkov
5471a1d18a Add kotlin.external annotation and deprecate kotlin.jvm.native 2015-09-04 18:19:31 +03:00
Denis Zharkov
26f9bd7b63 Deprecate some of JVM flag annotations in favor of capitilized themselves 2015-09-04 18:19:31 +03:00
Denis Zharkov
2b76941733 Deprecate throws annotation in favor of Throws 2015-09-04 17:23:26 +03:00
Denis Zharkov
9254b1b461 Deprecate tailRecursive in favor of tailrec 2015-09-04 17:23:26 +03:00
Denis Zharkov
bbc192fda5 Deprecate suppress annotation in favor of Suppress 2015-09-04 17:23:25 +03:00
Denis Zharkov
11fed1674e Deprecate extension annotation in favor of Extension 2015-09-04 17:23:25 +03:00
Dmitry Jemerov
3597234165 code review 2015-09-04 15:05:15 +02:00
Dmitry Jemerov
1e37927115 remove old usages search implementation 2015-09-04 15:05:14 +02:00
Dmitry Jemerov
9bd68f458f add missing read action (EA-72578) 2015-09-04 15:05:12 +02:00
Dmitry Jemerov
ebce992f20 search for members of companion object in KotlinReferencesSearch is optional 2015-09-04 15:05:11 +02:00
Dmitry Jemerov
fcb8b796c4 change expected testdata 2015-09-04 15:05:11 +02:00
Dmitry Jemerov
6462bda61c correct equals() for MyRequestResultProcessor 2015-09-04 15:05:10 +02:00
Dmitry Jemerov
c2f2e316af usage search for companion object searches for Java usages of its members 2015-09-04 15:05:09 +02:00
Dmitry Jemerov
256791cf02 fix search for usages of Java overrides 2015-09-04 15:05:08 +02:00
Dmitry Jemerov
0bc9ef5c0b replace UsagesSearch with ReferencesSearch in Find Usages 2015-09-04 15:05:08 +02:00
Dmitry Jemerov
f76520c771 use standard references search for searching usages of type parameter 2015-09-04 15:05:07 +02:00
Michael Nedzelsky
a59f14eede warning for access to private top-level declarations from another file 2015-09-04 15:35:28 +03:00
Mikhail Glukhikh
778ac7f25c annotation --> Retention / Repeatable / MustBeDocumented: converting from Java to Kotlin and back.
At this very short moment Kotlin supports both annotation(retention, repeatable, mustBeDocumented) and Retention / Repeatable / MustBeDocumented separately.
2015-09-04 12:49:36 +03:00
Mikhail Glukhikh
7dff4ad916 New built-in annotations: Retention, Repeatable, MustBeDocumented 2015-09-04 12:49:28 +03:00
Mikhail Glukhikh
4e3bd10cd3 Java annotation with target "TYPE" is now applicable to Kotlin targets "CLASSIFIER" and "FILE" 2015-09-04 12:49:24 +03:00
Mikhail Glukhikh
699f1e0a70 AnnotationTarget.PACKAGE was dropped 2015-09-04 12:49:14 +03:00
Natalia Ukhorskaya
c836060f3a Minor: do less work in debug thread during stepping commands for inline functions 2015-09-04 11:40:23 +03:00
Natalia Ukhorskaya
060b6e6b15 Debugger: support stepping out inline function 2015-09-04 11:40:22 +03:00
Natalia Ukhorskaya
ba686c701e Debugger for inline functions: check for available strata (faster than compute source position) 2015-09-04 11:40:21 +03:00
Natalia Ukhorskaya
4980780268 Minor: extract method 2015-09-04 11:40:20 +03:00
Natalia Ukhorskaya
73946050c1 Debugger: support stepping over inline function 2015-09-04 11:40:20 +03:00
Natalia Ukhorskaya
ff4d557eac Minor: extract method 2015-09-04 11:40:19 +03:00
nik
0772bbeb4f kotlin builder: print 'label in local history' message to log with 'debug' level and once per build
(https://github.com/JetBrains/kotlin/pull/745)
2015-09-04 11:31:00 +03:00
Alexey Sedunov
e4dd30599e Extraction Engine: Forbid extraction of non-singleton qualifiers
#KT-8297 Fixed
2015-09-03 22:06:20 +03:00
Alexey Sedunov
1db7195e94 Extract Function: Fix callee replacement in operation expressions
#KT-8294 Fixed
2015-09-03 22:06:18 +03:00
Alexey Sedunov
1ca3c5e3b8 PSI Unifier: Use convention-based call for array access expressions when comparing elements by resolved calls
#KT-8312 Fixed
2015-09-03 22:06:17 +03:00
Alexey Sedunov
d7e79e7f28 Introduce Variable: Forbid inside of type references and 'super' references
#KT-8324 Fixed
2015-09-03 22:06:15 +03:00
Alexey Sedunov
fa8fcb53c5 Introduce Variable: Forbid extraction from class initializer (aside of its
body)
 #KT-8329 Fixed
2015-09-03 22:06:13 +03:00
Alexey Sedunov
c005fe613f Introduce Variable: Fix extraction of expression from when-entry condition
#KT-8444 Fixed
2015-09-03 22:06:12 +03:00
Alexey Sedunov
3038e2382b Introduce Variable: Forbid in the class body and at the top level
#KT-8735 Fixed
2015-09-03 22:06:11 +03:00
Alexey Sedunov
0f5dff483a Introduce Variable: Proper occurrence search in generated block expression
#KT-7836 Fixed
 #KT-8443 Fixed
 #EA-71411 Fixed
2015-09-03 22:06:09 +03:00
Alexey Sedunov
ed090c2b2e Create from Usage: Prefer member declarations over extensions
#KT-9012 Fixed
2015-09-03 22:06:08 +03:00
Alexey Sedunov
b2eb53e4b2 Move/Change Package: Package name validation
#EA-70631 Fixed
2015-09-03 22:06:06 +03:00
Alexander Udalov
df935f5bb7 Support reflection on lambdas and function expressions
Write a special annotation containing the bytes for the Callable protobuf
message and deserialize it at runtime properly

 #KT-9005 Fixed
2015-09-03 21:43:58 +03:00
Natalia Ukhorskaya
73ae0751ee Debugger tests: throw FileComparisonFailure instaed of ComparisonFailure 2015-09-03 20:14:51 +03:00
Natalia Ukhorskaya
f36f0f8de7 Revert commit ca907c4985
Update to 142.4245.2: register RunLineMarkerProvider not only for Java language (temp)
2015-09-03 20:14:49 +03:00
Natalia Ukhorskaya
86146ddf01 Update to Idea 142.4465.2 2015-09-03 20:14:47 +03:00
Michael Nedzelsky
3a4dfc5241 remove requirements for explicit return type for public members 2015-09-03 18:23:04 +03:00
Dmitry Jemerov
724f13954a searcher for more efficient search of Kotlin classes which have methods annotated with @Test
#KT-8557 Fixed
2015-09-03 17:17:01 +02:00
Dmitry Jemerov
2ae126e994 more understandable name for the stepping filter 2015-09-03 16:48:54 +02:00
Dmitry Jemerov
0f8b77d988 use ReferencesSearch instead of UsagesSearch for locating inline functions 2015-09-03 16:48:54 +02:00
Nikolay Krasko
6b4a0f90f9 loadresource doesn't work with redirects - use get instead 2015-09-03 16:22:45 +03:00
Valentin Kipyatkov
4085c1cf41 One more test 2015-09-03 15:56:00 +03:00
Valentin Kipyatkov
64e520b689 Moved test data 2015-09-03 15:56:00 +03:00
Valentin Kipyatkov
712df5682c Fixed test data after stdlib change 2015-09-03 15:56:00 +03:00
Valentin Kipyatkov
f6a2502f22 Fixed DeprecatedSymbolUsageFixSpecialTest 2015-09-03 15:55:59 +03:00
Valentin Kipyatkov
c5891d255d Added test 2015-09-03 15:55:59 +03:00
Valentin Kipyatkov
73da457798 Changes on code reivew 2015-09-03 15:55:59 +03:00
Valentin Kipyatkov
6575fb8535 Annotations supported
#KT-8912 Fixed
2015-09-03 15:55:59 +03:00
Valentin Kipyatkov
366204da85 Constructor usages are replaced too 2015-09-03 15:55:59 +03:00
Valentin Kipyatkov
de13e23a0a Initial support for class usages replacement with ReplaceWith 2015-09-03 15:55:59 +03:00
Valentin Kipyatkov
e7e2a9b1e2 Code cleanup 2015-09-03 15:55:58 +03:00
Valentin Kipyatkov
d6c6c4db97 Rename 2015-09-03 15:55:58 +03:00
Valentin Kipyatkov
c8c79c647f Moved lot of code from companion object onto top-level in separate file 2015-09-03 15:55:58 +03:00
Valentin Kipyatkov
8dbe87a918 Moved classes 2015-09-03 15:55:58 +03:00
Valentin Kipyatkov
5f45236f39 Ran code cleanup on 3 files 2015-09-03 15:55:58 +03:00
Valentin Kipyatkov
af9b9d2bb1 Fixed recursion in reflection intialization 2015-09-03 15:55:58 +03:00
Valentin Kipyatkov
4fa13408de Minor 2015-09-03 15:55:57 +03:00
Valentin Kipyatkov
416ac6dfd8 Removed implemented TODO 2015-09-03 15:55:57 +03:00
Valentin Kipyatkov
4321969ba5 Restored properties "java" and "kotlin" in package kotlin.reflect.jvm but made them hidden 2015-09-03 15:55:57 +03:00
Valentin Kipyatkov
37ed77467f Fixed ReplaceWith quickfix not working when synthetic extensions are used in the pattern 2015-09-03 15:55:57 +03:00
Valentin Kipyatkov
16650e8f5c Conflicting extension is recognized as redundant for setter with expression body 2015-09-03 15:55:57 +03:00
Valentin Kipyatkov
f244bfb073 Removed conflicting extensions from our code 2015-09-03 15:55:56 +03:00
Valentin Kipyatkov
460001cc8f Stdlib: deprecated conflicting extensions that are not the same as synthetic ones 2015-09-03 15:55:56 +03:00
Valentin Kipyatkov
dab47a8caf Stdlib: marked with @HiddenDeclaration and @deprecated redundant explicit extension properties 2015-09-03 15:55:56 +03:00
Valentin Kipyatkov
ce02d822f7 More safe 2015-09-03 15:55:56 +03:00
Valentin Kipyatkov
086d29a44a Added second quickfix on conflicting extension to mark it hidden and deprecated 2015-09-03 15:55:56 +03:00
Valentin Kipyatkov
b2ea369129 Don't report conflicting extension for marked with @HiddenDeclaration 2015-09-03 15:55:56 +03:00
Valentin Kipyatkov
690473313f Minor 2015-09-03 15:55:55 +03:00
Valentin Kipyatkov
29479603e3 Minor 2015-09-03 15:55:55 +03:00
Valentin Kipyatkov
b859815c79 Renamed conflicting property in test 2015-09-03 15:55:55 +03:00
Valentin Kipyatkov
ed2f5ccfa2 Checking file name case for some of the auto-generated tests 2015-09-03 15:55:55 +03:00
Valentin Kipyatkov
10f7d6d7dd Inspection (and quickfix) for extension propeties conflicting with synthetic ones 2015-09-03 15:55:54 +03:00
Valentin Kipyatkov
d41e01c0e4 Added a test 2015-09-03 15:55:54 +03:00
Valentin Kipyatkov
14c2500261 Added a test 2015-09-03 15:55:54 +03:00
Valentin Kipyatkov
58e79037ed Renamed tests 2015-09-03 15:55:54 +03:00
Valentin Kipyatkov
e83711d41a More correct rendering of synthetic extension descriptors 2015-09-03 15:55:54 +03:00
Alexander Udalov
67e29ac566 ReadMe: update IDEA 14 EAP -> 15 EAP 2015-09-03 14:57:46 +03:00
Alexander Udalov
113957e38f ReadMe: update Twitter link 2015-09-03 14:56:02 +03:00
Alexander Udalov
2d44a853e9 Don't perform "ant compiler-quick" and "ant runtime" before All Tests
Although this made sure you'd not forget to rebuild the runtime before running
all tests locally, it had an unexpected side effect that All Tests would check
not the compiler built by "ant dist", but the compiler built by "ant
compiler-quick", which can and does in fact differ from the former (for
example, proguard is not run on it)
2015-09-03 14:52:26 +03:00
Alexander Udalov
f1a75508d3 Optimize non-generic CollectionToArray.toArray for empty collection 2015-09-03 14:52:24 +03:00
Nikolay Krasko
fe947d5665 Move since because of using api for line markers 2015-09-03 14:21:06 +03:00
Nikolay Krasko
dd7ef4d89f Fix null exception in setName() method (EA-70396) 2015-09-03 13:40:09 +03:00
Nikolay Krasko
5325767c61 Minor: fix spelling 2015-09-03 13:40:08 +03:00
Nikolay Krasko
d4bf109a60 Check project for null (EA-72492) 2015-09-03 13:40:07 +03:00
Dmitry Jemerov
239097a3f3 remove temporarily copied Java safe delete implementation (the underlying IDEA problem has been fixed) 2015-09-02 20:29:05 +02:00
Yan Zhulanow
55b2029b3c Remove FIELD target from jvmStatic and platformStatic annotations 2015-09-02 20:36:48 +03:00
Ilya Gorbunov
c4b18d8fb8 Special case of slice for int ranges, sliceArray returning array.
#KT-8711
2015-09-02 20:22:38 +03:00
Ilya Gorbunov
faa26cdb25 Introduce operations on Arrays returning Arrays: reversedArray, sortedArray.
#KT-8711
2015-09-02 20:22:27 +03:00
Ilya Gorbunov
89df3925fa Unify operations on Array<T> and Array<out T> (copyOf, copyOfRange) which return the same type as the receiver. 2015-09-02 20:21:20 +03:00
Ilya Gorbunov
a3056bea1a Accept in-projection of Comparator as a parameter. 2015-09-02 20:21:18 +03:00
Mikhail Glukhikh
f92e91f045 Regression test for annotated function after the last enum entry #KT-4693 Obsolete 2015-09-02 18:23:10 +03:00
Mikhail Glukhikh
fa292ec0e0 Enum entries now can have no initializer if default secondary constructor is available. #KT-8484 Fixed 2015-09-02 18:23:07 +03:00
Stanislav Erokhin
0fc8023f18 Use LoggingStorageManager only if necessary 2015-09-02 17:49:16 +03:00
Yan Zhulanow
acbc39bf9f Minor: move kapt-related stuff to AnnotationProcessingManager 2015-09-02 15:53:15 +03:00
Yan Zhulanow
b044e4be07 Minor: remove code duplication 2015-09-02 15:53:15 +03:00
Yan Zhulanow
39d7e98775 kapt: Support Kotlin code generation 2015-09-02 15:53:14 +03:00
Yan Zhulanow
edb35ae6ce kapt: Fix sequential builds (KT-8733) 2015-09-02 15:53:14 +03:00
Ilya Gorbunov
b3073dbd2d Provide lazy implementation with an external object to synchronize on. 2015-09-02 15:49:53 +03:00
Ilya Gorbunov
4fbf787f7d Change proposed replacements for Delegates.lazy and blockingLazy to preserve behavior. 2015-09-02 15:49:50 +03:00
Ilya Gorbunov
184978e3cb Remove usages from tests 2015-09-02 15:49:47 +03:00
Ilya Gorbunov
ceb3b7da9d Thread extension properties deprecated in favor of synthetic extension properties.
Executor.invoke and ExecutorService.invoke deprecated.
2015-09-02 15:49:44 +03:00
Ilya Gorbunov
ed8edd2ce4 Documented HiddenDeclaration 2015-09-02 15:45:42 +03:00
Nikolay Krasko
1132652026 Update to 142.4245.2: Temprorary modify test data after IDEA update
The problem is in order of cleanup actions. Each action can invalidate psi and that can prevent next action from execution.
2015-09-02 15:10:43 +03:00
Natalia Ukhorskaya
11331e74fd Update to 142.4245.2: Fix compilation 2015-09-02 15:10:42 +03:00
Natalia Ukhorskaya
ffe41b88a7 Update to 142.4245.2: Debugger tests: changes in testData 2015-09-02 15:10:41 +03:00
Nikolay Krasko
339f8ee2ab Update to 142.4245.2: Fix test data in pull up 2015-09-02 15:10:40 +03:00
Nikolay Krasko
a946db98a1 Update to 142.4245.2: Fix compilation after update 2015-09-02 15:10:39 +03:00
Nikolay Krasko
ca907c4985 Update to 142.4245.2: register RunLineMarkerProvider not only for Java language (temp) 2015-09-02 15:10:32 +03:00
Nikolay Krasko
5554a44f0f Update to 142.4245.2: Update Kotlin run line marker info to new API 2015-09-02 15:10:03 +03:00
Nikolay Krasko
6975afba3e Update to 142.4245.2 2015-09-02 13:49:12 +03:00
Nikolay Krasko
73a24435f7 Make Kotlin light classes pass "element instanceof StubBasedPsiElement" in LocalSearchScope scope 2015-09-02 13:49:10 +03:00
Nikolay Krasko
853c29be5a Add read-action call for looking for descriptor 2015-09-02 13:49:09 +03:00
Nikolay Krasko
01fd028799 Test base class of the test to be closer emulate IDE behaviour 2015-09-02 13:49:08 +03:00
Nikolay Krasko
73eca64769 Minor: too long lines 2015-09-02 13:49:06 +03:00
Mikhail Glukhikh
726cbe3755 Refactoring: VariableInitState --> VariableControlFlowState 2015-09-02 12:07:21 +03:00
Mikhail Glukhikh
285d5d06c7 More precise value reassignment analysis. #KT-7418 Fixed. #KT-6902 Fixed.
Variable can now be "exactly initialized", "may be initialized" and "not initialized".
A set of relevant tests. Some fixed tests.
2015-09-02 12:07:18 +03:00
Denis Zharkov
c59b118b09 Implement quckfix adding explicit upper bounds for generic when needed 2015-09-02 12:04:08 +03:00
Denis Zharkov
c17451cf5c Add quickfix for JAVA_TYPE_MISMATCH 2015-09-02 12:03:52 +03:00
Denis Zharkov
632e336782 Prohibit unsafe covariant conversion for collections invariant in Java 2015-09-02 10:39:29 +03:00
Denis Zharkov
6dc08f76a6 Preserve type capabilities while substituting
`val result` in test data rendered descriptors should be rendered as having raw type
2015-09-02 10:38:43 +03:00
Denis Zharkov
3b80bf5bda Make call to additional type checker if no error happened 2015-09-02 10:38:43 +03:00
Michael Bogdanov
4853e4f1cc Module name parameter added to ant tasks 2015-09-02 09:29:38 +03:00
Stanislav Erokhin
d015f713cb KT-6244 Overloads with no default parameters should take over ones with defaults
#KT-6244 Fixed
2015-09-01 23:37:43 +03:00
Stanislav Erokhin
5ded315cbb Improved error reporting for candidates with wrong parameter count 2015-09-01 23:37:42 +03:00
Alexey Tsvetkov
8ea6f36903 Minor: move comment to the member it was written for
Accidentally moved comment when refactored GenerationState
2015-09-01 19:16:22 +03:00
Alexey Tsvetkov
7101f9a3a4 Move GenerationState member up to further simplify constructor usages 2015-09-01 19:05:38 +03:00
Alexey Tsvetkov
1d5b869bee Clean up GenerationState initializer 2015-09-01 19:05:38 +03:00
Alexey Tsvetkov
ddd469bb88 Minor: change order of GenerationState members 2015-09-01 19:05:37 +03:00
Alexey Tsvetkov
0a11525dd5 Clean up GenerationState constructor usages 2015-09-01 19:05:37 +03:00
Alexey Tsvetkov
1e964c6302 Make "progress" parameter with last in GenerationState constructor
This parameter has a default value, so it's more convenient to have it
closer to the end of parameter list.
2015-09-01 19:05:37 +03:00
Alexey Tsvetkov
79f450e174 Remove GenerationState secondary constructor 2015-09-01 19:05:37 +03:00
Alexey Tsvetkov
04e5cbb5d3 Convert some GenerationState functions to values 2015-09-01 19:05:37 +03:00
Alexey Tsvetkov
6e0332d418 Move GenerationState properties' initialization to declaration 2015-09-01 19:05:37 +03:00
Alexey Tsvetkov
de23f7ace8 Move property declaration to constructor 2015-09-01 19:05:37 +03:00
Alexey Tsvetkov
340929233e Remove unneeded brackets in GenerationState 2015-09-01 19:05:37 +03:00
Alexey Tsvetkov
1fcfbbca1b Replace plus operator with string template
This fixes the conversion issue: there is no "JavaClass<T>.plus(s:
String)" overload.
2015-09-01 19:05:37 +03:00
Alexey Tsvetkov
224bf7fb43 Convert GenerationState: actual conversion 2015-09-01 19:05:36 +03:00
Alexey Tsvetkov
4476dd934c Convert GenerationState: change extension 2015-09-01 19:05:36 +03:00
Michael Nedzelsky
e39dec19fa regenerate tests 2015-09-01 19:00:56 +03:00
Zalim Bashorov
fcbf8b5a28 Fix marking some files as executable on mac and on linux 2015-09-01 17:38:30 +03:00
Zalim Bashorov
a12a7eb3f2 Minor: remove deprecated macrodefs from update_dependencies.xml 2015-09-01 17:38:30 +03:00
Dmitry Jemerov
4991aff086 validate FQ name when checking the Java mapping (EA-72095) 2015-09-01 15:02:32 +02:00
Nikolay Krasko
9054151546 Use storage manager to create lazy value 2015-09-01 15:55:47 +03:00
Nikolay Krasko
6c45d81b86 Revert "Use lazy to store split annotations, code simplification"
This reverts commit 0b24e56f5a.
2015-09-01 15:55:46 +03:00
Mikhail Glukhikh
754f8af3fc Type<*> is inferred now if Type<A> and Type<B> common supertype is Type<X> and X is not within parameter upper bound. #KT-7585 Fixed. #EA-68943 Fixed.
It provides also a fix for KT-7585 (empty type intersection assertion).
A set of relevant tests, one fixed test
2015-09-01 15:49:29 +03:00
Alexander Udalov
c90bcb41f3 Refactor and fix buildDecompiledText#appendDescriptor
Make it clear that first we render all enum entries, then the companion if it
exists, then anything else. Previously the companion wasn't rendered in the
case when the scope did not contain anything else (which was the case for the
scope of a class not found in the decompiler)
2015-09-01 15:06:45 +03:00
Michael Nedzelsky
be2324031d decompiled text: add test for inherited interface 2015-09-01 15:06:45 +03:00
Nikolay Krasko
add43407d3 Overridden methods with generic type shows no implementations found (KT-8723)
#KT-8723 Fixed
2015-09-01 12:45:12 +03:00
Nikolay Krasko
2af541cd4f Refactor: splict logic to different methods 2015-09-01 12:45:11 +03:00
Nikolay Krasko
f2145fb9a5 Minor: drop usage of deprecated method 2015-09-01 12:45:11 +03:00
Alexander Udalov
f7a178f978 Report warning on 'Singleton.javaClass'
As a temporary measure before 'javaClass' property is deprecated and removed.
Getting the Java class of a singleton this way is confusing and most of the
time is a failed attempt to get the Java class of a class with a companion
object (e.g. 'Int.javaClass')
2015-09-01 11:36:57 +03:00
Alexander Udalov
3f1bf46756 Minor, add toString() for debug 2015-09-01 11:36:57 +03:00
Ilya Chernikov
427b27b367 Merge pull request #743 from JetBrains/rr/compile-service
Kotlin compile daemon
2015-09-01 09:15:13 +02:00
Nikolay Krasko
142ab96a5a Run/Debug editor gutter drop down does not work in Kotlin files (KT-8720)
#KT-8720 Fixed
2015-08-31 21:38:46 +03:00
Nikolay Krasko
55456fdaf4 Minor: fix class-only local run 2015-08-31 21:38:45 +03:00
Nikolay Krasko
d6b7214a65 More psi-only checks for Kotlin main function 2015-08-31 21:38:44 +03:00
Ilya Chernikov
7c1c628823 Next round of refactoring after review 2015-08-31 19:10:28 +02:00
Ilya Chernikov
9bee97e810 Refactoring after review 2015-08-31 18:39:55 +02:00
Ilya Chernikov
2d45a37884 Passing JPS process JVM memory options to daemon, refactoring options processing 2015-08-31 18:39:54 +02:00
Ilya Chernikov
61de1c3212 Fixes after review 2015-08-31 18:39:54 +02:00
ligee
434c30c1bc Simple test with daemon compilation, minor fixes mostly for easier testing 2015-08-31 18:39:53 +02:00
ligee
6e3ce69faa Shutting down daemon from kotlin plugin on idea exit, passing jvm params to daemon launch 2015-08-31 18:39:53 +02:00
ligee
5fee180d09 Daemon log, controlling it from launching, proper stdout/err redirection technique, params to control jvm options of the daemon 2015-08-31 18:39:52 +02:00
ligee
39d6592e1f Adding compiler id digest calculation and check to detect replaced compiler jar, minor fixes and refactorings 2015-08-31 18:39:51 +02:00
ligee
f08476cba9 Adding daemon stop command to kotlinr, minor fixes 2015-08-31 18:39:51 +02:00
ligee
d8be831339 Switching to stream for logging to simplify interaction with use sites 2015-08-31 18:39:50 +02:00
ligee
7ab2208fc5 implementing daemon startup, basic check and restart machanisms, switching to kotlin everythere, additional logging and checks, in JPS plugin daemon compilation is off by default, turned on by "kotlin.daemon.enabled" property 2015-08-31 18:39:50 +02:00
ligee
33cead12e0 working version of jps-plugin integration with daemon 2015-08-31 18:39:49 +02:00
ligee
b55894499f incremental compilation via daemon 2015-08-31 18:39:49 +02:00
ligee
06b3ca8343 Initial version of rmi-interface, compile server and kotlinr - commandline compile server client app 2015-08-31 18:39:48 +02:00
Valentin Kipyatkov
937f243046 DeprecatedSymbolUsageInWholeProjectFix removes imports too 2015-08-31 15:48:25 +03:00
Valentin Kipyatkov
e98edbcbac Code cleanup to remove deprecated symbol imports that have ReplaceWith 2015-08-31 15:48:25 +03:00
Valentin Kipyatkov
c020189ad0 Added UsePropertyAccessSyntaxIntention as cleanup tool 2015-08-31 15:48:25 +03:00
Yan Zhulanow
d734e2e665 Increase stub version 2015-08-31 15:33:18 +03:00
Yan Zhulanow
0b24e56f5a Use lazy to store split annotations, code simplification 2015-08-31 15:33:17 +03:00
Yan Zhulanow
b6adaab94b Move AnnotationSplitter to descriptors/annotations 2015-08-31 15:33:16 +03:00
Yan Zhulanow
47a05e8bd6 Fix targets on stdlib annotations 2015-08-31 15:33:15 +03:00
Yan Zhulanow
e7703df0b6 Use a single AnnotatedCallableKind enum item for property 2015-08-31 15:33:14 +03:00
Yan Zhulanow
97e4c097ba Split annotations lazily 2015-08-31 15:33:14 +03:00
Yan Zhulanow
2ce9903356 Fix tests 2015-08-31 15:33:13 +03:00
Yan Zhulanow
552211b2f4 Add bytecode listing test for use site targets and default targets (with priorities) 2015-08-31 15:33:12 +03:00
Yan Zhulanow
9dbd355e92 Render targeted annotations without escaping brackets 2015-08-31 15:33:11 +03:00
Yan Zhulanow
298093c4bd Forbid deprecated on field 2015-08-31 15:33:10 +03:00
Yan Zhulanow
e0c85cba23 Fix platformStatic in reflection-jvm 2015-08-31 15:33:09 +03:00
Yan Zhulanow
4b3999bf6c Serialize annotation target psi element 2015-08-31 15:33:08 +03:00
Yan Zhulanow
c488ce4cb3 Check annotation site targets using psi elements 2015-08-31 15:33:08 +03:00
Yan Zhulanow
499d5e1103 Support property and field annotations in CallableClsStubBuilder 2015-08-31 15:33:07 +03:00
Yan Zhulanow
b8d2ba23e3 Support generation of new annotations 2015-08-31 15:33:06 +03:00
Yan Zhulanow
3624c4e5dc Use target priorities to split annotations to different descriptors 2015-08-31 15:33:05 +03:00
Yan Zhulanow
9838f9c942 Check deprecated annotations with use site targets 2015-08-31 15:33:04 +03:00
Yan Zhulanow
1a477bd540 Add field and property deserialization tests 2015-08-31 15:33:04 +03:00
Yan Zhulanow
1b9dab47ec Deserialize property and field annotations 2015-08-31 15:33:03 +03:00
Yan Zhulanow
f86fe6a8d5 Allow multiple non-repeatable annotations with different targets 2015-08-31 15:33:02 +03:00
Yan Zhulanow
4ead50352d Put @receiver-targeted annotations on receiver type 2015-08-31 15:33:01 +03:00
Yan Zhulanow
91626cf02e Check receiver type annotations in JetCallableDeclaration 2015-08-31 15:33:00 +03:00
Yan Zhulanow
54f0da300c Force resolve type annotations 2015-08-31 15:32:59 +03:00
Yan Zhulanow
a3ba1af421 Generate receiver annotations using extension receiver type parameter 2015-08-31 15:32:59 +03:00
Yan Zhulanow
866552f6ab Redundant annotation target warning 2015-08-31 15:32:58 +03:00
Yan Zhulanow
5cb74a2b12 Do not allow field annotations on properties 2015-08-31 15:32:57 +03:00
Yan Zhulanow
8b47f56eb9 Allow property annotations on primary constructor parameter 2015-08-31 15:32:56 +03:00
Yan Zhulanow
08c678ef46 Deserialize receiver parameter annotations for extension functions 2015-08-31 15:32:55 +03:00
Yan Zhulanow
397da8746a Report more detailed message if use site target is available 2015-08-31 15:32:55 +03:00
Yan Zhulanow
6e415984f0 Move AnnotatedWithAdditionalAnnotations to backend 2015-08-31 15:32:54 +03:00
Yan Zhulanow
b38b7071b7 Targeted annotation diagnostic tests 2015-08-31 15:32:53 +03:00
Yan Zhulanow
8849d7d10a Check @param target applicability 2015-08-31 15:32:52 +03:00
Yan Zhulanow
e72ce555e0 Move annotation use-site checks to AnnotationUseSiteTargetChecker 2015-08-31 15:32:51 +03:00
Yan Zhulanow
8741b2d083 Allow targeted annotations in parameter list 2015-08-31 15:32:50 +03:00
Yan Zhulanow
8e65ceefd0 Check use-site targeted annotations with AnnotationTarget in declaration-site 2015-08-31 15:07:16 +03:00
Yan Zhulanow
a1eb544807 Parser tests for targeted annotations 2015-08-31 15:07:15 +03:00
Yan Zhulanow
2f1def6832 Support @param and @sparam annotations 2015-08-31 15:05:05 +03:00
Yan Zhulanow
00cfb3054a Support @receiver annotations 2015-08-31 15:05:05 +03:00
Yan Zhulanow
93579564c8 Support @property annotations 2015-08-31 15:05:04 +03:00
Yan Zhulanow
b1a28bcc6a Support @get and @set annotations 2015-08-31 15:05:04 +03:00
Yan Zhulanow
1010658a85 Parse other use-site targeted annotations 2015-08-31 15:05:03 +03:00
Yan Zhulanow
d56a3f97c6 Render annotations with use-site target 2015-08-31 15:05:03 +03:00
Yan Zhulanow
2bacbc9046 Support @field: annotations 2015-08-31 15:05:02 +03:00
Dmitry Jemerov
0499335c34 remove non-standard implementation of collectRefs() which is no longer necessary 2015-08-31 12:19:26 +02:00
Dmitry Jemerov
8abc6892ad use references search in introduce parameter 2015-08-31 12:19:23 +02:00
Dmitry Jemerov
adb10136a3 use ReferencesSearch when converting between function and property 2015-08-31 12:18:30 +02:00
Dmitry Jemerov
37c40c9a23 change the origin of light methods for property accessors to the property itself 2015-08-31 12:18:25 +02:00
Dmitry Jemerov
e283dbb8f4 when renaming a companion object, filter out references to companion object via its containing class, which shouldn't be updated by the rename 2015-08-31 12:08:13 +02:00
Dmitry Jemerov
e99316d22e rename tests: defaultObject -> companionObject 2015-08-31 12:08:12 +02:00
Dmitry Jemerov
039738a995 consider a companion object to be used if it contains any members 2015-08-31 12:08:05 +02:00
Dmitry Jemerov
c645b9c237 RenameKotlinClassProcessor: J2K 2015-08-31 12:08:04 +02:00
Dmitry Jemerov
3437891848 RenameJetClassProcessor: rename to .kt 2015-08-31 12:08:03 +02:00
Dmitry Jemerov
1f170e48e7 use references search for unused symbol inspection 2015-08-31 12:08:02 +02:00
Alexander Udalov
fb09c91714 Minor, rename PlatformStatic* -> JvmStatic* in reflection 2015-08-29 18:42:09 +03:00
Alexander Udalov
408a86c761 Minor, add toString() for easier debug 2015-08-29 18:37:42 +03:00
Alexander Udalov
a1097f7081 Add val KClass.staticProperties: Collection<KProperty0<*>>
To get static fields from Java classes
2015-08-29 18:37:41 +03:00
Alexander Udalov
593937d302 Support KCallable.callBy with map of parameters to arguments
callBy is able to handle optional parameters.

 #KT-8827 Fixed
2015-08-29 18:37:40 +03:00
Alexander Udalov
0d62680f63 Support KParameter.isOptional
#KT-8825 Fixed
2015-08-29 18:37:39 +03:00
Alexander Udalov
fd97383f8a Fix mapping of jvmStatic functions
#KT-8800 Fixed
2015-08-29 18:37:38 +03:00
Alexander Udalov
9a8cf23ed4 Support KClass.companionObject and companionObjectInstance
#KT-7636 Fixed
2015-08-29 18:37:32 +03:00
Alexander Udalov
94d45f35d4 Support KClass.nestedClasses 2015-08-29 17:59:45 +03:00
Valentin Kipyatkov
e8dc9ede31 Implemented HiddenDeclaration annotation (doc-comment to be added!) 2015-08-29 10:54:59 +03:00
Stanislav Erokhin
ba4fb3e37c Add hack for Repl 2015-08-29 01:46:00 +03:00
Stanislav Erokhin
2cb3842c39 Take snapshot for LexicalWritableScope when subscopes created 2015-08-29 01:45:59 +03:00
Stanislav Erokhin
4c7bafce45 Global replace JetScope to LexicalScope 2015-08-29 01:45:56 +03:00
Stanislav Erokhin
1b1fae8899 Minor. Added some util methods for LexicalScope 2015-08-29 01:44:36 +03:00
Stanislav Erokhin
d1efadf168 Created slice key LEXICAL_SCOPE 2015-08-29 01:44:35 +03:00
Stanislav Erokhin
1d5cd8f7e1 Created LexicalWritableScope add added RedeclarationHandler for LexicalScopeImpl 2015-08-29 01:44:34 +03:00
Stanislav Erokhin
04ccb4cf90 Added hashCode & equals to LexicalToJetScopeAdapter for correct rewrite in trace 2015-08-29 01:44:34 +03:00
Alexander Udalov
7c28a2e732 Support KClass.defaultType 2015-08-28 21:22:11 +03:00
Alexander Udalov
ea8fe56704 Include property type to KProperty.toString 2015-08-28 21:11:31 +03:00
Alexander Udalov
d36ef90dd6 Provide equals/hashCode/toString for KParameter implementation
Two KParameter instances are equal iff their backing descriptors are equal and
their callables are equal
2015-08-28 21:11:30 +03:00
Alexander Udalov
d4825cf4f0 Support KParameter.kind: instance, extension receiver, or value 2015-08-28 21:11:22 +03:00
Alexander Udalov
a73d02418d Introduce additional API for introspecting functions
memberFunctions, declaredMemberFunctions, staticFunctions, etc.

 #KT-8797 Fixed
2015-08-28 21:11:21 +03:00
Alexander Udalov
ebe4a8ec89 Provide equals/hashCode/toString for KType implementation 2015-08-28 21:11:20 +03:00
Alexander Udalov
9882e86ecb Don't render contents of enum entry classes in .txt tests, regenerate tests
They are irrelevant because cannot be accessed from the outside anyway
2015-08-28 21:11:06 +03:00
Alexander Udalov
29abf94327 Prohibit clone() for enum classes
#KT-8972 Fixed
2015-08-28 21:11:02 +03:00
Alexander Udalov
89f3cfc704 Support parameter names for Java 8 classes in reflection
Also support specifying additional options to javac in codegen tests, which was
needed to compile Java sources with the "-parameters" option
2015-08-28 21:11:01 +03:00
Alexander Udalov
30967baca8 Minor, rename extension property to avoid name clash 2015-08-28 21:11:00 +03:00
Denis Zharkov
e8f91e596c Adjust test data after fixes about generic nullability 2015-08-28 18:50:26 +03:00
Denis Zharkov
4a3fbcc16e Make project compilable after fixes about generic nullability 2015-08-28 18:50:26 +03:00
Denis Zharkov
5e09a0c2c9 Add some test cases after review 2015-08-28 18:50:25 +03:00
Denis Zharkov
00a78fce0c Get rid of special logic when check receiver
Instead of manually checking nullability when reporing UNSAFE_CALL_ERROR
just check if receiver type is subtype of receiver parameter

Make it in two steps
1. Check subtype with respect to smart casts but ignoring nullability (if it's not satisfied -> ERROR)
2. Check subtype with respect to nullability and smartcasts (record latter if needed)
2015-08-28 18:50:25 +03:00
Denis Zharkov
6ed6b2e298 Move and expand hack about not-null smart casts for type parameters 2015-08-28 18:50:25 +03:00
Denis Zharkov
acf6491eed Simplify getSmartCastVariantsExcludingReceiver
Use DataFlowValueFactory.createDataFlowValue instead of manual instanceof
2015-08-28 18:50:25 +03:00
Denis Zharkov
9f8f0e9d37 Fix DataFlowValue creation for Transient/Script receivers 2015-08-28 18:50:25 +03:00
Denis Zharkov
b471767e03 Refine smart cast check for type parameters 2015-08-28 18:50:25 +03:00
Denis Zharkov
aad977d204 Properly check whether nullability of receiver argument fits to parameter's nullability
It's should behave like we check isSubtype(receiverType, parameterType) + use nullability info from smart cast

 #KT-1090 Fixed
2015-08-28 18:50:25 +03:00
Denis Zharkov
70d4a7997e Minor. Extract getDataFlowValueExcludingReceiver 2015-08-28 18:50:25 +03:00
Denis Zharkov
6ecfa6e985 Refine subtyping check: pay attention to corresponding supertype nullability
F: Any, T : F? => !isSubtype(T, Any)

It helps to identify upper bounds violation like in KT-7455

 #KT-7455 Fixed
 #KT-2924 Fixed
 #KT-3015 Fixed
2015-08-28 18:50:25 +03:00
Denis Zharkov
a906be6dd7 Prohibit using null as a value of generic type
#KT-7350 Fixed
 #KT-7736 Fixed
 #KT-7485 Fixed
2015-08-28 18:50:25 +03:00
Denis Zharkov
dfac2205fd Use makeNullable when checking if initial constraints are satisfied
In most cases it should not matter what to use makeNotNullable or makeNullable.
But the first one breaks for this type of constraint:
T <: Any? (where T is type parameter with upper bound Any?)

Currently makeNotNullable(T) doesn't differs from T, in contrast to makeNotNullable(Any?)
So makeNotNullable(T) <: makeNotNullable(Any?) is not satisfied, but it's obvious that T <: Any?.
2015-08-28 18:50:24 +03:00
Ilya Gorbunov
83f9ee2737 Concurrent getOrPut for concurrent maps.
#KT-5800 Fixed
2015-08-28 17:51:48 +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
Valentin Kipyatkov
a012fd0c7d Minor changes after code review 2015-08-28 16:22:48 +03:00
Valentin Kipyatkov
02922f3f93 No parameter name&type completion for anonymous function 2015-08-28 16:22:48 +03:00
Valentin Kipyatkov
bd4f1c65c2 Insert type arguments by Tab too 2015-08-28 16:22:47 +03:00
Valentin Kipyatkov
9df3bb8a06 More correct sorting of parameter name&type suggestions in completion 2015-08-28 16:22:47 +03:00
Valentin Kipyatkov
7ef9a9d6d4 Better presentation 2015-08-28 16:22:47 +03:00
Valentin Kipyatkov
2de5229098 Additional item inserting lambda provided by completion when all parameters before the last are optional 2015-08-28 16:22:47 +03:00
Valentin Kipyatkov
dfe4f8e34f Renamed parameters + slightly more correct logic 2015-08-28 16:22:46 +03:00
Valentin Kipyatkov
a4c5907a1f KT-8898 If invocation context contains functional value compatible with function in completion list, show non-literal item
#KT-8898 Fixed
2015-08-28 16:22:46 +03:00
Valentin Kipyatkov
fbb37f0154 Refactored ReferenceVariantsHelper to allow specifying receiver 2015-08-28 16:22:46 +03:00
Valentin Kipyatkov
6dde70e358 Split LookupElementFactory into 3 classes 2015-08-28 16:22:45 +03:00
Valentin Kipyatkov
cff817d03b Moved class 2015-08-28 16:22:45 +03:00
Valentin Kipyatkov
6e6e80cc2a Moved method 2015-08-28 16:22:45 +03:00
Valentin Kipyatkov
363295f6af Moved creation of additional items like special items for functions accepting lambda into LookupElementFactory to provide them in smart completion too 2015-08-28 16:22:44 +03:00
Valentin Kipyatkov
5b3e83d547 Deprecated method usage fix 2015-08-28 16:22:44 +03:00
Valentin Kipyatkov
66719923c2 KT-6050 Support completion for super qualifier
#KT-6050 Fixed
2015-08-28 16:22:44 +03:00
Valentin Kipyatkov
7458000f14 Use DescriptorToSourceUtilsIde because DescriptorToSourceUtils does not work for compiled Kotlin descriptors 2015-08-28 16:22:44 +03:00
Dmitry Jemerov
19eea4bf4e store cached Java file stub in the userdata of a JetFile (project specific), not of VirtualFile (app global) 2015-08-28 15:16:22 +02:00
Nikolay Krasko
1a47d6754d Allow to search marker classes in dumb mode (EA-67309) 2015-08-28 13:44:02 +03:00
Nikolay Krasko
4c9af37526 Can't navigate to SAM adapter function declaration (KT-8918)
#KT-8918 Fixed
2015-08-28 13:43:59 +03:00
Valentin Kipyatkov
ab783e052f No override for private to this 2015-08-27 23:21:22 +03:00
Valentin Kipyatkov
4717b17418 Inspection & fix for redundant supertype qualification 2015-08-27 23:21:22 +03:00
Valentin Kipyatkov
d62eeb1c25 Better test 2015-08-27 23:21:22 +03:00
Valentin Kipyatkov
dcfe9b98d7 Fixed bug with duplicated members in Override Members dialog 2015-08-27 23:21:21 +03:00
Valentin Kipyatkov
ccfa48b564 MInor 2015-08-27 23:21:21 +03:00
Valentin Kipyatkov
40638de67c Override members does not generate qualified super when not needed 2015-08-27 23:21:21 +03:00
Valentin Kipyatkov
dd6702b832 Minor 2015-08-27 23:21:21 +03:00
Valentin Kipyatkov
9497856d8e KT-8868 "Implement members" generates unqualified reference for member class/interface
#KT-8868 Fixed
2015-08-27 23:21:21 +03:00
Valentin Kipyatkov
14763a7ffa Renames 2015-08-27 23:21:21 +03:00
Valentin Kipyatkov
ba33c834c1 Add name to argument intention to work not only on the last argument 2015-08-27 23:21:20 +03:00
Dmitry Jemerov
5e1d8bc503 test for safe delete of data class parameter used as componentN() function in Kotlin code 2015-08-27 21:15:48 +02:00
Dmitry Jemerov
63d477e355 fix broken merge; support for renaming primary constructor parameter which declares an overridden property 2015-08-27 21:15:47 +02:00
Dmitry Jemerov
3e5c687e9d additional tests to verify that cases from KT-4793 are fixed
#KT-4793 Fixed
2015-08-27 21:15:47 +02:00
Dmitry Jemerov
ef4b32db0d fix find usages and rename for primary constructor properties
#KT-8807 Fixed
2015-08-27 21:15:46 +02:00
Yan Zhulanow
0c87639514 Fix annotation list parsing: @identifier:[a b c] 2015-08-27 18:16:06 +03:00
Nikolay Krasko
440379dfad Add univeral targets for idea_continuous that can work not only in JB local network 2015-08-27 15:51:57 +03:00
Nikolay Krasko
53db747a55 Use local mirror for getting idea artifacts 2015-08-27 15:51:56 +03:00
Nikolay Krasko
75396ff7bb Remove deprecated targets 2015-08-27 15:51:55 +03:00
Nikolay Krasko
a2f30f9619 Add simple pattern pre-check in hasMetadata() 2015-08-27 15:49:18 +03:00
Dmitry Jemerov
18223dfaaa update backing field references when renaming Kotlin property
#KT-7905 Fixed
2015-08-27 14:31:17 +02:00
Dmitry Jemerov
96f2257b23 disable rename refactoring for function literals (KT-8917) 2015-08-27 14:18:55 +02:00
Valentin Kipyatkov
9d7e6600d4 Got rid of allKotlinClasses() method 2015-08-27 13:34:33 +03:00
Valentin Kipyatkov
542fa34c2d KT-8680 Change priority of imported descriptors (user imports vs default imports)
#KT-8680 Fixed
2015-08-27 13:34:33 +03:00
Stanislav Erokhin
d92e71861e Changed JetScope to LexicalScope in ClassDescriptorWithResolutionScopes and DeclarationScopeProvider 2015-08-27 12:01:13 +03:00
Stanislav Erokhin
47f88eb1c1 Created LexicalChainedScope and LexicalScopeImpl 2015-08-27 12:01:12 +03:00
Stanislav Erokhin
2a0159f23b Created JetScope.memberScopeAsFileScope() 2015-08-27 12:01:11 +03:00
Stanislav Erokhin
aa3be395a4 Extract WritableScopeStorage from WritableScopeImpl 2015-08-27 12:01:10 +03:00
Stanislav Erokhin
40c3b03a54 Minor. Change return type for method WritableScope.changeLockLevel 2015-08-27 12:01:09 +03:00
Stanislav Erokhin
3152d722cd Fix bug in ScopeUtils. 2015-08-27 12:01:09 +03:00
Stanislav Erokhin
aaebe70342 Improved logic of finding conflicts for refactoring actions 2015-08-27 12:01:08 +03:00
Stanislav Erokhin
9a435e332f Fix InnerClassesScopeWrapper - remove properties and functions from this scope. 2015-08-27 12:01:07 +03:00
Stanislav Erokhin
49b294b8b4 Move MutableClassDescriptor to backend module 2015-08-27 12:01:06 +03:00
Stanislav Erokhin
a4599ef5e2 Clean up MutableClassDescriptor 2015-08-27 12:01:06 +03:00
Ilya Gorbunov
84d3d42e05 Replace deprecated reverse method usages. 2015-08-27 11:45:44 +03:00
Ilya Gorbunov
ca798d8d71 Rename reverse to reversed.
#KT-8171
2015-08-27 11:45:30 +03:00
Alexander Udalov
56e12787a8 Fix exception on overridding var-property with a val constructor parameter
#KT-3810 Fixed
2015-08-27 10:23:49 +03:00
Alexander Udalov
59a15092da Drop old preloader command-line interface, use new one instead 2015-08-27 08:19:51 +03:00
Alexander Udalov
2a93629305 Render original descriptor in the deprecation warning
Otherwise it gets confusing when multiple instantiations of the same deprecated
symbol (e.g. javaClass<T>()) are diagnosed with different type arguments
2015-08-27 08:19:51 +03:00
Alexander Udalov
8d9618348d Move .java and .kotlin extension properties to kotlin.jvm
Delete the old ones in package kotlin.reflect.jvm because otherwise the code
using those functions will become red in a lot less meaningful way (overload
resolution ambiguity) than if they're deleted (unresolved import)

Based on the work originally done by @dnpetrov

 #KT-8380 Fixed
2015-08-27 08:19:50 +03:00
Ilya Gorbunov
b8badd59ba Introduce reversed extension for Comparator. 2015-08-27 00:10:11 +03:00
Ilya Gorbunov
5a474adf59 Unify selector parameter names. 2015-08-27 00:09:57 +03:00
Ilya Gorbunov
7d33599fc2 Parameterless nullsFirst and nullsLast and misc comparator combining functions. 2015-08-27 00:09:44 +03:00
Ilya Gorbunov
5a4e598ba7 Another approach for sorting nulls. 2015-08-27 00:09:31 +03:00
Ilya Gorbunov
d49a1973e5 Change null handling in compareValuesBy(a, b, functions). Provide nullsFirst() and nullsLast() to extend Comparator<T> to Comparator<T?>. 2015-08-27 00:09:17 +03:00
Ilya Gorbunov
63110dcdf8 Remove StdLibArraysTest and include collections/ArraysTest.kt into StdLibTestToJSTest smoke tests instead.
Move helper methods, so they are available in JS semantics tests.
2015-08-27 00:09:04 +03:00
Ilya Gorbunov
521e0b679d Rename sortedDescendingBy to sortedByDescending 2015-08-27 00:08:50 +03:00
Ilya Gorbunov
002c3e850f Tests for sorting methods. 2015-08-27 00:08:37 +03:00
Ilya Gorbunov
5eb69334b4 compareBy and related Comparator constructors have the same null-comparison semantics as compareValuesBy. 2015-08-27 00:08:23 +03:00
Ilya Gorbunov
0f5c3678f8 Provide asIterable for sequences. 2015-08-27 00:08:10 +03:00
Ilya Gorbunov
6f71e54268 In-place array sorting in JS. 2015-08-27 00:07:56 +03:00
Ilya Gorbunov
8d481fc611 Deprecate all sort methods and provide sorted ones.
#KT-4903
2015-08-27 00:07:43 +03:00
Michael Nedzelsky
c061a3dbd8 disable parallel compilation for Kotlin modules 2015-08-26 23:02:55 +03:00
Dmitry Jemerov
ca20d9c1b3 use custom exception class to represent the "no descriptor for declaration" case 2015-08-26 17:33:57 +02:00
Nikolay Krasko
a2a259552b Log isPhysical() for file 2015-08-26 13:17:02 +03:00
Nikolay Krasko
9dcd73418e Stop crashing in building report - diagnostic for EA-70372 2015-08-26 13:17:00 +03:00
Nikolay Krasko
b5b5305456 Diagnostics for Rewrite at slice RESOLUTION_SCOPE key: REFERENCE_EXPRESSION (EA-64051) 2015-08-26 13:16:58 +03:00
Natalia Ukhorskaya
576b4f445c Debugger: add tests for smart casted property 2015-08-26 12:16:08 +03:00
Natalia Ukhorskaya
19e8c9edb0 Debugger: Support parameters of inlined lambda in evaluate expression 2015-08-26 12:16:08 +03:00
Natalia Ukhorskaya
32bf7d9520 Debugger: quote localVariableName if needed 2015-08-26 12:16:07 +03:00
Natalia Ukhorskaya
06b13f1292 Debugger: get topmost element at offset as contextElement 2015-08-26 12:16:06 +03:00
Natalia Ukhorskaya
c6d29cc1d5 Debugger: support labels for non object references (primitive, array) 2015-08-26 12:16:05 +03:00
Natalia Ukhorskaya
35cb23ffbe Debugger: add tmp file to exception report 2015-08-26 12:16:04 +03:00
Natalia Ukhorskaya
73099c3a41 Minor: move to base class 2015-08-26 12:16:03 +03:00
Natalia Ukhorskaya
bd43dbc7f4 Minor: use property access syntax if possible 2015-08-26 12:16:02 +03:00
Natalia Ukhorskaya
d675c12a32 Minor: change method return type 2015-08-26 12:16:02 +03:00
Natalia Ukhorskaya
d46765d460 Completion in JetCodeFragment: optimize descriptors comparasion 2015-08-26 12:16:01 +03:00
Natalia Ukhorskaya
87735749ea Fix warnings 2015-08-26 12:16:00 +03:00
Stanislav Erokhin
abb18b7bb9 KT-8861 Package name vs property with wrong receiver
#KT-8861 Fixed
2015-08-25 20:43:52 +03:00
Valentin Kipyatkov
0883bfa615 Changes on code review 2015-08-25 18:56:45 +03:00
Valentin Kipyatkov
92f5ec2ce5 Overriding LookupElement.getPsiElement() for all our LookupElement's because some IDEA features may use it 2015-08-25 18:56:18 +03:00
Valentin Kipyatkov
9a641974f8 Dropped LocationWeigher because it was duplicated by proximity weigher (only preference of symbols from project sources was not duplicated but it's doubtful) 2015-08-25 18:56:18 +03:00
Valentin Kipyatkov
6c46e3ec02 Better test 2015-08-25 18:56:18 +03:00
Valentin Kipyatkov
fd34ff3239 Implemented own version of LookupElementProximityWeigher (the standard one checks getObject() instanceof PsiElement)
#KT-8842 Fixed
2015-08-25 18:56:18 +03:00
Valentin Kipyatkov
f86850061b Use original descriptor for statistics 2015-08-25 18:56:18 +03:00
Valentin Kipyatkov
dc875194eb Better Statistician for completion 2015-08-25 18:56:17 +03:00
Valentin Kipyatkov
4bbd1927a7 Fixed usage of deprecated method 2015-08-25 18:56:17 +03:00
Valentin Kipyatkov
d7bc7871c5 Preference of properties to functions made lower priority in completion 2015-08-25 18:56:17 +03:00
Valentin Kipyatkov
83feffec63 Shorter rendering in StatisticsInfo 2015-08-25 18:56:17 +03:00
Valentin Kipyatkov
628ce4ea32 Better sorting of variants in add import popup 2015-08-25 18:56:17 +03:00
Valentin Kipyatkov
5a4cd96c75 Fix in extractableAnalysisUtil.kt 2015-08-25 18:56:17 +03:00
Valentin Kipyatkov
0f332bd8b9 Refactored sorting in completion
Also changed semantics of DeclarationDescriptor.importableFqName - it now returns null when descriptor cannot be referenced by import + dropped DeclarationDescriptor.importableFqNameSafe
2015-08-25 18:56:16 +03:00
Valentin Kipyatkov
68c0c83879 Better sorting: current package is preferred 2015-08-25 18:56:16 +03:00
Valentin Kipyatkov
b4e71364a3 Super-naive implementation of CompletionStatistician 2015-08-25 18:56:16 +03:00
Valentin Kipyatkov
9837d383a9 Completion and add import popup to use same sorter
#KT-8842 In progress
2015-08-25 18:56:16 +03:00
Valentin Kipyatkov
adea67b219 KT-7790 Import popup should show the most preferable item in its text
#KT-7790 Fixed
2015-08-25 18:56:16 +03:00
Valentin Kipyatkov
32cecf5a4c KT-8828 Parameter name and type completion should not pop up when typing-in parameter name in template mode
#KT-8828 Fixed
2015-08-25 18:56:15 +03:00
Valentin Kipyatkov
9900506254 No repeating of completion auto-popup after Esc in all positions 2015-08-25 18:56:15 +03:00
Valentin Kipyatkov
a015c44a60 KT-8843 When typing in lambda parameters' names, smart completion kicks in and makes it impossible to type names
#KT-8843 Fixed
2015-08-25 18:56:15 +03:00
Valentin Kipyatkov
9b04afc278 Minor optimization 2015-08-25 18:56:15 +03:00
Valentin Kipyatkov
5fc6525db6 Completion to insert type arguments for a call when they are likely required 2015-08-25 18:56:15 +03:00
Dmitry Jemerov
4743a69d76 rename platformName annotation to jvmName 2015-08-25 15:40:46 +02:00
Zalim Bashorov
3465126bee Add test lookup tracking for local declarations 2015-08-24 19:50:10 +03:00
Zalim Bashorov
3b21d391c5 Add test for lookups to classifier members 2015-08-24 19:50:09 +03:00
Zalim Bashorov
bdd834604a Add lacation parameter to ModuleDescriptor.resolveTopLevelClass (in DescriptorUtils.kt) 2015-08-24 19:50:09 +03:00
Zalim Bashorov
eaacd46b4e Add location parameter to DescriptorUtils#getInnerClassByName 2015-08-24 19:50:08 +03:00
Zalim Bashorov
4dbc08635c Minor: inline last usages of deprecated JetScope::getFunctions(Name) and drop it 2015-08-24 19:50:08 +03:00
Zalim Bashorov
a395b8b4dd Minor: drop deprecated JetScope::getProperties which no longer have usages 2015-08-24 19:50:07 +03:00
Zalim Bashorov
024c2761c8 Ignore lookups to parent scope for find super members 2015-08-24 19:50:07 +03:00
Zalim Bashorov
2f13c89fd8 Ignore lookups when typing unqualified super 2015-08-24 19:50:06 +03:00
Zalim Bashorov
30d2d9624a Minor: add missed ignores 2015-08-24 19:50:06 +03:00
Zalim Bashorov
3c2762dd1d Don't track lookups for JetScope::getDescriptors (and JetScope::getAllDescriptors) 2015-08-24 19:50:05 +03:00
Zalim Bashorov
6a3200764f Don't try to record lookups which already tracked 2015-08-24 19:50:05 +03:00
Zalim Bashorov
cca57af401 Provide LookupLocation when resolve calls 2015-08-24 19:50:04 +03:00
Zalim Bashorov
45e6747061 Minor: use synthetic properties everywhere in CallableDescriptorCollectors.kt 2015-08-24 19:50:04 +03:00
Zalim Bashorov
556c755e83 Add test for lookups to top level declarations 2015-08-24 19:50:03 +03:00
Zalim Bashorov
0ba18ca8cd Track the top level declarations, note not usages
It'll be useful for more accurate tracking dependencies inside package.
2015-08-24 19:50:03 +03:00
Zalim Bashorov
673df1f085 No more record path to file which contains current scope in LookupTracker 2015-08-24 19:50:02 +03:00
Zalim Bashorov
7790c2fd71 Minor: ignore KDoc like comments which starts with /**
for example it can be used to mark lookups which we can't report yet
2015-08-24 19:50:02 +03:00
Zalim Bashorov
6bed076228 Minor: fix warnings in AbstractIncrementalJpsTest.kt
* used new property access syntax
* splitBy -> split
* used string template instead of concatenation
2015-08-24 19:50:02 +03:00
Zalim Bashorov
b32040f610 Store lookup info inside testData code instead of separate file 2015-08-24 19:50:01 +03:00
Dmitry Jemerov
704e72eee1 correcty find Java usages of static methods generated for companion object members annotated as jvmStatic
#KT-8902 Fixed
2015-08-24 18:12:13 +02:00
Dmitry Jemerov
24f45a382e ReferencesSearch finds references of data class component functions in Java code
#KT-8808 Fixed
2015-08-24 18:12:05 +02:00
Dmitry Jemerov
056d8dfd9f correcty index escaped identifiers
#KT-8846 Fixed
2015-08-24 15:47:28 +02:00
Dmitry Jemerov
d9a854608b test to verify that renaming fields of local objects works
#KT-6528 Fixed
2015-08-24 15:12:45 +02:00
Dmitry Jemerov
24ba5a46f1 use correct safe delete processor for members of local classes and objects
#KT-8894 Fixed
2015-08-24 15:12:45 +02:00
Nikolay Krasko
522a5ea0f2 Safe Delete does not warn about class literal - tests (KT-8919)
#KT-8919 In Progress
2015-08-24 15:50:20 +03:00
Dmitry Jemerov
b45af1d47a the source for a parameter of the generated copy() function is the corresponding constructor parameter
#KT-8698 Fixed
2015-08-24 12:20:40 +02:00
Natalia Ukhorskaya
351e1863fc J2K: Support for method references
#KT-8721 Fixed
2015-08-24 12:37:41 +03:00
Natalia Ukhorskaya
ddd7251fce J2K: Add RemoveRedundantSamConstructor postprocessing 2015-08-24 12:37:39 +03:00
Natalia Ukhorskaya
bf7f56d458 Redundant Sam Constructor inspection 2015-08-24 12:37:37 +03:00
Natalia Ukhorskaya
ccb4abee95 Refactor AbstractInspectionTest to allow java files 2015-08-24 12:37:35 +03:00
Natalia Ukhorskaya
ba48a5b7fc Formatter: space between type argument list and function literal argument 2015-08-24 12:37:33 +03:00
Natalia Ukhorskaya
03097d3453 J2K: Idea doesn't proposed to insert imports on copy-paste if explicit import was inserted
#KT-8738 Fixed
2015-08-24 12:37:31 +03:00
Natalia Ukhorskaya
2226ace683 Ddebugger: fix problem with imports in codeFragments when import is inserted during creation (ex. from variables view)
(cherry picked from commit a2322621cb48cd1dfa2227c1baeb3983c1580c54)
2015-08-24 10:39:05 +03:00
Dmitry Petrov
641a59dcf2 - Create independent instances of MandatoryMethodTrasformer.
- Properly encapsulate LabelNormalizationMethodTransformer state.
2015-08-24 09:52:29 +03:00
Alexander Udalov
36c88da93a Minor, fix deprecation warnings in android-compiler-plugin 2015-08-24 01:29:59 +03:00
Alexander Udalov
63831387cf Only catch exceptions originating from incorrect use in preloader 2015-08-24 01:29:59 +03:00
Alexander Udalov
aba6ab1299 Refactor command-line interface to kotlin-preloader.jar
Use reasonable defaults for the options: no time profiling, no instrumenters,
empty classpath, 4096 as the class number estimate. Replace 4096 in the
codebase with the constant field.

Keep the old interface intact until the build is bootstrapped and the new one
can be used in all compilation steps
2015-08-24 01:29:58 +03:00
Alexander Udalov
a592b42357 Refactor Preloader: simplify mode parsing, unify output 2015-08-24 01:29:58 +03:00
Alexander Udalov
7dcb690254 Additional tests on reflection calls 2015-08-24 01:29:58 +03:00
Alexander Udalov
ccb58d8601 Minor, add some tests on get/set/name/instanceof for properties w/o reflection 2015-08-24 01:29:58 +03:00
Alexander Udalov
9f7cb752db Minor, rename KCallableContainerImpl -> KDeclarationContainerImpl
Also rename DeclarationContainerImpl -> ClassBasedDeclarationContainer and make
non-public
2015-08-24 01:29:57 +03:00
Alexander Udalov
df76695e72 Somewhat improve 'incomplete hierarchy' diagnostic message 2015-08-24 01:29:57 +03:00
Alexander Udalov
9095fa2844 Make PropertyMetadataImpl a data class
To allow property delegates to use property metadata as a key in the hash map,
and to improve debugging experience
2015-08-24 01:29:57 +03:00
Pavel V. Talanov
ea292fa6d2 Remove some usages of JetElement.analyzeAndGetResult 2015-08-21 21:12:46 +03:00
Pavel V. Talanov
608345df7b Improve ResolutionFacade api: it stores moduleInfo and provides moduleDescriptor
Remove some redundant parameters passed along with ResolutionFacade
2015-08-21 21:11:59 +03:00
Yan Zhulanow
a802ab5300 Fix safe delete tests
Relevant intellij-community commit: b696a371747caa9a2be16c482df37e91936f86c6
2015-08-21 18:56:52 +03:00
Nikolay Krasko
230877c1a8 Update to idea 142.4083.2 2015-08-21 18:56:50 +03:00
Nikolay Krasko
90b67eea41 Fix test for kdoc - add processing of new node 2015-08-21 18:56:48 +03:00
Nikolay Krasko
9b5b5bb0ee Drop absent jdk annotation notifier 2015-08-21 18:56:45 +03:00
Dmitry Jemerov
341f09afd3 rename platformStatic to jvmStatic 2015-08-21 16:59:05 +02:00
Dmitry Jemerov
4053c19260 increase codecache size for tests run configuration 2015-08-21 12:59:42 +02:00
Dmitry Jemerov
301e79033d delete the UI for editing Kotlin signatures in Java files 2015-08-21 12:14:25 +02:00
Dmitry Jemerov
482406b0d9 remove descriptor field from LightClassDataForKotlinClass 2015-08-21 12:09:09 +02:00
Dmitry Jemerov
c00fbb236f don't perform full resolve and stub building for isInheritor() checks
#KT-8656 Fixed
2015-08-21 12:08:53 +02:00
Dmitry Jemerov
6c32f655f9 KotlinLightClassForExplicitDeclaration: cleanup 2015-08-21 12:08:52 +02:00
Dmitry Jemerov
f2ff752dd1 KotlinLightClassForExplicitDeclaration: J2K 2015-08-21 12:08:51 +02:00
Dmitry Jemerov
4b2a662eb3 KotlinLightClassForExplicitDeclaration: rename to .kt 2015-08-21 12:08:51 +02:00
Nikolay Krasko
e13d1d3e44 Workaround for exception from analyze (KT-8749) 2015-08-21 13:00:49 +03:00
Nikolay Krasko
5b3c05d039 Don't filter class files and jars from build script. Get a warning about their absence. 2015-08-20 18:48:38 +03:00
Nikolay Krasko
ffb9cb0ce0 Cache information about library in file user data (KT-8537)
KT-8537 Kotlin plugin is causing Intellij to freeze during Indexing

 #Fix KT-8537
2015-08-20 15:28:30 +03:00
Nikolay Krasko
0946e1b279 Store on local jar files to have valid timestamp 2015-08-20 15:28:29 +03:00
Nikolay Krasko
ee36de9602 Simplify jar-processor framework 2015-08-20 15:28:28 +03:00
Nikolay Krasko
3b14241224 Create background jar-processor that can store meta information for jars 2015-08-20 15:28:27 +03:00
Nikolay Krasko
e17908e5c6 Minor: rewrite with Kotlin stdlib 2015-08-20 15:28:26 +03:00
Alexey Sedunov
a085c93b5e Light Classes: Fix computation of base type in anonymous light class 2015-08-19 23:30:13 +03:00
Alexey Sedunov
d48851ba63 Create From Usage: Fix ClassCastException on local property with delegate
#EA-69707 Fixed
2015-08-19 23:30:10 +03:00
Alexey Sedunov
85f85e85b4 Create From Usage: Quote declaration name if it's not a valid identifier
#EA-70291 Fixed
2015-08-19 23:30:07 +03:00
Alexey Sedunov
d18a9f6d8a Create From Usage: Fix StackOverflowException on recursive type parameter bounds
#EA-69240 Fixed
2015-08-19 23:29:55 +03:00
Alexey Sedunov
69218e2647 Find Usages: Fix NPE on constructor with missing name
#EA-69907 Fixed
2015-08-19 23:26:17 +03:00
Alexey Sedunov
06cca689fc Call Hierarchy: Forbid interfaces
#EA-64406 Fixed
2015-08-19 23:26:15 +03:00
Pavel V. Talanov
2432571a8c Get SmartCastManager as a service in ReferenceVariantsHelper 2015-08-19 21:18:47 +03:00
Pavel V. Talanov
6c48c29bf9 Make AnalyzerFacade an abstract class instead of interface
Seems to workaround some compiler bug
2015-08-19 21:18:46 +03:00
Pavel V. Talanov
72710c0318 Fix usages of AnalyzerUtil
Sadly contains some changes that hard to merge into appropriate commits introduced after rebasing repeatedly
2015-08-19 21:18:45 +03:00
Pavel V. Talanov
5cc39e3fb2 GlobalJavaResolverContext -> JavaResolverComponents 2015-08-19 21:18:45 +03:00
Pavel V. Talanov
0101f30261 Drop containerForMacros 2015-08-19 21:18:44 +03:00
Pavel V. Talanov
fae6968dda UsePropertyAccessSyntaxIntention: drop usage of containerForMacros 2015-08-19 21:18:44 +03:00
Pavel V. Talanov
ea8c17adeb Pass ResolutionFacade into ReferenceVariantsHelper and ShadowedDeclarationsFilter 2015-08-19 21:18:43 +03:00
Pavel V. Talanov
d7c1798ee6 Move ResolutionFacade to ide-common module 2015-08-19 21:18:42 +03:00
Pavel V. Talanov
dd0823010f Refactor: Make ResolutionFacade.getFileTopLevelScope an utility 2015-08-19 21:18:42 +03:00
Pavel V. Talanov
0d78c8acb5 Refactor: Make ResolutionFacade.resolveImportReference an utility 2015-08-19 21:18:41 +03:00
Pavel V. Talanov
06b96c2b12 Drop CacheExtension 2015-08-19 21:18:40 +03:00
Pavel V. Talanov
e041042328 Minor: move getResolveScope out of ResolutionFacade 2015-08-19 21:18:40 +03:00
Pavel V. Talanov
d09f4a4dbb Merge ResolutionFacadeImpl and KotlinResolveCache, rewrite JavaResolveExtension 2015-08-19 21:18:39 +03:00
Pavel V. Talanov
94431bc3fa Move ResolutionFacadeImpl to a separate file 2015-08-19 21:18:39 +03:00
Pavel V. Talanov
e88ea1f807 Improve naming 2015-08-19 21:18:38 +03:00
Pavel V. Talanov
1a3886f9b7 Inject TypeResolver into HeuristicSignatures 2015-08-19 21:18:37 +03:00
Pavel V. Talanov
f98cb74d53 Make HeuristicSignatures an IDE service 2015-08-19 21:18:37 +03:00
Pavel V. Talanov
87f826d1b8 Refactor: IterableTypesDetector into an IDE component 2015-08-19 21:18:36 +03:00
Pavel V. Talanov
5836fd39e4 Refactor: Move AnalyzerUtil to "idea-analysis" module and rewrite using new api 2015-08-19 21:18:36 +03:00
Pavel V. Talanov
6802973743 Refactor: merge duplicated code for code fragment analysis
Introduce CodeFragmentAnalyzer
2015-08-19 21:18:35 +03:00
Pavel V. Talanov
7130e9f881 "container" module exports "javax.inject" dependency 2015-08-19 21:18:34 +03:00
Pavel V. Talanov
f38abd5258 Refactor Descriptor renderer test to avoid creating ResolveElementCache explicitly 2015-08-19 21:18:34 +03:00
Pavel V. Talanov
ddbf4c18d3 Minor: inject targetPlatform into ResolveElementCache 2015-08-19 21:18:33 +03:00
Pavel V. Talanov
7cbac51018 Refactor: merge ElementResolver into ResolveElementCache
This is a bit questionable since there are plans to use it in eclipse plugin, but we do it for now
It's possible that we can come up with a better abstraction later
2015-08-19 21:18:32 +03:00
Pavel V. Talanov
0a40b375a1 Minor: get SmartCastManager as a service in CompletionSession and KotlinIndicesHelper 2015-08-19 21:18:32 +03:00
Pavel V. Talanov
2b9d49e787 Remove a couple of usages of createContainerForMacros 2015-08-19 21:18:31 +03:00
Pavel V. Talanov
0c2650c86c Provide API to get frontend services from plugin code via resoltion facade
API to create ide-side services using frontend services (for now "ide services" cannot be injected into other ide services)
2015-08-19 21:18:31 +03:00
Pavel V. Talanov
84ebc7a0f8 Rename SmartCastUtils -> SmartCastManager and make it a component 2015-08-19 21:18:30 +03:00
Pavel V. Talanov
da025475a8 Make TypeIntersector a component and inject it into some points of usage 2015-08-19 21:18:29 +03:00
Pavel V. Talanov
f393ce598d Extract TypeIntersector from TypeUtils 2015-08-19 21:18:29 +03:00
Pavel V. Talanov
52bc84cb5f Introduce LocalDescriptorResolver which handles differences in local declaration resolution between compiler and ide environments 2015-08-19 21:18:28 +03:00
Pavel V. Talanov
2ef5e03f27 Introduce TargetEnvironment and CompilerEnvironment 2015-08-19 21:18:27 +03:00
Valentin Kipyatkov
b3adf27b81 Don't invoke applicabilityRange twice for each highlighting 2015-08-19 20:46:38 +03:00
Valentin Kipyatkov
4bf20d747a Changes on code review 2015-08-19 20:46:38 +03:00
Valentin Kipyatkov
4876668716 Correct read/write access detection in case of plusAssign etc 2015-08-19 20:46:38 +03:00
Valentin Kipyatkov
97bf6f820a Fix in read/write detection 2015-08-19 20:46:38 +03:00
Valentin Kipyatkov
5e97387e8d Public utility to detect read/write access for an expression
Implemented ReadWriteAccessDetector which gives read/write access in Highlight Usages and Find Usages
+ More correct UsageType detection
2015-08-19 20:46:37 +03:00
Valentin Kipyatkov
1fd0578b9e Fixed deprecated symbol usage fix for functions with optional parameters from libraries
#KT-8525 Fixed
2015-08-19 18:06:31 +03:00
Dmitry Jemerov
d53b990655 add missing read actions for Find Usages (EA-66822) 2015-08-19 16:58:10 +02:00
Valentin Kipyatkov
30a9a8787e Optimize imports to use "packages to import with *" setting 2015-08-19 17:27:47 +03:00
Valentin Kipyatkov
9b4e3b15c4 KT-8822 Override Members: do not show private members from java classes
#KT-8822 Fixed
2015-08-19 17:26:44 +03:00
Michael Nedzelsky
f42a589ddc enable testKotlinOnlyDaemonMemory 2015-08-19 09:02:07 +03:00
Stanislav Erokhin
ec43f49ab4 Fixed completion for extension function after removing members for implicit receiver from scope. 2015-08-18 21:28:28 +03:00
Stanislav Erokhin
a1274f91ba Minor. Inline NO_RECEIVER_PARAMETER = null 2015-08-18 21:28:06 +03:00
Stanislav Erokhin
2ee8f1c454 Change outer scope for nested class and object -- removed implicit outer class receiver.
#KT-5362 Fixed
#KT-8814 Fixed
2015-08-18 21:26:42 +03:00
Stanislav Erokhin
b83b298f68 Minor. move static scope from ClassResolutionScopesSupport to LazyClassDescriptor 2015-08-18 21:26:42 +03:00
Stanislav Erokhin
17d8424cee Remove member scope from scopeForMemberDeclarationResolution 2015-08-18 21:26:41 +03:00
Stanislav Erokhin
0d8ae8f949 Use member scope for declaration instead resolution scope in LazyDeclarationResolver 2015-08-18 21:26:41 +03:00
Stanislav Erokhin
d762d75942 Created LexicalScope and FileScope. 2015-08-18 21:26:35 +03:00
Stanislav Erokhin
f5c6e8cb77 Minor. Removed unused code. 2015-08-18 21:26:34 +03:00
Valentin Kipyatkov
947db74b62 Minor 2015-08-18 18:50:00 +03:00
Valentin Kipyatkov
275299f5e2 Merged 2 tests 2015-08-18 18:50:00 +03:00
Valentin Kipyatkov
ba8c2f1084 Refactored RemoveModifierFix + some psi API refactoring
#EA-69237 Fixed
2015-08-18 18:50:00 +03:00
Valentin Kipyatkov
fd517d41d1 Converted to Kotlin 2015-08-18 18:50:00 +03:00
Valentin Kipyatkov
aaaf033338 Added diagnostic for EA-69526 - assert: JavaToKotlinConverter.checkReferenceValid 2015-08-18 18:50:00 +03:00
Valentin Kipyatkov
fdf7e483b0 Added diagnostic for EA-70090 - assert: PsiUtilPackage$psiUtils$bbf.getElementTextWithContext 2015-08-18 18:50:00 +03:00
Valentin Kipyatkov
469c5a24de Rewritten ReplaceInfixCallFix
#EA-70093 Fixed
2015-08-18 18:49:59 +03:00
Valentin Kipyatkov
81acf72d0b No i18n 2015-08-18 18:49:59 +03:00
Valentin Kipyatkov
b6311d7be7 Converted to Kotlin 2015-08-18 18:49:59 +03:00
Valentin Kipyatkov
4ba1f423e1 EA-70229 - IOOBE (KotlinFunctionInsertHandler): ImmutableText.findLeaf
#EA-70229 Fixed
2015-08-18 18:49:59 +03:00
Valentin Kipyatkov
b7c1bed809 EA-70292 - KNPE: BindingContext.TYPE_RESOLUTION_SCOPE returns null
#EA-70292 Fixed
2015-08-18 18:49:59 +03:00
Valentin Kipyatkov
b715e2e9f5 KT-8688 Classes in Go To class list are misaligned with Java neighbors
#KT-8688 Fixed
2015-08-18 18:49:58 +03:00
Valentin Kipyatkov
93619ddc00 Likely fixed EA-70294 - Uncommited document on applying intention
#EA-70294 Fixed
2015-08-18 18:49:58 +03:00
Valentin Kipyatkov
a7d4f600b7 Added better diagnostic for EA-70945 2015-08-18 18:49:58 +03:00
Valentin Kipyatkov
da16a4017e Hopefully fixed EA-71700 and EA-71699
#EA-71700 Fixed
 #EA-71699 Fixed
2015-08-18 18:49:58 +03:00
Valentin Kipyatkov
cd8fa97a20 Hopefully fixed EA-71565 and similar problems
#EA-71565 Fixed
2015-08-18 18:49:57 +03:00
Valentin Kipyatkov
6d163a7a8c Used more specific API 2015-08-18 15:35:59 +03:00
Valentin Kipyatkov
ad5bd36e65 Added parameter "isStatement" for analyzeInContext and used it in UsePropertyAccessSyntaxIntention 2015-08-18 15:35:59 +03:00
Zalim Bashorov
16e1138374 LookupLocation.NO_LOCATION -> NoLookupLocation.UNSORTED 2015-08-18 12:34:20 +03:00
Zalim Bashorov
6c28dbd407 LookupLocation.NO_LOCATION_FROM_BACKEND -> NoLookupLocation.FROM_BACKEND 2015-08-18 12:34:19 +03:00
Zalim Bashorov
8e7786817d LookupLocation.NO_LOCATION_FROM_TEST -> NoLookupLocation.FROM_TEST 2015-08-18 12:34:19 +03:00
Zalim Bashorov
595975a66e LookupLocation.NO_LOCATION_FROM_IDE -> NoLookupLocation.FROM_IDE 2015-08-18 12:34:18 +03:00
Zalim Bashorov
bcacef7bb9 Move all NoLookupLocation instances to the one place to make them more discoverable and close constructor 2015-08-18 12:34:17 +03:00
Zalim Bashorov
69e0f23db9 Classify Location.NO_LOCATION usages 2015-08-18 12:21:31 +03:00
Zalim Bashorov
0ca9c6fd40 Introduce NoLookupLocation and some new constants to classify LookupLocation.NO_LOCATION usages 2015-08-18 12:21:30 +03:00
Zalim Bashorov
e692b7b9c4 Minor: no more use default value for location parameter in JetScope members
Temporary introduced overloads which emulated default value behavior
2015-08-18 12:21:30 +03:00
Zalim Bashorov
2df55b5694 Minor: remove obsolete settings 2015-08-18 12:21:29 +03:00
Alexey Sedunov
982655f553 Pull Up: Resolve target light class separately for each Java field usage as it may change along the way 2015-08-17 20:28:18 +03:00
Alexey Sedunov
46fe7dc7a1 Move Directory: Support Kotlin files
#KT-8350 Fixed
 #KT-8351 Fixed
2015-08-17 20:28:17 +03:00
Alexey Sedunov
feacefe50a Project View: Fix "Show Members" behavior for Kotlin files
#KT-8409 Fixed
2015-08-17 20:28:16 +03:00
Alexey Sedunov
3edc903daf Move Declarations: Support multiple files
#KT-8431 Fixed
2015-08-17 20:28:14 +03:00
Alexey Sedunov
74ef93fd0c Move Declarations: Do not show "Package doesn't exist" message twice 2015-08-17 20:28:13 +03:00
Alexey Sedunov
3134e58251 J2K Converter: Add copy/paste tests for references in extends/implements clauses 2015-08-17 20:28:11 +03:00
Alexey Sedunov
96f255225b Push Down: Conflict analysis 2015-08-17 20:28:10 +03:00
Alexey Sedunov
a66ef47887 Push Down: Initial Support 2015-08-17 20:28:08 +03:00
Alexey Sedunov
5168ccc159 Add/Remove Modifier: Do not add modifier if it's already present in the modifier list 2015-08-17 20:28:05 +03:00
Alexey Sedunov
969b90d301 Move Declarations: Use custom hashing strategy to account for different instances of light elements with common origin 2015-08-17 20:28:04 +03:00
Alexey Sedunov
03f08326fa Move File: Process external and internal usages after all package directives are updated 2015-08-17 20:28:03 +03:00
Valentin Kipyatkov
b6c94a9e68 ResolveElementCache works correctly for non-physical files 2015-08-17 14:24:07 +03:00
Evgeny Gerashchenko
4b6991603f Minor. Split test file into two. 2015-08-15 12:29:46 +02:00
Evgeny Gerashchenko
799368386b KT-6877 Wrong unused function inspection on anonymous object member
#KT-6877 fixed
2015-08-15 12:29:46 +02:00
Evgeny Gerashchenko
da4be8a0f5 KT-7484 Companion object is marked unused if it's only usages are statically imported from Java
#KT-7484 fixed
2015-08-15 12:29:44 +02:00
Evgeny Gerashchenko
3a4010503e Minor. Renamed test data dir. 2015-08-15 12:29:43 +02:00
Evgeny Gerashchenko
fe1d4e38b3 KT-8273 Don't mark serialVersionUID as unused
#KT-8273 fixed
2015-08-15 12:29:42 +02:00
Evgeny Gerashchenko
50dbf080f7 Test for KT-2082 Missing 'Unused expression' warning
#KT-2082 obsolete
2015-08-15 12:29:41 +02:00
Evgeny Gerashchenko
1cf433909b Test for KT-7134 Command line entry point (main function is highlighted as unused)
#KT-7134 obsolete
2015-08-15 12:29:12 +02:00
Natalia Ukhorskaya
e3c5e2eca2 Update to IDEA 142.3926.4 2015-08-15 01:40:39 +03:00
Natalia Ukhorskaya
9b0cfd4027 Debugger tests: migrate to new API
(cherry picked from commit 430c718)
2015-08-15 01:40:39 +03:00
Natalia Ukhorskaya
be5c1d0a44 Debugger tests: changes in testData
(cherry picked from commit 0e4b133)
2015-08-15 01:40:38 +03:00
Sergey Mashkov
77a8eddb2a Selenium tests module pom.xml: module shouldn't depend to kotlin-js-library as it makes IDEA
detect it as a JavaScript module
2015-08-14 18:51:52 +03:00
Sergey Mashkov
3a323d562d Selenium longer per-test timeout 2015-08-14 18:51:50 +03:00
Valentin Kipyatkov
c3ccd6da57 Renamed test data folder 2015-08-14 18:10:41 +03:00
Valentin Kipyatkov
b6cf39981f SAM-adapters are sorted as non-extensions in completion and with correct boldness + no parameter names when from compiled 2015-08-14 18:10:41 +03:00
Valentin Kipyatkov
13fc12bbae Moving test data into subfolders 2015-08-14 18:10:40 +03:00
Valentin Kipyatkov
9546e46ae0 Moving test data into java-specific folder 2015-08-14 18:10:40 +03:00
Valentin Kipyatkov
ec7c55c9be Synthetic java properties are not always bold in completion and are not sorted as extensions 2015-08-14 18:10:39 +03:00
Valentin Kipyatkov
000d2f0cd1 Lower priority for extensions on own type parameters 2015-08-14 17:38:38 +03:00
Valentin Kipyatkov
9e26d0eacf Graying members from smart cast receiver types that require explicit receiver cast
+ changed immediate member criteria (override member is not counted as immediate anymore)
+ fixed a bug in graying members
2015-08-14 17:38:29 +03:00
Valentin Kipyatkov
b21226ac1c More correct calculation of smart casts in smart completion 2015-08-14 17:38:29 +03:00
Valentin Kipyatkov
f3e7560593 Enabled test 2015-08-14 17:38:29 +03:00
Valentin Kipyatkov
7b149c10c1 UsePropertyAccessSyntaxIntention: handled case when property type is more specific 2015-08-13 17:29:03 +03:00
Valentin Kipyatkov
6fcb75cfb5 One more test added 2015-08-13 17:29:03 +03:00
Valentin Kipyatkov
1fd4d4fe11 More efficient and correct implementation of conflicts checking in UsePropertyAccessSyntaxIntention 2015-08-13 17:29:02 +03:00
Valentin Kipyatkov
a5306d9e4b Minor optimization 2015-08-13 17:29:02 +03:00
Valentin Kipyatkov
0d27e7a259 Faster replacement of get/set to synthetic extensions in converter - don't search for extension property again 2015-08-13 17:29:01 +03:00
Valentin Kipyatkov
21639c4785 J2k post-processings based on diagnostics are included into the common scheme 2015-08-13 17:29:01 +03:00
Valentin Kipyatkov
e66d0f71ac Implemented more general scheme of post-processing with intentions in J2K + added replacement of get/set with property access there 2015-08-13 17:29:00 +03:00
Valentin Kipyatkov
671b9f5d56 Finally fixed KT-8751 2015-08-13 15:02:52 +03:00
Sergey Mashkov
2f7193064f #KT-8708 migrate tests to new trimIdent() and prependIndent 2015-08-13 14:40:07 +03:00
Sergey Mashkov
84ef068f5d #KT-8708 refactor trimIndent, trimMargin, replaceIndent, replaceIndentByMargin, prependIndent 2015-08-12 18:45:10 +03:00
Sergey Mashkov
b146b0eda9 Remove deprecated function usage 2015-08-12 18:45:10 +03:00
Sergey Mashkov
c0078a53e6 Temporary move trimIndent implementations to tests as private members to avoid resolution ambiguity 2015-08-12 18:45:10 +03:00
Sergey Mashkov
7afa40590d KT-8708 Function to strip leading whitespace (stripMargin, trimMargin, stripIndent?) 2015-08-12 18:45:10 +03:00
Valentin Kipyatkov
468919f5d9 Fixed codegen crash on use of protected synthetic extension property 2015-08-12 18:17:09 +03:00
ligee
d75bece6d0 Minor: moving a pom autogenerated by maven shade plugin to ignored targets dir 2015-08-12 17:03:09 +02:00
Ilya Ryzhenkov
a717afd9db Fix NPE in checkLValue when selector is absent. Add test for incomplete syntax. 2015-08-12 17:08:16 +03:00
Valentin Kipyatkov
8104a78746 Fixed completion for type parameters broken recently 2015-08-12 13:34:28 +03:00
Dmitry Petrov
b59bf6227f unqualified super: should be able to invoke methods of Any without extra hassle
when Any is an implicit immediate superclass
2015-08-12 12:14:14 +03:00
Ilya Chernikov
3b03cfaf4f Merge pull request #739 from JetBrains/rr/gradle-plugin-classloading-M13-2
merging gradle plugin classloading changes
2015-08-11 17:26:11 +02:00
ligee
0c84648b6a Minor: style fixes after review 2015-08-11 17:22:50 +02:00
ligee
961905a8da Disabling gradle daemon test as unsafe, adding gradle wrapper 2.4, fixing maven build test
(cherry picked after edit from commit 703d71d)
2015-08-11 13:19:03 +02:00
ligee
43aaacaa06 Fixing source build script search, attempt to fix KT-8705
(cherry picked from commit 89c5885)
2015-08-11 13:18:19 +02:00
ligee
05e8a080a9 Refactoring test base class to support gradle options and daemon stopping, implementing daemon build test with memory check
(cherry picked from commit a28ce9e)
2015-08-11 13:17:28 +02:00
ligee
97bc3005f4 Some more minor fixes after review
(cherry picked from commit 1ffdeff)
2015-08-11 13:16:08 +02:00
ligee
c2c1fb2d0a moving embeddable compiler jar creation to libraries/maven, using maven-shade-plugin instead of jarjar; configuring more relocations of 3-party libs
(cherry picked from commit c905770)
2015-08-11 13:16:07 +02:00
ligee
5b9094301c Fixing minor issues after review
(cherry picked from commit 928769e)
2015-08-11 13:16:07 +02:00
ligee
0a9f98545b Dropping custom classloading again, now without creating a transparent one, restoring cleanup for gradle <2.4 to minimize leaks under daemon, adding diagnostics
(cherry picked from commit a3b7be4)
2015-08-11 13:16:00 +02:00
ligee
3b322520bd Using isolated classloader again, but as a singleton; regular compiler jar instead of embeddable; more logging
(cherry picked from commit 6801d8a)
2015-08-11 13:15:24 +02:00
ligee
ee73373441 Implementing simple classloading for plugin core, since embeddable compiler allows it 2015-08-11 13:15:23 +02:00
ligee
d08570b8a8 Adding new target - embeddable compiler (after jarjar), using it in the gradle plugin
(cherry picked from commit bf4b26f)
2015-08-11 13:15:23 +02:00
Valentin Kipyatkov
41f80cde9e Checked that "KT-6898 References to type arguments of unresolved class name are not resolved" has been fixed 2015-08-11 13:51:29 +03:00
Valentin Kipyatkov
ae552f49a7 Added test for KT-8471 2015-08-11 13:35:32 +03:00
Valentin Kipyatkov
209281fbab More correct suppression of error 2015-08-11 13:21:57 +03:00
Valentin Kipyatkov
bce691bf8c Moved resolve of type arguments into other place 2015-08-11 13:21:57 +03:00
Valentin Kipyatkov
e3bca3010c Fixed infinite recursion 2015-08-11 13:21:57 +03:00
Valentin Kipyatkov
7f42c8b482 No report of wrong class literal for unresolved 2015-08-11 13:21:57 +03:00
Valentin Kipyatkov
ceae7eda39 Fixed test data 2015-08-11 13:21:56 +03:00
Valentin Kipyatkov
98c970d394 Fixed resolving class name before dot and nothing else 2015-08-11 13:21:56 +03:00
Valentin Kipyatkov
8b749ee76d KT-6891 Type argument of generic type before dot is not resolved
KT-7373 Type parameter names are not suggested
KT-6838 Class declared in same file is not suggested in completion

 #KT-6891 Fixed
 #KT-7373 Fixed
 #KT-6838 Fixed
2015-08-11 13:21:56 +03:00
Valentin Kipyatkov
f658cce1f1 KT-8176 References to type arguments are not resolved when number of them does not match type parameters
KT-8078 FQ-name inserted on class name completion in type arguments

 #KT-8176 Fixed
 #KT-8078 Fixed
2015-08-11 13:21:56 +03:00
Mikhail Glukhikh
de78ab6fe6 Some psi factory functions are dropped 2015-08-11 10:38:23 +03:00
Mikhail Glukhikh
adf43519d6 Code mover fix: correct commas / semicolons after enum entries, relevant test fixes, extra tests 2015-08-11 10:38:20 +03:00
Mikhail Glukhikh
3f14e74b08 Drop old enum syntax. Comma / semicolon are now a syntactic part of enum entry.
Comma must present now between enum entries, semicolon between last entry & first member, constructor calls must be without colons / specifiers.
A swarm of tests fixed accordingly.
2015-08-11 10:38:10 +03:00
Mikhail Glukhikh
e5ab7de870 Enum entry stub name fixed 2015-08-11 10:38:02 +03:00
Mikhail Glukhikh
3793d99b00 Decompiler fix: enum entries are now separated by , and have ; at the end, relevant tests fixed 2015-08-11 10:37:48 +03:00
Ilya Gorbunov
15d69499d0 Stop matching after the end of the input sequence was reached.
#KT-8763 Fixed
2015-08-11 05:11:32 +03:00
Michael Nedzelsky
c74577951e minor fix in idea/testData: ImplementFunctionType.kt -> implementFunctionType.kt 2015-08-11 04:23:18 +03:00
Michael Nedzelsky
6a1eb91e18 temporarily adjust timeout limit for testCancelLongKotlinCompilation 2015-08-11 02:24:34 +03:00
Valentin Kipyatkov
377201bbcd KT-8716 Exception on attempt to implement function
#KT-8716 Fixed
2015-08-10 20:29:51 +03:00
Valentin Kipyatkov
c943ec104d KT-8718 KNPE at PropertyUsagesSearchHelper.makeItemList() on erasing parameter name
#KT-8718 Fixed
2015-08-10 20:29:51 +03:00
Valentin Kipyatkov
1cfdbdea82 KT-8751 Assertion in HeuriticSignatures
#KT-8751 Fixed
2015-08-10 20:28:52 +03:00
Zalim Bashorov
bfa44af76b Make SeleniumQUnit more robust by using per test timeout instead of per all tests. 2015-08-10 17:57:53 +03:00
Valentin Kipyatkov
98ac13fd59 KT-8743 Propose class names for extension receiver in completion after 'fun' if a capital letter was entered
#KT-8743 Fixed
2015-08-10 17:49:36 +03:00
Valentin Kipyatkov
cafb5ac10a Fixed parameter name&type completion for type parameters 2015-08-10 17:49:36 +03:00
Valentin Kipyatkov
df32dcac39 Added smart priorities for true, false and null into basic completion 2015-08-10 17:49:36 +03:00
Valentin Kipyatkov
c05d7d51ec "true" and "false" in smart completion when Boolean? expected 2015-08-10 17:49:36 +03:00
Valentin Kipyatkov
cd6d8ffa98 Basic completion prefers right type in lambda value 2015-08-10 17:49:36 +03:00
Valentin Kipyatkov
96109230eb Fixed crash on runtime 2015-08-10 17:49:35 +03:00
Valentin Kipyatkov
200c99e722 Reordered methods + minor 2015-08-10 17:49:35 +03:00
Valentin Kipyatkov
7016a087c3 Refactoring 2015-08-10 17:49:35 +03:00
Valentin Kipyatkov
2728047acd No useless null in return value of ExpectedInfos.calculate 2015-08-10 17:49:35 +03:00
Valentin Kipyatkov
e6f5cefce3 Basic completion shows items from smart completion after "as" + do not insert any tail in basic completion 2015-08-10 17:49:35 +03:00
Valentin Kipyatkov
be0a0e4401 Items filtered out from smart completion take lower priority in ordinary one + lower priority for Enum.valueOf 2015-08-10 17:49:35 +03:00
Valentin Kipyatkov
2a8dcabbce Filtering of smart completion items in ordinary completion 2015-08-10 17:49:34 +03:00
Valentin Kipyatkov
af2b6588c0 Ordinary completion includes some items from smart completion + changed priority for multi-args item in smart completion
#KT-8580 Fixed
2015-08-10 17:49:34 +03:00
Valentin Kipyatkov
73b98aba17 Moving logic into ExpectedInfos 2015-08-10 17:49:34 +03:00
Valentin Kipyatkov
c76f6333a0 Minor 2015-08-10 17:49:34 +03:00
Valentin Kipyatkov
b475860327 Moved classes 2015-08-10 17:49:34 +03:00
Valentin Kipyatkov
9497143b26 Smart completion works in initializer of variable with unknown type (the same as ordinary completion)
#KT-8691 Fixed
2015-08-10 17:49:34 +03:00
Valentin Kipyatkov
22e79d89f4 Completion sorts items by name similarity in intializer of variable with no explicit type 2015-08-10 17:49:33 +03:00
Valentin Kipyatkov
9cba912fe5 Ordinary completion prefers item matching expected name 2015-08-10 17:49:33 +03:00
Valentin Kipyatkov
07311234db "this" with matching type are preferred in ordinary completion 2015-08-10 17:49:33 +03:00
Valentin Kipyatkov
2b61f4c552 KT-4915 Smart completion should work for auto-casted 'this'
#KT-4915 Fixed
2015-08-10 17:49:33 +03:00
Valentin Kipyatkov
44d277af87 Completion prefers items matching expected type(s) 2015-08-10 17:49:33 +03:00
Valentin Kipyatkov
99f604f1c3 Refactored smart completion so that completion in for-loop range and after "in" are covered by ExpectedInfo's 2015-08-10 17:48:53 +03:00
Mikhail Glukhikh
89e0d310e3 Deprecated enum syntax removed: idea completion tests 2015-08-10 16:24:19 +03:00
Mikhail Glukhikh
022e7d1169 Deprecated enum syntax removed: most idea tests 2015-08-10 16:24:16 +03:00
Mikhail Glukhikh
b2653ad1e9 Deprecated enum syntax removed: most compiler tests 2015-08-10 16:24:12 +03:00
Mikhail Glukhikh
90f94b47db Deprecated enum syntax removed: JS plugin tests 2015-08-10 16:24:08 +03:00
Mikhail Glukhikh
b87bbfc3e0 Deprecated enum syntax removed: change signature tests 2015-08-10 16:24:04 +03:00
Mikhail Glukhikh
076ac4f5ee Create class from usage fix: enum entries are created with new constructor syntax 2015-08-10 16:24:01 +03:00
Mikhail Glukhikh
fe716d7e56 Change signature fix: correct parameter add / remove from enum constructor calls, relevant test fixes 2015-08-10 16:23:57 +03:00
Mikhail Glukhikh
8405a9a021 Enum syntax: source code fixed 2015-08-10 16:23:53 +03:00
Nikolay Krasko
0ccdf1d43b J2K: JetClassFileDecompiler.java converter 2015-08-10 13:07:42 +03:00
Nikolay Krasko
99b70b49c4 J2K: JetClassFileDecompiler.java file rename 2015-08-10 13:07:39 +03:00
Nikolay Krasko
99444c4eea Update to 142.3728.3 2015-08-10 13:07:37 +03:00
Nikolay Krasko
0b35aa69a3 Update since to 142.3553.1 2015-08-10 13:07:35 +03:00
Dmitry Jemerov
e7044f33ef Merge pull request #736 from jsyeo/fix-broken-link
Fix broken link in README.md
2015-08-09 15:36:34 +02:00
Jason Yeo
089a4e8779 Fix broken link in README.md 2015-08-09 07:21:01 +08:00
Zalim Bashorov
7e250ab2ca Add test infrastructure to check the tracking lookups
Added simple test to verify infrastructure.
2015-08-08 02:08:19 +03:00
Zalim Bashorov
36f69d9fd6 Minor: move some properties of AbstractIncrementalJpsTest to constructor 2015-08-08 02:08:19 +03:00
Zalim Bashorov
5017153c72 Provide LookupLocation when lookup simple name 2015-08-08 02:08:18 +03:00
Zalim Bashorov
ca4f975451 Track lookups to package and class member scopes 2015-08-08 02:08:17 +03:00
Zalim Bashorov
7cd678e03b Add ability to provide custom LookupTracker from JPS 2015-08-08 02:08:17 +03:00
Zalim Bashorov
e1ed5667d4 Add API to record lookups and introduce KotlinLookupLocation to store the processing JetElement 2015-08-08 02:08:16 +03:00
Zalim Bashorov
0978e9f169 Minor: move LookupLocation to org.jetbrains.kotlin.incremental.components 2015-08-08 02:08:16 +03:00
Zalim Bashorov
2aa4c383cd UsageLocation -> LookupLocation 2015-08-08 02:08:15 +03:00
Zalim Bashorov
96696c6846 UsageCollector -> LookupTracker 2015-08-08 02:08:14 +03:00
Alexey Sedunov
7125989c69 Pull Up: Java -> Kotlin interoperability
#KT-5803 Fixed
2015-08-07 23:30:12 +03:00
Alexey Sedunov
556285f2c7 PSI: Added addAnnotationEntry() function 2015-08-07 23:30:10 +03:00
Alexey Sedunov
e331f13a32 J2K Converter: Support class references as top-level elements 2015-08-07 23:30:09 +03:00
Alexey Sedunov
a9783ffe81 Pull Up: Kotlin -> Java interoperability 2015-08-07 23:30:08 +03:00
Alexey Sedunov
ffc56a7c31 Pull Up: Move Kotlin -> Kotlin tests to separate directory 2015-08-07 23:30:06 +03:00
Alexey Sedunov
a695202846 Pull Up: Minor: Use property access syntax 2015-08-07 23:30:05 +03:00
Alexey Sedunov
c4ec694c9f Minor: Move class to proper package 2015-08-07 23:30:04 +03:00
Alexey Sedunov
6e142d3f62 Create From Usage: Allow extension properties on Java interfaces 2015-08-07 23:30:02 +03:00
Alexander Udalov
74760acf66 Parameter names of Java methods: store enum field instead of two booleans 2015-08-07 23:01:27 +03:00
Alexander Udalov
d7b1e5d7a8 Improve toReadOnlyList(), consider the case when size = 1 2015-08-07 23:01:26 +03:00
Alexander Udalov
182e2ebbab Avoid creating empty hash maps in DataFlowInfoForArgumentsImpl 2015-08-07 23:01:25 +03:00
Alexander Udalov
fd006c521f Add capacities to some ArrayList instances in project
The changed lists were visible in the profiler memory snapshot. It's unclear
what this will save, but each of these lists was retaining at least several
megabytes of memory
2015-08-07 23:01:24 +03:00
Alexander Udalov
dce99e2fef Get rid of LinkedHashSet in some places in favor of ArrayList 2015-08-07 23:01:23 +03:00
Alexander Udalov
f3857cbb89 Change overriddenDescriptors' type from Set to Collection
So that the easiest way of constructing a HashSet in the implementation will be
not the only possible way to implement getOverriddenDescriptors(). If there's
not too many overridden descriptors, an implementation may decide to return a
small list for example instead
2015-08-07 23:01:23 +03:00
Alexander Udalov
d328727cea Don't store overridden descriptors in ValueParameterDescriptor
Compute it on each access instead, because it's too costly and not really
needed to store a LinkedHashSet for each parameter. Also inline
'bindFakeOverride'
2015-08-07 23:01:22 +03:00
Alexander Udalov
5aad063076 Extract VariableDescriptorWithInitializerImpl out of VariableDescriptorImpl
Because ValueParameterDescriptorImpl extends from VariableDescriptorImpl, but
it never has a compile-time initializer, so it was always storing an extra null
2015-08-07 23:01:21 +03:00
Alexander Udalov
942ab9ef6d Make 'hasDefaultValue' an extension on ValueParameterDescriptor
To avoid storing a Boolean and a boolean. It isn't called frequently enough to
justify this wasted space for each parameter of every function out there
2015-08-07 23:01:20 +03:00
Alexander Udalov
8dddce5ac5 Minor, replace some usages of hasDefaultValue -> declaresDefaultValue 2015-08-07 23:01:20 +03:00
Nikolay Krasko
c13396d92f Refactoring: inline method 2015-08-07 19:14:20 +03:00
Nikolay Krasko
5fe81d67a3 Refactoring: move function and avoid return lambda 2015-08-07 19:14:18 +03:00
Nikolay Krasko
7de35baa4b Idea start configuration with fixed fonts on Windows
Run with Java 1.7 and add tools.jar to Idea classpath explicitly.
2015-08-07 19:14:13 +03:00
Nikolay Krasko
470a062254 Add kotlin-reflect to additional classpath 2015-08-07 19:14:11 +03:00
Denis Zharkov
5323310950 Use LookupCancelWatcher as component instead of service 2015-08-07 19:14:09 +03:00
Natalia Ukhorskaya
93a3d3a4c4 Fix compilation error 2015-08-07 19:14:07 +03:00
Natalia Ukhorskaya
fbe192b75f Suppress warnings about org.imgscalr.Scalr class 2015-08-07 19:14:04 +03:00
Nikolay Krasko
4a06ed1271 Update to 142.3553.1 2015-08-07 19:14:02 +03:00
Dmitry Jemerov
5e1b44eac8 fix tests: imported FQ name of an import directive is nullable 2015-08-07 11:41:51 +02:00
Dmitry Jemerov
43bbed495b code review 2015-08-07 11:41:50 +02:00
Dmitry Jemerov
c29ebfbb04 KotlinAnnotatedElementsSearcher: handle local scope; correctly handle import aliases 2015-08-07 11:41:49 +02:00
Dmitry Jemerov
cca7f08400 store imported FQ name in import directive stub 2015-08-07 11:41:48 +02:00
Dmitry Jemerov
2429ff00f6 KotlinImportDirectiveStubImpl: J2K 2015-08-07 11:41:48 +02:00
Dmitry Jemerov
dfd9ee499b KotlinImportDirectiveStubImpl: rename to .kt 2015-08-07 11:41:47 +02:00
Dmitry Jemerov
2b3e435401 KotlinFileStubImpl: cleanup after J2K 2015-08-07 11:41:46 +02:00
Dmitry Jemerov
ae6acd1f85 KotlinFileStubImpl: J2K 2015-08-07 11:41:45 +02:00
Dmitry Jemerov
2f724e6a99 KotlinFileStubImpl: rename to .kt 2015-08-07 11:41:44 +02:00
Dmitry Jemerov
df21eee761 KotlinAnnotatedElementsSearcher: cleanup after J2K; correctly handle consumer returning false 2015-08-07 11:41:44 +02:00
Dmitry Jemerov
6b5a227752 KotlinAnnotatedElementsSearcher: J2K 2015-08-07 11:41:43 +02:00
Dmitry Jemerov
b2553ccc38 KotlinAnnotatedElementsSearcher: rename to .kt 2015-08-07 11:41:42 +02:00
Alexander Udalov
0d0ccfef8c Refactor and simplify FunctionCaller 2015-08-07 00:55:44 +03:00
Alexander Udalov
d3e39812cb Support mapping of KType to j.l.reflect.Type 2015-08-07 00:55:35 +03:00
Alexander Udalov
49b689f883 Do not allow to assign null to a non-null property via reflection
This was already working for accessor-based properties because the assertions
were already generated into corresponding accessors, but for fields we must
manually check the value against null
2015-08-07 00:55:33 +03:00
Alexander Udalov
3091f2af3b Report argument number mismatch nicely on wrong 'call()' invocation
The default Java reflection message in such case is not very helpful: "wrong
number of arguments"
2015-08-07 00:55:32 +03:00
Alexander Udalov
9c522b4d49 Refactor property calls in reflection, fix some corner cases
- compute a FunctionCaller instance for getter and setter so that "call" only
  delegates to that FunctionCaller's "call", in the same way it's done in
  KFunctionImpl
- use RuntimeTypeMapper.mapPropertySignature to get the exact origin and
  signature of a property and its accessors. This makes unwrapFakeOverride call
  unnecessary and also fixes some cases like private Java fields
- temporarily drop custom range checks, will be re-added soon
2015-08-07 00:55:30 +03:00
Alexander Udalov
a91729e041 Fix isAccessible for property accessors 2015-08-07 00:55:30 +03:00
Alexander Udalov
9f2feb1d27 Set failOnError = true by default in kotlinc Ant task as in javac
#KT-8742 Fixed
2015-08-06 22:38:41 +03:00
Dmitry Jemerov
7e7374e28b bump max permgen size for All tests configuration 2015-08-06 19:51:27 +02:00
Alexey Tsvetkov
102c5f6569 Add SourceElement to LazyJavaPackageFragment 2015-08-06 19:31:07 +03:00
Alexey Tsvetkov
53eccb98e3 Save class file to deserialized descriptor 2015-08-06 19:31:06 +03:00
Alexey Tsvetkov
0688afbb0c Introduce ClassDataProvider 2015-08-06 19:31:06 +03:00
Denis Zharkov
cb7518c3ee Minor. Drop irrelevant field from testData 2015-08-06 08:18:18 +03:00
Denis Zharkov
41d4af2cb9 Implement rendering of raw types
Also add some clarification in spec
2015-08-06 08:18:18 +03:00
Denis Zharkov
51668b4cc3 Do not substitute arguments while replacing them
It prevents from creating complicated types
2015-08-06 08:18:18 +03:00
Denis Zharkov
32c23728b3 Implement raw types (de)serialization via special TypeCapabilities 2015-08-06 08:18:18 +03:00
Denis Zharkov
3593356e1a Minor. Move RawSubstitution into separate file 2015-08-06 08:18:18 +03:00
Denis Zharkov
460c719753 Make constructor of JetTypeImpl private, introduce factory methods 2015-08-06 08:18:18 +03:00
Denis Zharkov
101ab03721 J2K JetTypeImpl: Convert and clean 2015-08-06 08:18:18 +03:00
Denis Zharkov
ce78dae281 J2K JetTypeImpl: .java -> .kt 2015-08-06 08:18:17 +03:00
Denis Zharkov
ac7c5a93b0 Introduce TypeCapabilities concept
It encapsulates special features of type like custom substitution.
2015-08-06 08:18:17 +03:00
Denis Zharkov
4563f4b1f9 Minor. Pull computeMemberScope to AbstractLazyType 2015-08-06 08:18:17 +03:00
Denis Zharkov
b7c042510d Do not create redundant special variance when enhancing types
#KT-8538 Fixed
2015-08-06 08:18:17 +03:00
Denis Zharkov
b2766bfb57 Add test for obsolete issue
#KT-4609 Obsolete
2015-08-06 08:18:17 +03:00
Alexander Udalov
47439603bb Minor, delete useless instanceof
A follow-up to 9b832d4
2015-08-05 19:04:31 +03:00
Alexander Udalov
8556f18ed5 Rename Java scopes to reduce confusion 2015-08-05 19:01:53 +03:00
Alexander Udalov
a336e9c930 Don't cache nulls for invalid names in Java resolve 2015-08-05 19:01:52 +03:00
Alexander Udalov
d3d0cbde97 Refactor KotlinClassLookupResult, make it sealed 2015-08-05 19:01:51 +03:00
Mikhail Glukhikh
bd3b5690a2 Standard annotations: must be documented 2015-08-05 18:32:12 +03:00
Mikhail Glukhikh
5b31560808 x?.y is now nullable even if y is Unit + three tests + codegen test fix + source code fix #KT-7936 Fixed #KT-8347 Fixed 2015-08-05 12:26:01 +03:00
Mikhail Glukhikh
850580dc87 Java annotation mapper refactoring (constant names) 2015-08-05 12:25:53 +03:00
Mikhail Glukhikh
45cc3c025f Mapping of JavaDoc deprecated to Kotlin Deprecated + a pair of tests 2015-08-05 12:25:39 +03:00
Valentin Kipyatkov
7d02b45558 Fixed test data 2015-08-04 18:05:57 +03:00
Valentin Kipyatkov
4c0404ea82 Changes on code review 2015-08-04 18:05:57 +03:00
Valentin Kipyatkov
6df218df52 Fixed test data 2015-08-04 18:05:57 +03:00
Valentin Kipyatkov
9150c53832 Fixed codegen for non-public SAM-adapters 2015-08-04 18:05:57 +03:00
Valentin Kipyatkov
5bceefe8df Added UsageLocation parameter 2015-08-04 18:05:57 +03:00
Valentin Kipyatkov
a7db995f05 Correct icon shown for synthetic extensions 2015-08-04 18:05:57 +03:00
Valentin Kipyatkov
c3064e2b0f Synthetic extensions for non-public get/set java methods 2015-08-04 18:05:56 +03:00
Valentin Kipyatkov
d5f95cf126 Correct visibility for non-public SAM-adapters 2015-08-04 18:05:56 +03:00
Valentin Kipyatkov
2eb04db95a Extension SAM-adapters shown in completion 2015-08-04 18:05:56 +03:00
Valentin Kipyatkov
cb9ef9e1f0 Fixed nullability for return and parameter types in SAM-adapters 2015-08-04 18:05:56 +03:00
Valentin Kipyatkov
321bf40b65 Fixed compilation 2015-08-04 18:05:56 +03:00
Valentin Kipyatkov
729085ec9a Iniital implementation of synthetic extensions for SAM-adapter functions (non-static only) 2015-08-04 18:05:55 +03:00
Valentin Kipyatkov
8b3870cc33 Optimization 2015-08-04 18:05:55 +03:00
Valentin Kipyatkov
ece4d8b82f Added JetScope.getSyntheticExtensionFunctions() 2015-08-04 18:05:55 +03:00
Dmitry Jemerov
456cdab814 reset init time in all compiler invocations 2015-08-04 17:00:33 +02:00
Valentin Kipyatkov
4187be2fe5 KT-8255 Intention actions popup: there are duplicates between quickfixes and intentions
#KT-8255 Fixed
2015-08-04 17:57:02 +03:00
Dmitry Jemerov
f49ccb22ab report correct compiler init timings 2015-08-04 16:12:05 +02:00
Dmitry Jemerov
00ec19a709 use correct API for converting URL to string 2015-08-04 14:53:07 +02:00
Zalim Bashorov
7ea58bb097 Move UsageCollector.kt to descriptors module
* to fix bare plugin
* in the future it will be used in scopes declared in descriptors module
2015-08-04 15:34:29 +03:00
Mikhail Glukhikh
25cc5e1801 annotationChecker visibility corrected 2015-08-04 10:28:44 +03:00
Mikhail Glukhikh
4596edd19a 'dynamic' keyword is no longer a modifier (soft keyword only) 2015-08-04 10:28:42 +03:00
Dmitry Petrov
2275a4cb77 assert: CallResolverUtilPackage$CallResolverUtil$eba.hasUnknownReturnType
- ignore expressions with non-callable expected type resolved as callable reference expressions
(this can happen when we have incorrect code)
2015-08-04 09:41:14 +03:00
Alexander Udalov
6878453d44 Support KClass.objectInstance for objects and companion objects 2015-08-03 23:33:21 +03:00
Alexander Udalov
2eb5201575 Introduce KAnnotatedElement and val annotations: List<Annotation> 2015-08-03 23:32:23 +03:00
Alexander Udalov
d1e67805fc Fix supertypes for reflected Java classes, always include j.l.Object
equals/hashCode/toString had not appeared in Java classes' "members" because of
this
2015-08-03 23:06:15 +03:00
Alexander Udalov
af9ae46f9a Minor, fix test on KParameter.index 2015-08-03 23:06:14 +03:00
Mikhail Glukhikh
61fbe0d1e8 Refactoring of repeatable on retention SOURCE check (correct additional checker usage) 2015-08-03 19:43:24 +03:00
Mikhail Glukhikh
992c019c1e Redundant modifier targets introduced (abstract / open on interface, final on enum or object) 2015-08-03 19:42:00 +03:00
Mikhail Glukhikh
d127162a6d Removed LOCAL_ENUM_NOT_ALLOWED 2015-08-03 19:41:58 +03:00
Mikhail Glukhikh
a104b2c84c Dead code removed (wrong annotation target for enum) 2015-08-03 19:41:55 +03:00
Mikhail Glukhikh
722a078968 15 separate modifier diagnostics are gone now 2015-08-03 19:41:53 +03:00
Mikhail Glukhikh
4bd48c4796 Regular modifier checker implemented (initial version). A set of tests fixed accordingly.
Most of modifier diagnostic is expressed by REDUNDANT_MODIFIER, INCOMPATIBLE_MODIFIERS, REPEATED_MODIFIER, WRONG_MODIFIER_TARGET, WRONG_MODIFIER_PARENT.
A set of modifier diagnostics is not in use now (but not deleted yet).
2015-08-03 19:41:50 +03:00
Mikhail Glukhikh
faac06ff7e Annotation option 'mustBeDocumented': definition, mapping from Kotlin to Java Documented and back, tests 2015-08-03 19:41:48 +03:00
Mikhail Glukhikh
dfaed3fef3 Binary or runtime repeatable annotations are not allowed for JVM. Some tests fixed accordingly. 2015-08-03 19:41:45 +03:00
Dmitry Jemerov
f51107b502 enlarge use scope scope of PSI elements in built-in sources to Project and Libraries (to counteract the effect of 897d7cabe6) 2015-08-03 18:16:53 +02:00
Valentin Kipyatkov
1b3f4def15 Don't try to schedule optimize imports on the fly in batch inspections 2015-08-03 17:11:13 +03:00
Valentin Kipyatkov
315a73fd12 Minor optimization: don't walk through parent directories 2015-08-03 17:11:12 +03:00
Valentin Kipyatkov
d308c959ff Moved soft keyword highlighting and other analysis that do not require keywords into separate pass executed before running any resolve 2015-08-03 17:11:12 +03:00
Valentin Kipyatkov
f378b9bb75 Do not invalidate resolve of everything after change inside a code block 2015-08-03 17:11:12 +03:00
Valentin Kipyatkov
e59b621931 DeprecatedSymbolUsageInWholeProjectFix uses ReferenceSearch instead of Find Usages 2015-08-03 16:28:44 +03:00
Valentin Kipyatkov
c2c6ba59fd Changes on code review 2015-08-03 16:28:44 +03:00
Valentin Kipyatkov
397e48a11d ReferenceSearch searches references to parameters using optimized way too
#KT-8625 Fixed
2015-08-03 16:28:44 +03:00
Valentin Kipyatkov
d6f724c55d Never find overriding parameter usages via old way 2015-08-03 16:28:43 +03:00
Valentin Kipyatkov
1bb8ca6ed5 On searching parameter usages asking if user wants to search usages of parameters of overriders too (as in Java) 2015-08-03 16:28:43 +03:00
Valentin Kipyatkov
3d71610d96 Fixed parsing tests 2015-08-03 16:28:43 +03:00
Valentin Kipyatkov
c5f7f08d24 Removed scanning non-strings and non-comments for plain text (as it's not clear why it can be needed) 2015-08-03 16:28:43 +03:00
Valentin Kipyatkov
9bb2fe9a67 Optimization of parameter usages search 2015-08-03 16:28:43 +03:00
Valentin Kipyatkov
1d1d834901 Minor optimization 2015-08-03 16:28:43 +03:00
Zalim Bashorov
84543c4ed4 Merge pull request #733 from JetBrains/rr/nik
get rid of deprecated method usage
2015-08-03 14:01:21 +03:00
nik
97d9889bb1 get rid of deprecated method usage 2015-08-03 12:33:34 +03:00
Dmitry Jemerov
ef095dd559 better filtering of elements in KDoc link completion 2015-07-31 19:17:21 +02:00
Dmitry Jemerov
969f702a70 force resolve doesn't seem to be necessary 2015-07-31 19:07:47 +02:00
Dmitry Jemerov
df1a72e107 since BuiltInsReferenceResolver is initialized on-demand, we can't use async initialization 2015-07-31 19:07:46 +02:00
Dmitry Jemerov
d6455ebfd8 BuiltInsReferenceResolver: avoid premature initialization, more cleanup
#KT-8631 Fixed
2015-07-31 19:07:45 +02:00
Dmitry Jemerov
1c3f30bd8e BuiltInsReferenceResolver: cleanup and convert to service 2015-07-31 19:07:44 +02:00
Dmitry Jemerov
79bbb820bd BuiltInsReferenceResolver: J2K 2015-07-31 19:07:43 +02:00
Dmitry Jemerov
13a8f86049 BuiltInsReferenceResolver: rename to .kt 2015-07-31 19:07:42 +02:00
Denis Zharkov
f850ff9d39 Minor. Fix compilation after raw types introduction
- Condition parameter loaded as SAM-adapter
- Use wildcards instead of raw
2015-07-31 17:33:21 +03:00
Denis Zharkov
6b92f67eac Load raw types as platform with specific bounds
Raw(A<T_i>) = (A<UP(T_i)>..A<*>)
Raw types have specific scopes that behaves like JVM signature erasure
2015-07-31 17:33:21 +03:00
Denis Zharkov
5b07eea1b9 Prevent recursion when processing star projection 2015-07-31 17:33:21 +03:00
Denis Zharkov
37420527f2 Add substitution concept into JetType
In most cases it's just a map { Parameter_i => Argument_i }
Will be used when loading Raw types from Java.

Also add ClassDescriptor.getMemberScope by substitution.
2015-07-31 17:33:21 +03:00
Denis Zharkov
557450677f Rename, convert and optimize CompositeTypeSubstitution
- Get rid of storing array of inner substituions
- Rename is important as it wasn't actually composition
2015-07-31 17:33:21 +03:00
Denis Zharkov
70bf4d2faf J2K: rename CompositeTypeSubstitution.java -> DisjointKeysUnionTypeSubstitution.kt 2015-07-31 17:33:21 +03:00
Denis Zharkov
465ed9973f Minor. Make DeserializedType subclass of AbstractLazyType 2015-07-31 17:33:21 +03:00
Denis Zharkov
a07a1829c5 Rework TypeSubstituion, now it applies to types instead of constructors
Also introduce IndexedParametersSubstitution
2015-07-31 17:33:21 +03:00
Denis Zharkov
1aef9b77f1 J2K TypeSubstitution: Convert 2015-07-31 17:33:20 +03:00
Denis Zharkov
d762155e36 J2K TypeSubstitution: .java -> .kt 2015-07-31 17:33:20 +03:00
Denis Zharkov
0fba28a8f0 Do not retrieve parent of FQname for root
#KT-8642 Fixed
2015-07-31 17:33:20 +03:00
Denis Zharkov
8b537bc6dd Minor. Get rid of raw types in upper bounds 2015-07-31 17:33:20 +03:00
Michael Nedzelsky
2adf1e0e96 add ProtoBugCompareConsistencyTest 2015-07-31 16:51:24 +03:00
Michael Nedzelsky
31d5ec2370 minor: GenerateProtoBuf: get rid of weak warnings, add a reminder about GenerateProtoBufCompare. 2015-07-31 16:51:20 +03:00
Dmitry Jemerov
8ef5adb5bd remove usages of ant-contrib from Ant build scripts 2015-07-31 14:26:57 +02:00
Sergey Mashkov
0e25a5ea82 JS: arrayToString should use toString() instead of direct join to handle nulls properly
#KT-8663 Fixed
2015-07-31 14:28:30 +03:00
Sergey Mashkov
2826f193dd AbstractCollection should use Kotlin.toString
#KT-8662 Fixed
2015-07-31 14:28:30 +03:00
Ilya Gorbunov
81cbbad1e5 Add test comparing behavior of a reversed list and a reversed view on a list. 2015-07-31 14:28:29 +03:00
Sergey Mashkov
8a0c752f99 KT-4844 Support asReversed() for lists 2015-07-31 14:28:29 +03:00
Dmitry Jemerov
f86bb119bb download ProGuard from Artifactory 2015-07-31 13:18:11 +02:00
Sanket Dasgupta
b82ba117cc update readme.md to include try.kotlinlang.org 2015-07-31 13:24:27 +03:00
Alexander Udalov
0ad9dc9abf Specification for function type reform 2015-07-30 23:06:06 +03:00
Sergey Mashkov
8353b4d3e8 Maven: integration test should remove escape sequences from build log 2015-07-30 19:20:30 +03:00
Valentin Kipyatkov
196cecfe70 Fixed exception 2015-07-30 18:02:54 +03:00
Valentin Kipyatkov
422a9613f1 More correct detection of real methods to override 2015-07-30 18:02:54 +03:00
Valentin Kipyatkov
a4c9aa43a5 Experimental feature to show properties in completion after prefix with "get" or "set" 2015-07-30 18:02:54 +03:00
Dmitry Jemerov
23dca520d5 ensure that a JetEnumEntry is equivalent to a KotlinLightEnumConstant
#KT-5057 Fixed
2015-07-30 16:36:18 +02:00
Michael Nedzelsky
194aa57c07 add call to GenerateProtoBufCompare at the end of GenerateProtoBuf 2015-07-30 16:35:56 +03:00
Natalia Ukhorskaya
2b19f58d3f Change since for plugin, because of usage of SourcePositionHighlighter in debugger 2015-07-30 15:53:47 +03:00
Alexander Udalov
9991d45a15 Fix maven plugin test, properties -> memberProperties 2015-07-30 15:19:43 +03:00
Dmitry Jemerov
ee42da48e1 support multideclarations in Select Word
#KT-6833 Fixed
2015-07-30 13:53:03 +02:00
Dmitry Jemerov
e545a7c699 add word selection step for selecting a type parameter or type argument list with enclosing brackets
#KT-6697 Fixed
2015-07-30 13:52:56 +02:00
Dmitry Jemerov
77caa0d644 highlight Kotlin files with errors in project view
#KT-8609 Fixed
2015-07-30 13:34:27 +02:00
Dmitry Petrov
8b73ffd25b EA-71185 - assert: CallResolverUtilPackage$CallResolverUtil$fcfb.hasUnknownReturnType
- Accept any subclasses of KCallable<R> as "callable reflection types"
(this includes KProperty and KFunction with their subclasses).
- Provide more detailed information on the callable reference type in question in case of assertion failures.
2015-07-30 13:44:50 +03:00
Dmitry Petrov
9bf0211152 KT-8408 Prohibit Array<T>::class for non-reified T 2015-07-30 12:18:29 +03:00
Alexander Udalov
a0cc313156 Support class reference expression for reified type parameters
Also make KClass::java an intrinsic property.

Based on the work by @dnpetrov

 #KT-6976 Fixed
2015-07-30 12:18:28 +03:00
Alexander Udalov
628bb774fd Support class reference expressions without kotlin-reflect.jar in classpath
Currently not much you can do with them, but in the future '.java' extension
property will allow to get the Class instance from it.

Also introduce codegen tests with stdlib but without reflection in the
classpath.

Based on the work by @dnpetrov
2015-07-30 12:18:28 +03:00
Andrey Breslav
0b30758987 Specification for annotation options (initial version).
target, retention, repeatable, documented. 'annotation' is an annotation declared in kotlin.annotation.
'target' is also an annotation with vararg argument. All others are 'annotation' properties.
2015-07-30 12:00:27 +03:00
Dmitry Jemerov
6d1ccc22ab reduce vertical whitespace in rendered KDoc comments 2015-07-30 10:38:16 +02:00
Dmitry Jemerov
b483713f2c Render code blocks in KDoc 2015-07-30 10:38:15 +02:00
Dmitry Jemerov
909d094896 Fixed rendering of line breaks and apostrophes in KDoc
#KT-8531 Fixed
 #KT-8392 Fixed
2015-07-30 10:38:14 +02:00
Natalia Ukhorskaya
ff0a064908 Debugger: Implement SourcePositionHighlighter to highlight lambda expressions during debug 2015-07-30 10:00:27 +03:00
Natalia Ukhorskaya
ad6611b930 J2K: If last expression in Method Call is Lambda add it outside the parenthesis 2015-07-30 10:00:26 +03:00
Natalia Ukhorskaya
40d2fd7994 J2K: Do not skip any unknown expression 2015-07-30 10:00:26 +03:00
Natalia Ukhorskaya
28f0866467 J2K: Convert Java8 lambdas properly
#KT-7149 Fixed
2015-07-30 10:00:26 +03:00
Natalia Ukhorskaya
8759601ef6 J2K: extract base class for Parameter 2015-07-30 10:00:25 +03:00
Natalia Ukhorskaya
f713e66484 Minor: move methods 2015-07-30 10:00:25 +03:00
Natalia Ukhorskaya
3ab53eb5e3 Minor: change parameters order 2015-07-30 10:00:24 +03:00
Natalia Ukhorskaya
c86b25b1dc Make j2k depends on idea-core instead of idea-full 2015-07-30 10:00:24 +03:00
Natalia Ukhorskaya
22ee063269 Add platformStatic annotation to main method from java
#KT-8219 Fixed
2015-07-30 10:00:24 +03:00
Natalia Ukhorskaya
b54da25108 J2K: do not convert doc comments on WebDemo
#KT-7968 Fixed
2015-07-30 10:00:23 +03:00
Alexander Udalov
ae277a0ad7 Delete RemovableSlice and MutableSlicedMap.remove 2015-07-29 23:44:25 +03:00
Alexander Udalov
96ded4d5d2 Simplify slices: remove SliceWithOpposite, defaultValue, etc. 2015-07-29 23:44:24 +03:00
Alexander Udalov
9a0e322c51 Minor refactoring in Kotlin binary class resolution 2015-07-29 23:44:23 +03:00
Alexander Udalov
0d9b60dcbc Fix "Class name must not be root" assertion + inline some utilities
Fix EA-60649, EA-65875; do not lookup classes with an empty name.
No test added since no steps to reproduce are known
2015-07-29 23:44:22 +03:00
Alexander Udalov
98b057f495 Don't look for classes with empty or special name in deserialized scope
Fix EA-59962, EA-64281, EA-65698. No new tests added because the only repro
reported as KT-8187 now fails with another (much more understandable though)
exception

 #KT-8187 Open
2015-07-29 23:44:21 +03:00
Alexander Udalov
d0e21c53d4 Minor, pull 'name' up to KPropertyImpl 2015-07-29 23:44:20 +03:00
Alexander Udalov
a93484b457 Fix callable reference to member of generic class 2015-07-29 23:44:19 +03:00
Alexander Udalov
49a8c7a947 Drop BindingContext.ANNOTATION_DESCRIPTOR_TO_PSI_ELEMENT
Use AnnotationDescriptor.getSource() instead
2015-07-29 23:44:19 +03:00
Alexander Udalov
d0562b7b90 Add SourceElement to AnnotationDescriptor
Use KotlinSourceElement in the compiler for annotations resolved from PSI,
introduce ReflectAnnotationSource for reflection
2015-07-29 23:44:18 +03:00
Alexander Udalov
ef4a5e78ed Catch IllegalAccessException in KFunction.call
Rename IllegalPropertyAccessException -> IllegalCallableAccessException
2015-07-29 21:36:51 +03:00
Alexander Udalov
262099c899 Fix KFunction.javaMethod for property accessors 2015-07-29 21:36:50 +03:00
Alexander Udalov
9c4ba711b8 Rename and implement KProperty.accessible -> KCallable.isAccessible 2015-07-29 21:36:49 +03:00
Alexander Udalov
8f0885ca03 Rename KClass.properties and extensionProperties: prepend 'member'
To better emphasize the fact that all returned properties require an instance
of the class they are declared in. Another issue was that
'Some::class.extensionProperties' was sometimes incorrectly perceived as
"get all extension properties available on the class Some"
2015-07-29 21:36:47 +03:00
Alexander Udalov
6b24cfa3e4 Deprecate val Field.kotlin due to poor name in favor of kotlinProperty 2015-07-29 21:36:47 +03:00
Alexander Udalov
7fc499df46 Support KClass.primaryConstructor 2015-07-29 21:36:46 +03:00
Alexander Udalov
699a801ce9 Add KCallable.returnType 2015-07-29 21:36:45 +03:00
Alexander Udalov
be77a2feee Fix KCallable.call for equals/hashCode/toString
Other built-in functions should be supported in the same way one day
2015-07-29 21:36:44 +03:00
Alexander Udalov
681c45ef61 Refactor KFunctionImpl internals, get rid of unwrapFakeOverride 2015-07-29 21:36:44 +03:00
Alexander Udalov
4c0caad79a Refactor RuntimeTypeMapper, introduce JVM signature classes
Currently only used to obtain the string identical to the one which would be
produced by JetTypeMapper.mapSignature, but soon will be used to obtain
corresponding reflection objects from classes
2015-07-29 21:36:43 +03:00
Alexander Udalov
e079b8f425 Support KCallable.call
#KT-2187 Fixed
2015-07-29 21:36:42 +03:00
Alexander Udalov
ffe32e0b6d Simplify RuntimeTypeMapper, use Java reflection to get erased types 2015-07-29 21:36:42 +03:00
Alexander Udalov
936bede8b1 Support mapping between Kotlin functions and JVM methods/constructors 2015-07-29 21:36:41 +03:00
Alexander Udalov
93656c93c1 Support KPackage.members, functions and properties 2015-07-29 21:36:40 +03:00
Alexander Udalov
95be8b11f5 Don't write JetValueParameter to the bytecode
The class itself can't be deleted at this point because it's used in the old
bytecode and tools (e.g. proguard) will complain if they can't find it in the
new runtime
2015-07-29 21:36:39 +03:00
Alexander Udalov
6ab1c6bfb3 Add KParameter.type, KType, KType.isMarkedNullable 2015-07-29 21:36:38 +03:00
Alexander Udalov
b0db9c5b03 Fix reflection on enhanced Java methods, call getOriginal()
Also use the provided mechanism for binding overrides instead of a custom for
loop, because it also binds corresponding value parameters
2015-07-29 21:36:38 +03:00
Alexander Udalov
81ef1c19d8 Support KClass.constructors in reflection 2015-07-29 21:36:37 +03:00
Alexander Udalov
da5cffdb60 Support KClass.functions and declaredFunctions 2015-07-29 21:36:36 +03:00
Alexander Udalov
50dbda1e1a Introduce KClass.members, make properties/extensionProperties extensions
To avoid significant growth of KClass and KPackage interfaces
2015-07-29 21:36:36 +03:00
Alexander Udalov
2492977274 Additional tests on reflection for Java methods 2015-07-29 21:36:35 +03:00
Alexander Udalov
5962b79126 Support introspection of parameter names and indices in reflection 2015-07-29 21:36:34 +03:00
Alexander Udalov
87c70aa2ae Make Class<*>.kotlinPackage nullable 2015-07-29 21:36:33 +03:00
Pavel V. Talanov
0513994749 Minor: remove "? extends" when injecting iterable into java class 2015-07-29 17:09:41 +03:00
Ilya Ryzhenkov
28df61b6f1 Support ordinary Java invariant Iterable<T> in component container. 2015-07-29 17:09:40 +03:00
Ilya Ryzhenkov
e12e67468f Distinguish implicit components in dump 2015-07-29 17:09:39 +03:00
Mikhail Glukhikh
41500c916b java Retention + Repeatable = kotlin.annotation.annotation (but java Repeatable is still intact), a few tests 2015-07-29 16:28:36 +03:00
Mikhail Glukhikh
10ba9c7264 Repeatable test renamed 2015-07-29 16:28:33 +03:00
Mikhail Glukhikh
a072550931 Class is an annotation iff it is annotated by kotlin.annotation.annotation, or is kotlin.annotation.annotation itself.
JetClassOrObject.isAnnotation() is no more in use during resolve. Additional test.
2015-07-29 16:28:26 +03:00
Alexey Sedunov
d71217eb5c Pull Up: Rewrite some classes to Java to allow compilation against both Java 6 and Java 8 2015-07-29 16:21:29 +03:00
Michael Nedzelsky
e9d7bbf493 fix KT-8648 Exception from incremental compilation
#KT-8648 Fixed
2015-07-29 15:14:45 +03:00
Mikhail Glukhikh
00eaec766d Function name fixed in AnnotationConverter 2015-07-29 11:37:16 +03:00
Mikhail Glukhikh
b657713f1c JavaAnnotationMapper code cleanup (imports) 2015-07-29 11:36:24 +03:00
Mikhail Glukhikh
8a61441be9 AnnotationChecker code cleanup (property access syntax, imports) 2015-07-29 11:35:40 +03:00
Mikhail Glukhikh
39b29068cb Refactoring: AnnotationTargetChecker --> AnnotationChecker 2015-07-29 11:33:33 +03:00
Alexey Sedunov
c11f1807bc Rename: ClassKind.TRAIT -> ClassKind.INTERFACE 2015-07-28 23:24:23 +03:00
Alexey Sedunov
5bc2a4b14c Create From Usage: Do not keep semantic information in quickfix instances directly as it leads to memory leaks 2015-07-28 23:24:22 +03:00
Valentin Kipyatkov
9d84e4b60a Fixed EA-70681 2015-07-28 22:39:32 +03:00
Valentin Kipyatkov
8f940b07fb Fixed EA-70733 2015-07-28 22:39:32 +03:00
Valentin Kipyatkov
4355b3ed00 Fixed EA-70940 2015-07-28 22:39:32 +03:00
Valentin Kipyatkov
eb03c5a6d0 Fixed exception 2015-07-28 22:39:32 +03:00
Valentin Kipyatkov
bccaf6b340 Moved and renamed DescriptorClassMember 2015-07-28 22:39:32 +03:00
Valentin Kipyatkov
63dc843c71 KT-8542 Override dialog: only one class from hierarchy is shown
#KT-8542 Fixed
2015-07-28 22:39:31 +03:00
Valentin Kipyatkov
29379c061a Code improvements 2015-07-28 22:39:31 +03:00
Valentin Kipyatkov
a2b759ef78 More proper package name 2015-07-28 22:39:30 +03:00
Valentin Kipyatkov
421a764eb9 Converted to Kotlin 2015-07-28 22:39:30 +03:00
Valentin Kipyatkov
e98ce30333 Moved OverrideMethodsHandler 2015-07-28 22:39:30 +03:00
Valentin Kipyatkov
977bf593e0 KT-8574 'Convert to block body' inserts spurious < token
#KT-8574 Fixed
2015-07-28 22:39:29 +03:00
Valentin Kipyatkov
e09fadae51 KT-8623 Completion get in the way when function as declared
#KT-8623 Fixed
2015-07-28 22:39:29 +03:00
Michael Nedzelsky
2e18b3de9d prepare to retire Type.Constructor message in descriptors.proto after M13 2015-07-28 19:49:00 +03:00
Michael Nedzelsky
b3659486d9 IncrementalCacheImpl: do not recompile other files if all changes are private 2015-07-28 19:48:56 +03:00
Michael Nedzelsky
75f178fec2 JvmProtoBufUtil: add readClassDataFrom(data: ByteArray) 2015-07-28 19:48:54 +03:00
Michael Nedzelsky
62f6cc7f0b add tests for incremental compilation when only private part changed 2015-07-28 19:48:51 +03:00
Michael Nedzelsky
2f304c0d99 add GenerateProtoBufCompare 2015-07-28 19:48:48 +03:00
Michael Nedzelsky
459eed7d28 introduce custom options for messages in proto files 2015-07-28 19:48:44 +03:00
Michael Nedzelsky
f91f957703 add a copy of descriptor.proto file from protobuf installation 2015-07-28 19:48:41 +03:00
Michael Nedzelsky
ef8381f8af two optional fields have been added to Type.Constructor message in descriptors.proto in preparation to remove field which requires double interpetation 2015-07-28 19:48:37 +03:00
Mikhail Glukhikh
dbf6da89b7 java.lang.annotation.Repeatable is deprecated + test in a new group: diagnostic tests with Java 8. 2015-07-28 19:03:55 +03:00
Alexey Sedunov
421f082d43 Pull Up: Minor: Extract local functions 2015-07-28 18:48:37 +03:00
Alexey Sedunov
7280be7bbc Pull Up: Do not render modifiers (except ABSTRACT and INNER) in MemberInfo text 2015-07-28 18:48:36 +03:00
Alexey Sedunov
7dc430e50b Pull Up: Support super-interfaces 2015-07-28 18:48:35 +03:00
Alexey Sedunov
1a09741c0a Pull Up: Move property initializers 2015-07-28 18:48:33 +03:00
Alexey Sedunov
390f352e75 Pull Up: Implement conflict analysis 2015-07-28 18:48:32 +03:00
Alexey Sedunov
8493908710 Conflicts Dialog: Add handler for "Show conflicts" action 2015-07-28 18:48:30 +03:00
Alexey Sedunov
39ff3c3000 Pull Up: Initial support
#KT-7330 Fixed
2015-07-28 18:48:29 +03:00
Alexey Sedunov
e303a38f9e Member Info: Extended implementation (for Pull Up/Push Down) 2015-07-28 18:48:27 +03:00
Alexey Sedunov
3c36795984 Refactoring: Extract JetClassOrObject.getOrCreateBody() function 2015-07-28 18:48:26 +03:00
Alexey Sedunov
83e28b360f Refactoring: Move non-specific TypeSubstitutor factories to substitutionUtils.kt in compiler
Merge typeUtils.kt with changeSignatureUtils.kt
2015-07-28 18:48:24 +03:00
Alexey Sedunov
d23da408a8 Formatter: Add blank line before class/object declaration inside of declaration body 2015-07-28 18:48:23 +03:00
Sergey Mashkov
16ec066437 Maven: integration test should aomit downloading/downloaded messages even if they are printed with no log level 2015-07-28 18:24:21 +03:00
Sergey Mashkov
8b358558c9 Maven: integration test should escape compiler version 2015-07-28 18:04:00 +03:00
Sergey Mashkov
3c3e1a0a52 Maven: eliminate warning classpath entry doesn't exist. Fix integration test 2015-07-28 17:46:15 +03:00
Mikhail Glukhikh
a86857fbb5 Java Deprecated is mapped in accordance with Java Target / Retention, some diagnostic changed 2015-07-28 17:13:37 +03:00
Mikhail Glukhikh
219ffa4fb3 Dead code removed 2015-07-28 17:13:34 +03:00
Mikhail Glukhikh
d6406d8d4a Annotation repetition checking with a pair of tests, some old tests changes 2015-07-28 17:13:32 +03:00
Mikhail Glukhikh
8beafe90a0 Retention / target for some standard annotations 2015-07-28 17:13:29 +03:00
Sergey Mashkov
82165d2a93 Maven: Introduce test for plugin output
Use mvn integration-test to run tests
2015-07-28 13:37:33 +03:00
Sergey Mashkov
015ac0cd5b Maven: take logger every time
The root cause of problem is that we take logger at too early stage so there is initial bootstrap maven logger that is replaced by plexus container via injector at later initialization stage. We have to use injected logger rather than initial bootstrap logger. At the same time there is no actual performance advantage to have LOG field because of JIT inliner will inline getLog() body anyway.

#KT-8630 Fixed
2015-07-28 13:37:23 +03:00
Dmitry Jemerov
38151d4932 remove ReadMe.md with outdated information 2015-07-28 11:12:16 +02:00
Ilya Gorbunov
2f1c8a3dfa Remove special case of generation for numeric and toPrimitiveArrays. 2015-07-27 19:02:49 +03:00
Ilya Gorbunov
dd71cbb96e Accept more generic ranges in contains. 2015-07-27 19:02:47 +03:00
Ilya Gorbunov
e127e234f8 Stdlib Generators: add generic ranges, allow specify concrete primitive for generic, render types in receiver. 2015-07-27 19:02:45 +03:00
Alexey Sedunov
f4ebd895ca Change Signature: Reduce JetChangeSignatureUsageProcessor state to prevent
memory leaks. JetMethodDescriptor is stored in UsageInfo list
2015-07-27 17:29:02 +03:00
Alexey Sedunov
4f12dcc069 Move: Make MoveKotlinFileHandler stateless to prevent memory leaks. MoveKotlinTopLevelDeclarationsProcessor is made part of transient state, PackageNameInfo is recomputed based on file user data and container 2015-07-27 17:29:01 +03:00
Dmitry Jemerov
978fb2c1cf don't go outside of file when trying to find enclosing element for declaration 2015-07-27 11:43:12 +02:00
Natalia Ukhorskaya
47b94326ec Add NotNull assertions at project.getComponent
(cherry picked from commit 9b1167c)
2015-07-27 12:06:01 +03:00
Natalia Ukhorskaya
728290f99e Fix compilation error in tests
(cherry picked from commit ea5b532)
2015-07-27 12:06:01 +03:00
Natalia Ukhorskaya
71bf9b1b30 LightProjectDescriptor is no longer an interface
(cherry picked from commit b99235b)
2015-07-27 12:06:00 +03:00
Natalia Ukhorskaya
e66569c451 Update to IDEA 3371.3 2015-07-27 12:06:00 +03:00
Dmitry Petrov
a64f1a86c0 Fix KT-8608: Compiler crashes with assertion Restore stack is unavailable
- fix SAVE_STACK_BEFORE_TRY insertion:
  TRYCATCHBLOCK LA, LB, LC
  LA
    NOP
    try_body
  LB
    ...
  LC
    handler_body
should be transformed into:
  LA
    {SAVE_STACK_BEFORE_TRY}
  LA' // new TCB start label
    NOP
    try_body
  LB
    ...
  LC
    handler_body
with all TCBs start labels remapped

- properly wrap exceptions from MandatoryMethodTransformer

 #KT-8608 Fixed
2015-07-27 10:40:14 +03:00
Valentin Kipyatkov
a58f249a01 KT-8576 Parameter name&type completion: don't auto-popup for the second time
#KT-8576
2015-07-27 10:37:12 +03:00
Valentin Kipyatkov
b9a62d0acf Fixed parameter name&type auto-popup completion to insert "dynamic" on typing ": " 2015-07-27 10:37:11 +03:00
Alexey Sedunov
acb8c54902 Move: Get rid of MoveKotlinTopLevelDeclarationsOptions.sourceFile 2015-07-24 21:03:07 +03:00
Alexey Sedunov
9219f2214e Move: Fix ClassCastException on attempt to move several classes (located in different files) to the same file
#KT-8437 Fixed
2015-07-24 21:03:06 +03:00
Alexey Sedunov
e74749eea1 Move: Reinitialize move context as MoveFileHandler.findUsages() can be bypassed
#KT-8436 Fixed
2015-07-24 21:03:05 +03:00
Alexey Sedunov
5179c10b4c Move: Disable "Update package directive" check box when moving separate declarations instead of entire file
#KT-8414 Fixed
2015-07-24 21:03:04 +03:00
Alexey Sedunov
05fd4b75dd Move: NPE fix
#KT-8410 Fixed
2015-07-24 21:03:03 +03:00
Alexey Sedunov
fc885dedc5 Move: Do not use "Search references" Java options when silently invoking Move refactoring for entire file. Default to true instead 2015-07-24 21:03:02 +03:00
Alexey Sedunov
cc13c157f6 Move: Forbind moving to non-Kotlin file
#KT-8500 Fixed
2015-07-24 21:03:01 +03:00
Alexey Sedunov
82a47a0f2d Move: Fix "Update package directive" label
#KT-8546 Fixed
2015-07-24 21:03:00 +03:00
Sergey Mashkov
0453368990 Better main function recognition and tests
fix vararg main
2015-07-24 17:20:40 +03:00
Sergey Mashkov
8457b53f8b Better main function recognition and tests 2015-07-24 17:20:40 +03:00
Pavel V. Talanov
273e69c02c Refactor: Pass buitlins into IntegerValueTypeConstant and IntegerValueTypeConstructor 2015-07-24 13:47:59 +03:00
Pavel V. Talanov
a1a38e2eba Minor: CompileTimeConstant use utils instead of JetType#equals 2015-07-24 13:47:58 +03:00
Pavel V. Talanov
0bed8bb7d4 Minor: Inject builtins into OverloadingConflictResolver 2015-07-24 13:47:57 +03:00
Pavel V. Talanov
4599c962f0 Refactor: make OverloadingConflictResolver and ResolutionResultsHandler components instead of singletons 2015-07-24 13:47:57 +03:00
Pavel V. Talanov
1559c53007 Minor: Inject builtins into DataFlowAnalyzer 2015-07-24 13:47:56 +03:00
Pavel V. Talanov
78f55583f0 Minor: CompileTimeConstantUtils, builtins are not needed to check for string type 2015-07-24 13:47:55 +03:00
Pavel V. Talanov
7203a7833a Minor: Inject builtins in ControlFlowAnalyzer 2015-07-24 13:47:55 +03:00
Pavel V. Talanov
0830e48029 Minor: FakePureImplementationsProvider does not need builtins, just fq names 2015-07-24 13:47:54 +03:00
Pavel V. Talanov
83503b66d2 Minor: get rid of minor KotlinBuiltins.getInstance usage 2015-07-24 13:47:53 +03:00
Pavel V. Talanov
99e8ba1947 Get rid of static function ConstantExpressionEvaluator.evaluateToConstant 2015-07-24 13:47:53 +03:00
Pavel V. Talanov
6698b3b070 Refactor: get rid of static ConstantExpressionEvaluator.evaluate function
Move ArgumentTypeResolver.getLastElementDeparenthesized to JetPsiUtil
2015-07-24 13:47:52 +03:00
Pavel V. Talanov
2b9fc5268e Inject ConstantExpressionEvaluator into JsCallChecker
Do not pass expected type into evaluateExpression
2015-07-24 13:47:51 +03:00
Ilya Gorbunov
065945176e Use bare types in check and remove unneeded cast after.
Do not check whether a sequence is actually a collection or list.
2015-07-24 04:35:45 +03:00
Ilya Gorbunov
e799c92131 Accept more generic range for coerceIn. 2015-07-24 04:35:33 +03:00
Ilya Gorbunov
877cb72ba1 Array.copyOfRange: rename from, to to fromIndex, toIndex 2015-07-24 04:35:21 +03:00
Ilya Gorbunov
aeb7666578 Provide binarySearch with comparator for arrays. 2015-07-24 04:35:08 +03:00
Ilya Gorbunov
34afb450d8 List binarySearch and binarySearchBy methods and tests.
#KT-5444 Fixed
#KT-8217 Fixed
2015-07-24 04:34:56 +03:00
Ilya Gorbunov
3a7f6d7db0 Add inlineable compareValuesBy for single selector. 2015-07-24 04:34:44 +03:00
Ilya Gorbunov
d831509cee Provide listOfNotNull method. 2015-07-24 04:34:31 +03:00
Ilya Gorbunov
46858ddabd Allow to specify optional from and to indices for filling an array.
#KT-8382 Fixed
2015-07-24 04:34:19 +03:00
Ilya Gorbunov
c1975d0b2e Array.fill returns Unit since it's an in-place array operation.
Revised #KT-4760
2015-07-24 04:34:07 +03:00
Ilya Gorbunov
12e3542bce Provide toTypedArray method for primitive arrays. 2015-07-24 04:33:55 +03:00
Ilya Gorbunov
f57c207ed2 Introduce NotImplementedError instead of UnsupportedOperationException to throw from TODO function.
#KT-8153
2015-07-24 04:32:52 +03:00
Ilya Gorbunov
b7829d8471 JS: Make js Error to be mapped to kotlin.Throwable, inherit Exception and Error from Throwable. 2015-07-24 04:32:03 +03:00
Ilya Gorbunov
f2716a973c TODO as a function. Add an overload with a string reason.
#KT-8153 Fixed
2015-07-24 04:30:10 +03:00
Ilya Gorbunov
bfb116c0b2 Provide TODO as a substitution for not yet implemented method body.
#KT-8153
2015-07-24 04:29:31 +03:00
Ilya Gorbunov
da3ec891d0 Provide unzip method for Iterables, Arrays and Sequences of pairs.
#KT-5793 Fixed
2015-07-24 04:28:57 +03:00
Ilya Gorbunov
f604eef2fe Undeprecate find(predicate) and generate it for all collection-like types. Provide findLast(predicate).
Drop deprecated method findNot and extension properties first, last, head, tail
#KT-5185 Fixed
2015-07-24 04:28:46 +03:00
Ilya Gorbunov
1cc94f92e2 Also generate contains for meaningless combinations of types to prevent mistakenly using contains from an Iterable.
#KT-6361
2015-07-24 04:28:34 +03:00
Ilya Gorbunov
b7fbb60db4 Generate contains function for all combinations of primitive numeric ranges and arguments.
#KT-6361
2015-07-24 04:14:06 +03:00
Ilya Gorbunov
8892192e9c Generate openRange tests for compiler.
#KT-4665
2015-07-24 04:13:53 +03:00
Ilya Gorbunov
71f3e3049a Provide until function to construct integer ranges with an end being excluded from range.
#KT-4665 Fixed
2015-07-24 04:13:41 +03:00
Ilya Gorbunov
808170a84b Generate range downTos with templates DSL 2015-07-24 04:13:29 +03:00
Valentin Kipyatkov
e677049d00 Test for no annotations rendered in parameter info 2015-07-23 22:02:06 +03:00
Valentin Kipyatkov
383a4da231 No annotations rendered in completion and other places
KT-5517 Completion shouldn't show inlineOptions annotation

 #KT-5517 Fixed
2015-07-23 22:02:06 +03:00
Dmitry Jemerov
0ff0fc847d delete the rest of KDoc 2015-07-23 19:00:46 +02:00
Pavel V. Talanov
8cc9739f72 Refactor: Pass TargetPlatform instead of configurator, hide DynamicTypesSettings inside configurator 2015-07-23 16:15:38 +03:00
Pavel V. Talanov
84b8ed00c5 Refactor: Move TargetPlatform to frontend, make it expose platform dependant resolve services
AdditionalCheckerProvider -> PlatformConfigurator which operates directly on container
2015-07-23 16:15:35 +03:00
Pavel V. Talanov
b452c20cc2 Minor: Remove unused references to AdditionalCheckerProvider 2015-07-23 16:15:31 +03:00
Pavel V. Talanov
3227ae5577 Inject non-context dependent CallCheckers instead of getting them from context 2015-07-23 16:15:28 +03:00
Pavel V. Talanov
2885da8993 Remove AdditionalTypeChecker from context, inject into points of usage 2015-07-23 16:15:18 +03:00
Pavel V. Talanov
be98c4f96d DataFlowUtils -> DataFlowAnalyzer and make it a component 2015-07-23 16:15:13 +03:00
Pavel V. Talanov
985336d6cc Remove SymbolUsageValidator from contexts 2015-07-23 16:15:10 +03:00
Pavel V. Talanov
b75779b425 Inject SymbolUsageValidator into CallExpressionResolver 2015-07-23 16:15:01 +03:00
Pavel V. Talanov
a75b80c70d Inject declarations checkers into ModifiersChecker 2015-07-23 14:43:08 +03:00
Pavel V. Talanov
f5878eddd4 Refactor ModifiersChecker to be more component-like
A couple of minor prettifications
2015-07-23 14:42:34 +03:00
Natalia Ukhorskaya
ee49d13d89 Add tests on smart step into lambda 2015-07-23 11:54:43 +03:00
Natalia Ukhorskaya
c8f57e007c Fix smart step into functions with expression body 2015-07-23 11:54:42 +03:00
Natalia Ukhorskaya
6c9da53414 Fix smart step into in libraries 2015-07-23 11:54:41 +03:00
Natalia Ukhorskaya
b76b251489 SmartStepInto: render kotlin functions properly 2015-07-23 11:54:40 +03:00
Natalia Ukhorskaya
e4d5984cf0 Descriptor renderer: add option to render function without return type 2015-07-23 11:54:40 +03:00
Natalia Ukhorskaya
346039d262 Stepping: do not use MockSourcePosition in production code 2015-07-23 11:54:39 +03:00
Natalia Ukhorskaya
d8e0d77b66 Rewrite smart step into kotlin functions, do not use MethodFilter for java because it doesn't work for libraries 2015-07-23 11:54:38 +03:00
Natalia Ukhorskaya
d75c21a5a7 Smart step into function literal 2015-07-23 11:54:37 +03:00
Natalia Ukhorskaya
f7e35fab42 Minor: extract class 2015-07-23 11:54:36 +03:00
Natalia Ukhorskaya
488a4b6680 Minor: move classes 2015-07-23 11:54:36 +03:00
Natalia Ukhorskaya
4f238a44c3 Minor: extract class to separate file 2015-07-23 11:54:35 +03:00
Natalia Ukhorskaya
bf4e3bdac9 Minor: fix warnings in KotlinSmartStepIntoHandler 2015-07-23 11:54:34 +03:00
Natalia Ukhorskaya
2121f707ab Fix completion for codeFragments on functions with expression body 2015-07-23 11:54:33 +03:00
Natalia Ukhorskaya
86c7d11750 Debugger: do not create codeFragments with context of PsiFile 2015-07-23 11:54:32 +03:00
Alexander Udalov
74ed3b9562 Provide equals/hashCode for Kotlin light classes
KotlinLightClassForExplicitDeclaration already had equals/hashCode, but the
other three implementations of KotlinLightClass did not; this resulted in type
mismatch errors in Java code where the signatures of a super method and the
corresponding sub method wouldn't match because types of parameters were
different

 #KT-8543 Fixed
2015-07-23 03:51:50 +03:00
Alexander Udalov
4af0ed822f Minor, improve comment about ReflectProperties usefulness 2015-07-23 03:51:49 +03:00
Alexander Udalov
83bcfd090c Delete obsolete comment at RuntimeSourceElementFactory
Source elements are now used for Kotlin->Java reflection object mapping,
get/set of reflected properties, invoke of reflected functions, etc.
2015-07-23 03:51:49 +03:00
Valentin Kipyatkov
153316c313 Changes on code review 2015-07-22 21:16:15 +03:00
Valentin Kipyatkov
851057a9ef Highlighting duplicated and redandant *-imports as unused 2015-07-22 21:16:15 +03:00
Valentin Kipyatkov
feccee2c3e Added quickfix to enable optimize imports on the fly 2015-07-22 21:16:14 +03:00
Valentin Kipyatkov
2f438d0722 Errors in import list do not prevent from on-the-fly optimization - unresolved imports can be removed automatically 2015-07-22 21:16:14 +03:00
Valentin Kipyatkov
9c03661ce5 Rewritten UnusedImportInspection to not use buildVisitor method and to not crash on non-Kotlin files 2015-07-22 21:16:13 +03:00
Valentin Kipyatkov
edcb330281 Corrected/removed tests related to on-the-fly import optimization 2015-07-22 21:16:13 +03:00
Valentin Kipyatkov
b612e7a6b0 On-the-fly import optimization 2015-07-22 21:16:12 +03:00
Valentin Kipyatkov
8793c6fb76 Lowered intention priority 2015-07-22 21:16:12 +03:00
Valentin Kipyatkov
1324ce5928 Added quickfix on unused import 2015-07-22 21:16:11 +03:00
Valentin Kipyatkov
af192698ed Imports from current package are redundant too 2015-07-22 21:11:00 +03:00
Valentin Kipyatkov
68dec99ad7 KT-8389 Meaningless self-import insterted on "optimize imports"
#KT-8389 Fixed
2015-07-22 21:11:00 +03:00
Valentin Kipyatkov
344529a09a Fixed test 2015-07-22 21:11:00 +03:00
Valentin Kipyatkov
e5d8eecc9d Unused import highlighting
#KT-5236 Fixed
2015-07-22 21:11:00 +03:00
Valentin Kipyatkov
8c02ce73a4 Corrections on code review 2015-07-22 21:06:14 +03:00
Valentin Kipyatkov
2ad981d5c9 Smart completion: don't use outer call's expected type too much 2015-07-22 21:06:14 +03:00
Valentin Kipyatkov
a5384cdc28 Smart completion works for cases when no exact type known (generic parameter substitution is not known) 2015-07-22 21:06:13 +03:00
Valentin Kipyatkov
7b0b2d38c5 KT-8560 Smart completion for lambda value and more in smart completion
#KT-8560 Fixed
2015-07-22 21:04:30 +03:00
Mikhail Glukhikh
f551d64ea2 Refactoring: AnnotationTarget / AnnotationRetention renamed to KotlinTarget / KotlinRetention
(for not clashing with the same built-in classes)
2015-07-22 19:01:25 +03:00
Mikhail Glukhikh
414c44ade5 Make retention of 'kotlin.annotation.annotation' to SOURCE. Serialize / deserialize it instead. Some fixed tests. 2015-07-22 19:00:51 +03:00
Mikhail Glukhikh
11f87e6ca1 No more java Target / Retention loaded. Render java Retention / Target. Related test changes. 2015-07-22 19:00:39 +03:00
Mikhail Glukhikh
c2480d1183 Java to Kotlin annotation retention mapping + new test + JvmLoader test adaptation 2015-07-22 19:00:26 +03:00
Mikhail Glukhikh
c3c02e49c9 Retention for 'kotlin.throws' 2015-07-22 18:58:21 +03:00
Nikolay Krasko
bab01f3822 Use partial resolve for getting annotation fqn
#KT-8557 In Progress
2015-07-22 12:59:49 +03:00
Nikolay Krasko
cbd4b6e204 Additional resolve for annotation on top level classes 2015-07-22 12:59:48 +03:00
Nikolay Krasko
7b85f88dfd Minor: remove commented code 2015-07-22 12:59:47 +03:00
Dmitry Petrov
0ca5cc63e0 Fix accidentally pushed compiler.xml 2015-07-22 09:59:51 +03:00
Valentin Kipyatkov
bddcd58665 Fixed test 2015-07-22 09:55:32 +03:00
Valentin Kipyatkov
10b405f961 Merge branch 'rr/valentin/for-loop-indices' 2015-07-22 09:48:18 +03:00
Zalim Bashorov
679d5fe496 Introduce UsageCollector 2015-07-21 22:27:27 +03:00
Zalim Bashorov
91b87f41bc incremental.cache -> incremental.components; IncrementalCacheProvider -> IncrementalCompilationComponents 2015-07-21 22:27:26 +03:00
Zalim Bashorov
1a96b45f27 To avoid NoSuchMethodError when overriden method declare more specific return type and the super method has an argument with default value (KT-5785) 2015-07-21 22:27:26 +03:00
Zalim Bashorov
df4f43267b Provide location parameter in delegations 2015-07-21 22:27:26 +03:00
Zalim Bashorov
41449c107e Location.NOWHERE -> UsageLocation.NO_LOCATION 2015-07-21 22:27:25 +03:00
Zalim Bashorov
e2e3520c3d Add location parameter to JetScope::getClassifier 2015-07-21 22:27:25 +03:00
Zalim Bashorov
0f92036353 Add location parameter to JetScope::getFunctions 2015-07-21 22:27:25 +03:00
Zalim Bashorov
f79155df97 Add location parameter to JetScope::getProperties 2015-07-21 22:27:24 +03:00
Zalim Bashorov
2d2d510ef0 Introduce Location class to provide usage information in scopes 2015-07-21 22:27:24 +03:00
Stanislav Erokhin
8c912fdb6d Fixed compilation 2015-07-21 21:59:17 +03:00
Stanislav Erokhin
47be8a7f06 Optimized equals method for TypeConstructor 2015-07-21 21:50:28 +03:00
Stanislav Erokhin
9e36e5a8b1 Not store call to resolutionResultsCache in INDEPENDENT mode 2015-07-21 21:50:27 +03:00
Stanislav Erokhin
f802d79305 Minor. move method 2015-07-21 21:50:27 +03:00
Pavel V. Talanov
edc3755b91 Do not build light classes for decompiled enum entries 2015-07-21 20:52:44 +03:00
Pavel V. Talanov
4e0d2bc23c CompileTimeConstantUtils: use getConstant instead of evaluate
Hacky way to avoid passing builtins into this code
2015-07-21 20:52:43 +03:00
Pavel V. Talanov
855e3d2bf4 Inject ConstantExpressionEvaluator in BasicExpressionTypingVisitor via ExpressionTypingComponents 2015-07-21 20:52:42 +03:00
Pavel V. Talanov
add8387141 Fix some problems with jsCode function
1. Fix a bug in frontend when passing non-String constant led to exception
2. Fix a bug in backend when passing non-JetStringTeplate string constant led to exception
3. Avoid recomputing constant argument in backend
2015-07-21 20:52:42 +03:00
Pavel V. Talanov
b4825ada69 Refactor ExpressionTypingVisitorDispatcher
Inject in in ExpressionTypingServices
2015-07-21 20:52:41 +03:00
Dmitry Jemerov
3012815f5f create KotlinReferenceUsageInfo in read action 2015-07-21 18:26:47 +02:00
Alexander Udalov
90d2a0dd3c Revert incorrect change to .idea/compiler.xml 2015-07-21 19:12:06 +03:00
Dmitry Petrov
6437a4bdc6 Support overload ambiguity resolution for callable references by expected type.
Resolve callable references taking into account expected callable types.

This affects call resolution procedure (resolve 'foo' in for 'foo(::bar)') similar to the approach used for function literals:

* During "shape arguments" phase of call resolution, callable references are resolved in independent context without expected type. If the callable reference is ambiguous, its shape type is a function placeholder type without parameter types and return type information. Otherwise, it is a reflection type for the resolved function or property. Upper-level call is resolved without taking into account ambiguous callable references.

* During "complete call" phase of call resolution, resolve callable reference arguments to actual descriptors (if possible), and update constraint system for the given call accordingly.

 #KT-6982 Fixed
 #KT-5780 Fixed
2015-07-21 18:33:15 +03:00
Dmitry Jemerov
b3a2ee2148 delete KDoc Maven plugin 2015-07-21 16:48:38 +02:00
Dmitry Jemerov
b791ea03a9 code cleanup: cli-common module 2015-07-21 16:21:48 +02:00
Dmitry Jemerov
aa1f6f2252 code cleanup: core modules 2015-07-21 16:21:45 +02:00
Dmitry Jemerov
6a6f369e5d code cleanup: plugin-api module 2015-07-21 16:20:56 +02:00
Dmitry Jemerov
43d2af166e code cleanup: light-classes module 2015-07-21 16:20:56 +02:00
Dmitry Jemerov
a73df901ae code cleanup: frontend.java module 2015-07-21 16:20:55 +02:00
Dmitry Jemerov
6bf934b472 code cleanup: frontend module 2015-07-21 16:20:51 +02:00
Dmitry Jemerov
e6776ebd8e code cleanup: container module 2015-07-21 16:20:12 +02:00
Dmitry Jemerov
7c2b2dcc6a code cleanup: backend-common, cli modules 2015-07-21 16:20:11 +02:00
Dmitry Jemerov
7db1650149 code cleanup: ant, backend modules 2015-07-21 16:20:10 +02:00
Dmitry Jemerov
af722c8acd code cleanup: j2k module 2015-07-21 16:20:09 +02:00
Valentin Kipyatkov
e05c20b5c0 Completion: fixed ordering for packages + exclude for package items supported too 2015-07-21 16:00:10 +03:00
Valentin Kipyatkov
ace38ac57f Fixed completion of explicitly imported non-top level packages broken by optimization before 2015-07-21 16:00:10 +03:00
Valentin Kipyatkov
4cfe92f1e5 Renamed method 2015-07-21 16:00:10 +03:00
Valentin Kipyatkov
14b63759a9 Added comment 2015-07-21 16:00:10 +03:00
Valentin Kipyatkov
3c289ade82 Removed unused method 2015-07-21 16:00:10 +03:00
Valentin Kipyatkov
e934d7166b DescriptorKindFilter: more correct filtering of kind mask from excludes 2015-07-21 16:00:09 +03:00
Valentin Kipyatkov
82cd58a556 Restored live template but made it more useful 2015-07-21 15:55:57 +03:00
Mikhail Glukhikh
94a00540be Targeting / retention for a set of standard annotations, some inapplicable annotation checks replaced with target check, some fixed tests 2015-07-21 15:36:53 +03:00
Dmitry Jemerov
a75daf85e2 code cleanup: 'idea' module 2015-07-21 14:26:20 +02:00
Dmitry Jemerov
c718b6f9a3 code cleanup: rest of small modules under 'idea' 2015-07-21 14:26:19 +02:00
Valentin Kipyatkov
16ae9e3861 More consistent intention texts 2 2015-07-21 15:26:18 +03:00
Dmitry Jemerov
9142d48e81 code cleanup: eval4j, ide-common, idea-analysis 2015-07-21 14:26:18 +02:00
Mikhail Glukhikh
9e7a67fabf Warning about java.lang.annotation.Target annotation usage 2015-07-21 15:20:37 +03:00
Mikhail Glukhikh
cf26310042 Java to Kotlin annotation target mapping: relevant fix for J2K 2015-07-21 15:20:34 +03:00
Mikhail Glukhikh
1309c1f95f Annotation mapper is introduced to map java annotation targets to kotlin targets + a set of new / fixed tests 2015-07-21 15:20:31 +03:00
Denis Zharkov
3ec00114c0 Check type of elvis with expected type info
#KT-6713
2015-07-21 15:16:06 +03:00
Denis Zharkov
53edb83a56 Minor. More strict precondition for SAM adapter creation
Descriptor should be initialized before creating SAM adapter
2015-07-21 15:16:06 +03:00
Denis Zharkov
58e7923218 Use substituted return type for SAM adapeter of constructor
#KT-7282 Fixed
2015-07-21 15:16:06 +03:00
Denis Zharkov
97af85da9c Change default upper bound of Java type parameters to Any!
#KT-7672 Fixed
2015-07-21 15:16:05 +03:00
Valentin Kipyatkov
6339ad4ec6 Added inspection based on RemoveForLoopIndicesIntention 2015-07-21 14:59:22 +03:00
Valentin Kipyatkov
6b0fc8391f Lot of code corrections in RemoveForLoopIndicesIntention 2015-07-21 14:59:21 +03:00
Valentin Kipyatkov
e4cdcadbc7 Reordered methods 2015-07-21 14:59:21 +03:00
Valentin Kipyatkov
d5b5245dc8 No need to create template with one field 2015-07-21 14:59:20 +03:00
Valentin Kipyatkov
7611f480c1 More consistent intention texts 2015-07-21 14:59:20 +03:00
Valentin Kipyatkov
fb430575c0 AddForLoopIndicesIntention made low priority 2015-07-21 14:59:19 +03:00
Valentin Kipyatkov
511bb133f5 Reordered methods 2015-07-21 14:59:19 +03:00
Valentin Kipyatkov
e046dc967c Rewritten AddForLoopIndicesIntention to not use by text generation & checks 2015-07-21 14:59:10 +03:00
Valentin Kipyatkov
8ffc1bb3a6 One more test added 2015-07-21 14:59:09 +03:00
Valentin Kipyatkov
0c9401c953 Renamed and correct test data 2015-07-21 14:59:08 +03:00
Alexander Udalov
0e69ebb288 Improve stack traces of exceptions thrown by LockBasedStorageManager
Drop leading frames which only contain memoized functions' and lazy values'
invokes, so that the first frame corresponds to the meaningful place in the
code
2015-07-21 13:32:26 +03:00
Alexander Udalov
b5763e311f Minor, unworkaround the fixed issue 2015-07-21 13:32:26 +03:00
Alexander Udalov
c116b6c868 Don't highlight injection points as unused in project 2015-07-21 13:31:44 +03:00
Natalia Ukhorskaya
ce46982991 Debugger: do not try to computeSourcePosition for not kotlin variables 2015-07-21 13:04:38 +03:00
Natalia Ukhorskaya
fbe2d77df5 Temporary switch off KotlinAndroidExtensions plugin during IDEA debug configuration start 2015-07-21 13:04:37 +03:00
Natalia Ukhorskaya
b1762ac10a Remove unused contentEntry parameter from JetLightProjectDescriptor 2015-07-21 13:04:36 +03:00
Valentin Kipyatkov
dee6bb2f49 Fixed test 2015-07-21 11:39:59 +03:00
Valentin Kipyatkov
a81ed335d0 Renamed test data folders 2015-07-21 11:37:19 +03:00
Valentin Kipyatkov
9ad04a1a26 Merge branch 'master' into ElliotM-for-loop-indices 2015-07-21 11:25:49 +03:00
Valentin Kipyatkov
0d09c55bac JetPackageDirective made not JetExpression 2015-07-21 08:36:36 +03:00
Valentin Kipyatkov
fac55b60fa Lazy computation of smart cast types for receivers in call resolve 2015-07-21 08:32:52 +03:00
Valentin Kipyatkov
4ec26de2a8 Changes on code review 2015-07-21 08:32:51 +03:00
Valentin Kipyatkov
2ab8f9de8b Fixed compilation 2015-07-21 08:32:51 +03:00
Valentin Kipyatkov
31b7c33fa8 No need to scan base classes 2015-07-21 08:32:51 +03:00
Valentin Kipyatkov
1c52f8a524 Fixed synthetic properties for method inherited from two bases 2015-07-21 08:32:51 +03:00
Valentin Kipyatkov
612c009f6b Synthetic properties: correct behaviour for method hierarchies 2015-07-21 08:32:51 +03:00
Valentin Kipyatkov
367e294452 No synthetic properties in java class for methods inherited from Kotlin 2015-07-21 08:32:50 +03:00
Valentin Kipyatkov
e0e7044032 Synthetic properties: fixed completion and inspection for generic class
+ fixed KT-8539 No completion of generic extension function for <*> type arguments

 #KT-8539 Fixed
2015-07-21 08:32:50 +03:00
Valentin Kipyatkov
d2fb7381ce Tested one more case 2015-07-21 08:32:50 +03:00
Valentin Kipyatkov
4a8adacedd Changed policy for properties from methods like "getURL()"" 2015-07-21 08:32:50 +03:00
Valentin Kipyatkov
0ac990e1a0 More tests for smart casts 2015-07-21 08:32:50 +03:00
Valentin Kipyatkov
23cfe88b71 KT-8530 Synthetic properties doesn't work with smart casts
#KT-8530 Fixed
2015-07-21 08:32:50 +03:00
Valentin Kipyatkov
b6027a0efe Changed synthetic properties naming for getters starting with "is" 2015-07-21 08:32:49 +03:00
Valentin Kipyatkov
cf2aa73ee6 Fixed wrong test data 2015-07-21 08:32:49 +03:00
Valentin Kipyatkov
08ac0ae7a0 Renamed classes 2015-07-21 08:32:49 +03:00
Ilya Ryzhenkov
eb97005cb5 Avoid creating SimpleResolutionContext in ConstantExpressionEvaluator to updateNumberType 2015-07-20 20:58:20 +03:00
Ilya Ryzhenkov
84236992cb Replace Injected properties with constructor parameters when it doesn't cause cycles 2015-07-20 20:58:19 +03:00
Ilya Ryzhenkov
76b9ac0f63 FileScopeProviderImpl dependencies 2015-07-20 20:58:18 +03:00
Ilya Ryzhenkov
04e71234a1 LocalClassifierAnalyzer dependencies 2015-07-20 20:58:17 +03:00
Ilya Ryzhenkov
5398de22f9 Container structure dump facilities. 2015-07-20 20:58:16 +03:00
Dmitry Jemerov
7192bc8798 restore fix for highlight usages which was lost during merge against J2K 2015-07-20 18:51:36 +02:00
Dmitry Jemerov
708513ce4c optimize imports 2015-07-20 18:32:13 +02:00
Dmitry Jemerov
3718a7dd44 code cleanup for JS modules 2015-07-20 18:32:05 +02:00
Natalia Ukhorskaya
973fa21fe9 Include snappy-in-java-0.3.1.jar in kotlin-compiler 2015-07-20 12:56:43 +03:00
Ilya Gorbunov
78b4c13d8f apply() got to smart completion where this was expected. 2015-07-20 02:16:38 +03:00
Ilya Gorbunov
1857725629 Unify documentation for scope functions. 2015-07-20 02:16:26 +03:00
Ilya Gorbunov
8a578a46f6 Introduce apply() scope function.
#KT-6903 Fixed
2015-07-20 02:06:38 +03:00
Ilya Gorbunov
3e231f2e44 Generalize run() scope function.
#KT-5235 Fixed
2015-07-20 02:05:22 +03:00
Ilya Gorbunov
21ee2c1cfd Cleanup Array.plus usages after bootstrap. 2015-07-20 01:55:13 +03:00
Alexey Sedunov
41aed73ebd Find Usages: Copy options used for highlighting (to prevent spoiling of default search scope used in the full usage search) 2015-07-17 21:19:28 +03:00
Nikolay Krasko
87e94aa20b Minor test data update after moving to new idea 2015-07-17 20:59:08 +03:00
Nikolay Krasko
cac62fe4c8 Test fix after idea update 2015-07-17 20:59:07 +03:00
Nikolay Krasko
f3c2de5287 Update to idea 142.3230.1 2015-07-17 20:59:05 +03:00
Nikolay Krasko
9648338b19 Enum with interface keywords leads to fail in DeclarationChecker 2015-07-17 20:59:03 +03:00
Nikolay Krasko
71b406d792 Fix class kind detector: prioritize enum over annotations. Introduce new error about enum annotations classes. 2015-07-17 20:59:02 +03:00
Pavel V. Talanov
b2b8f1aabb Minor: prettify converted code a little bit 2015-07-17 19:21:25 +03:00
Pavel V. Talanov
aae8ccfd57 Refactor: AnnotationSerializer does not depend on bultins 2015-07-17 19:21:24 +03:00
Pavel V. Talanov
251ebc7ca8 Inject ConstantExpressionEvaluator to some points of usage 2015-07-17 19:21:24 +03:00
Pavel V. Talanov
92161370f1 Refactor: Make some of utils in ConstantExpressionEvaluator non static 2015-07-17 19:21:23 +03:00
Pavel V. Talanov
855bff39fe Refactor: move annotation arguments resolve related utils from AnnotationResolver to ConstantExpressionEvaluator 2015-07-17 19:21:23 +03:00
Pavel V. Talanov
a84da2bb0c Minor: move utilities closer to their only usage 2015-07-17 19:21:22 +03:00
Pavel V. Talanov
f2016c8033 Minor: remove usage of KotlinBuiltins.getInstance() 2015-07-17 19:21:22 +03:00
Pavel V. Talanov
5ba2cda95d Minor refactor: Extract visitor from ConstantExpressionEvaluator into a separate class 2015-07-17 19:21:21 +03:00
Nikolay Krasko
67492ad5dd Disable kotlin sdk annotation check
#KT-7517 Fixed
2015-07-17 16:16:41 +03:00
Nikolay Krasko
9366652537 Disable annotation check for Android Studio and non-android sdk
Android studio always creates that sdk from scratch so no configuration will be stored after restart (KT-7517)
2015-07-17 16:16:40 +03:00
Pavel V. Talanov
3412febe59 Minor: better message in assertion 2015-07-17 16:06:17 +03:00
Nikolay Krasko
e7f50982ca Merge pull request #726 from flire/master
Added export for completion visibility filter tests
2015-07-17 15:19:37 +03:00
Mikhail Glukhikh
0d0fc2802f Built-in test fixed 2015-07-17 13:26:49 +03:00
Mikhail Glukhikh
af5e7f58da Implementation of Kotlin's 'target' annotation mapping to Java's 'Target' annotation + tests 2015-07-17 12:05:27 +03:00
Mikhail Glukhikh
2a1058ed63 Some usages of JetClassOrObject.isAnnotation() are removed. Related test fixed. 2015-07-17 12:05:19 +03:00
Mikhail Glukhikh
7f12965741 Suppress test corrected 2015-07-17 12:05:15 +03:00
Ilya Gorbunov
2c396cf28e Add clarification about the lazy nature of Sequence.plus and Sequence.minus operations. 2015-07-17 10:54:54 +03:00
Ilya Gorbunov
8ac613dd67 Fix docs for String.partition
#KT-8493 Fixed
2015-07-17 10:54:40 +03:00
Ilya Gorbunov
fbd0c16551 Merging arrays without creating iterators. 2015-07-17 10:54:28 +03:00
Ilya Gorbunov
b5b6e2e598 Usages of Array.plus: return type changed. 2015-07-17 10:54:16 +03:00
Ilya Gorbunov
25e5172591 Rewrite test for overloading plus not to depend on stdlib classes and methods. 2015-07-17 10:54:03 +03:00
Ilya Gorbunov
35959c49b3 Cast Set to Collection to choose right overload of plus. 2015-07-17 10:53:50 +03:00
Ilya Gorbunov
690a536734 Tests for minus operation for collections, sets, iterables and sequences. 2015-07-17 10:53:31 +03:00
Ilya Gorbunov
9d120dcd44 Provide minus and minusAssign for iterables, collections, sets, sequences.
removeAll and retainAll special case optimizations.
#KT-3721 Fixed
#KT-7466 Fixed
2015-07-17 10:53:18 +03:00
Ilya Gorbunov
048a3ebcc1 Implement plus for sequence as operand and refactor plus tests. 2015-07-17 10:53:05 +03:00
Ilya Gorbunov
0ee960da50 Change removeAll extension implementation to match the contract of member removeAll.
Add retainAll for sequences.
2015-07-17 10:52:51 +03:00
Ilya Gorbunov
ecba29a08a Reword contract of Collection's removeAll and retainAll to emphasize that the criteria to remove or retain element is the containment in the specified collection.
Collection.remove(element): clarify docs.
2015-07-17 10:52:38 +03:00
Ilya Gorbunov
2c28c5a8e8 Define plusAssign operator for mutable collections.
#KT-4020 Fixed
2015-07-17 10:52:25 +03:00
Ilya Gorbunov
dd945f4d1a Tests for plus on collections, sets, sequences. 2015-07-17 10:52:12 +03:00
Ilya Gorbunov
0f340c8f62 Make primitive array tests run both in JVM and JS 2015-07-17 10:52:00 +03:00
Ilya Gorbunov
6507cf391b Tests for array's copyOf and plus. 2015-07-17 10:51:49 +03:00
Ilya Gorbunov
a7bf415ad5 plus: do not generate ambiguos overloads. 2015-07-17 10:51:35 +03:00
Ilya Gorbunov
d89af24d6c Variance of arrays sorted out.
Use concat for array + 1 in JS.
2015-07-17 10:51:22 +03:00
Ilya Gorbunov
7866184eb6 Array.plus — different implementations for JVM and JS.
Array.copyOf, copyOfRange available in JS.
2015-07-17 10:51:09 +03:00
Ilya Gorbunov
c883df544c Make plus operation to be strict binary or right external binary for Sets and Arrays. 2015-07-17 10:50:58 +03:00
Ilya Gorbunov
b30a4eb75b Fix maven build: remove unused kdoc imports 2015-07-17 10:26:25 +03:00
Pavel V. Talanov
a147497650 Minor: move all constant value implementation into one file 2015-07-16 18:38:52 +03:00
Dmitry Tishchenko
2fbceb3e1d Added export for completion visibility filter tests 2015-07-16 18:21:32 +03:00
Pavel V. Talanov
2896ec67ba Support synthetic java properties in REPL
Use brand new iterable injection
2015-07-16 18:05:44 +03:00
Ilya Ryzhenkov
07139879cd Implement injection of Iterable<T> and some improvements in generic handling in general 2015-07-16 18:05:43 +03:00
Nikolay Krasko
0c41f4f736 Remove state from android tests 2015-07-16 18:02:32 +03:00
Nikolay Krasko
2a3337907e Avoid storing state in consistency tests 2015-07-16 18:02:31 +03:00
Nikolay Krasko
22f7fca53f Stop debug process 2015-07-16 18:02:30 +03:00
Nikolay Krasko
e03a44d971 Remove state from JetChangeSignatureTests 2015-07-16 18:02:29 +03:00
Nikolay Krasko
fbd46a3ca3 Drop state from debugger tests 2015-07-16 18:02:28 +03:00
Nikolay Krasko
fa4fa3295d Setup needs root access 2015-07-16 18:02:27 +03:00
Nikolay Krasko
12c7c790ec Update to idea 142.3050.1 2015-07-16 18:02:26 +03:00
Nikolay Krasko
796e05983c Move kotlin runtime jars to separate folder and attach them during debug idea start
Now we only attach runtime. It will be possible to attach two jars when it becomes possible to separate paths in system-independent way.
2015-07-16 18:02:25 +03:00
Stanislav Erokhin
d5f7fc52e0 Minor. Remove unnecessary trace parameter 2015-07-16 17:26:16 +03:00
Stanislav Erokhin
97d41be42e Support lazy perform for candidates 2015-07-16 17:26:16 +03:00
Stanislav Erokhin
7038b9d849 Add correct way for CallResolver to process CandidateResolveMode 2015-07-16 17:26:15 +03:00
Stanislav Erokhin
b00dab0db5 Minor. Created CandidateResolveMode in CallCandidateResolutionContext. 2015-07-16 17:26:14 +03:00
Stanislav Erokhin
3c56787514 Minor. .java -> .kt 2015-07-16 17:26:14 +03:00
Stanislav Erokhin
ce80773419 Minor. Convert CandidateResolver to kt 2015-07-16 17:26:14 +03:00
Stanislav Erokhin
fdbd5efd1c Minor. remove static keywords 2015-07-16 17:26:13 +03:00
Dmitry Jemerov
649287b689 remove KDoc support in Kotlin Gradle plugin 2015-07-16 15:04:17 +02:00
Dmitry Jemerov
811f75f062 remove enclosing read action around the entire method references search, use more fine-grained read actions (KT-7917); more cleanup 2015-07-16 14:50:26 +02:00
Dmitry Jemerov
f0296bc1c1 KotlinFindMemberUsagesHandler: J2K and some cleanup 2015-07-16 14:50:25 +02:00
Dmitry Jemerov
c91b6dfe8b KotlinFindMemberUsagesHandler.java : rename to .kt 2015-07-16 14:50:24 +02:00
Dmitry Jemerov
fbf7fa7277 KotlinFindUsagesHandler: cleanup after J2K 2015-07-16 14:50:23 +02:00
Dmitry Jemerov
6b2ea56b76 KotlinFindUsagesHandler: J2K 2015-07-16 14:50:23 +02:00
Dmitry Jemerov
3966db3430 KotlinFindUsagesHandler: rename to .kt 2015-07-16 14:50:22 +02:00
Alexander Udalov
de94778846 Restore deprecated K*Function classes for compatibility
The code compiled with old compiler will work with the new runtime, but not
vice versa
2015-07-16 15:36:07 +03:00
Valentin Kipyatkov
4226b0b2b7 Better presentation for non-root packages in completion 2015-07-16 15:04:01 +03:00
Valentin Kipyatkov
16d503aed0 Even faster completion of root packages 2015-07-16 15:04:01 +03:00
Valentin Kipyatkov
136af1cd60 Optimization in completion: don't spend too much time calculating root packages 2015-07-16 15:04:00 +03:00
Valentin Kipyatkov
10b5942537 Formatting 2015-07-16 14:03:37 +03:00
Valentin Kipyatkov
c1b2ea0b48 More elegant way to achieve the same + fixed KT-7746 Top level package name completion does not work inside class body
#KT-7746 Fixed
2015-07-16 14:03:37 +03:00
Valentin Kipyatkov
82c9cd790e After dot completion optimization: do not ask for packages and classes when searching extensions 2015-07-16 14:03:37 +03:00
Valentin Kipyatkov
39e6237bb0 All JetReferenceExpression's should have a reference (see JetReferenceExpression.mainReference extension) - made JetPackageDirective not a JetReferenceExpression 2015-07-16 13:49:22 +03:00
Valentin Kipyatkov
53810c67db Changes on code review 2015-07-16 13:49:22 +03:00
Valentin Kipyatkov
867b0b5075 Renamed class 2015-07-16 13:49:22 +03:00
Pavel V. Talanov
a740b60134 Temporary workaround until iterable injection is supported in di
Synthetic accessors won't work in REPL until this is fixed
2015-07-16 13:49:21 +03:00
Valentin Kipyatkov
0cea5fc9b2 More informative presentation of synthetic properties in completion 2015-07-16 13:49:21 +03:00
Valentin Kipyatkov
d743924be9 Changed signatures 2015-07-16 13:49:21 +03:00
Valentin Kipyatkov
8f3650ebdb Minor 2015-07-16 13:49:21 +03:00
Valentin Kipyatkov
f5e7483d19 Renames 2015-07-16 13:49:21 +03:00
Valentin Kipyatkov
be5c0ea28b Renamed function 2015-07-16 13:49:21 +03:00
Valentin Kipyatkov
bae90e9c2b Perform and cache full resolve when partial is not supported 2015-07-16 13:49:20 +03:00
Valentin Kipyatkov
745bed74b2 Minor fix in partial body resolve 2015-07-16 13:49:20 +03:00
Valentin Kipyatkov
8d1499197e Fixed partial resolve caching to cache only for statements that are guaranteed to be processed 2015-07-16 13:49:20 +03:00
Valentin Kipyatkov
58f2d37d95 Changed element of additional resolve from single import to whole import list (as we resolve all imports anyway) 2015-07-16 13:49:20 +03:00
Valentin Kipyatkov
ea25e5d02a Fixed partial resolve for default parameter values 2015-07-16 13:49:20 +03:00
Valentin Kipyatkov
02de67417a Minor code refactorings 2015-07-16 13:49:20 +03:00
Valentin Kipyatkov
e612787833 More advanced partial body resolve caching 2015-07-16 13:49:19 +03:00
Valentin Kipyatkov
53e751be1f Caching of partial body resolve 2015-07-16 13:49:19 +03:00
Valentin Kipyatkov
077c8a82c7 Converted ResolveElementCache to Kotlin (step 2) 2015-07-16 13:49:19 +03:00
Valentin Kipyatkov
bf7afae805 Converted ResolveElementCache to Kotlin (step 1) 2015-07-16 13:49:19 +03:00
Valentin Kipyatkov
5735248be8 Fixed highlight usages 2015-07-16 13:49:19 +03:00
Valentin Kipyatkov
d1db0ce30a Fixed tests 2015-07-16 13:49:18 +03:00
Valentin Kipyatkov
27a23e8e07 Fixed package directive completion 2015-07-16 13:49:18 +03:00
Valentin Kipyatkov
e52b524d9a Fixed rename of operator functions 2015-07-16 13:49:18 +03:00
Valentin Kipyatkov
28e9fbf9b8 Correct synthetic extensions for methods like "getURL" 2015-07-16 13:49:18 +03:00
Valentin Kipyatkov
22e631dda3 Naming with "is" supported for synthetic extensions 2015-07-16 13:49:18 +03:00
Valentin Kipyatkov
27b4960001 Fixed crash on searching constructor usages 2015-07-16 13:49:18 +03:00
Valentin Kipyatkov
283c8668f5 Don't use PsiElement.getReference() on JetElement 2015-07-16 13:49:17 +03:00
Valentin Kipyatkov
d8d00a83bb Separated references to get/set methods on synthetic extension usage into separate PsiReference's to avoid putting usages like "x++" into "Dynamic usages" group 2015-07-16 13:49:17 +03:00
Valentin Kipyatkov
f53a0b0536 Converted JetNameReferenceExpression to Kotlin 2015-07-16 13:49:17 +03:00
Valentin Kipyatkov
fac15d2933 Minor simplification in CompletionSession 2015-07-16 13:49:17 +03:00
Valentin Kipyatkov
42678bc79a Minor optimization 2015-07-16 13:49:17 +03:00
Valentin Kipyatkov
962bef6584 Moved methods 2015-07-16 13:49:17 +03:00
Valentin Kipyatkov
a08fe96a8b Renamed methods 2015-07-16 13:49:16 +03:00
Valentin Kipyatkov
b33202d32d Hiding getters and setters from completion 2015-07-16 13:49:16 +03:00
Valentin Kipyatkov
3faa0a193d Removed obsolete comment 2015-07-16 13:49:16 +03:00
Valentin Kipyatkov
92349e41ec Reordered parameters 2015-07-16 13:49:16 +03:00
Valentin Kipyatkov
63614c5892 Initial implementation of renaming extension property usages on getter or setter rename 2015-07-16 13:49:16 +03:00
Valentin Kipyatkov
13f0d3ca23 Initial implementation of usage search for get/set methods in form of synthetic extension 2015-07-16 13:49:16 +03:00
Valentin Kipyatkov
73dd4a214e Reference resolve from synthetic extension usages to get/set-methods 2015-07-16 13:49:15 +03:00
Valentin Kipyatkov
2ec6f50402 Set method should not accept vararg 2015-07-16 13:49:15 +03:00
Valentin Kipyatkov
82f1eafa0b No synthetic properties of type Unit 2015-07-16 13:49:15 +03:00
Valentin Kipyatkov
bfdc74ce74 Intention&inspection to use synthetic property instead of get/set method call 2015-07-16 13:49:15 +03:00
Valentin Kipyatkov
a014f5c8db No synthetic properties with incorrect names 2015-07-16 13:49:15 +03:00
Valentin Kipyatkov
fa02a15212 One more test for completion 2015-07-16 13:49:14 +03:00
Valentin Kipyatkov
9b3cbc6f25 Fixed completion for safe call 2015-07-16 13:49:14 +03:00
Valentin Kipyatkov
48b163758f Fixed caching 2015-07-16 13:49:14 +03:00
Valentin Kipyatkov
46a512215e Used utility 2015-07-16 13:49:14 +03:00
Valentin Kipyatkov
434e3ab38b Moved utility functions for JetType from IDE to core 2015-07-16 13:49:14 +03:00
Valentin Kipyatkov
16c4f5bedd Renamed a class 2015-07-16 13:49:14 +03:00
Valentin Kipyatkov
8bde9b098a Code refactoring 2015-07-16 13:49:13 +03:00
Valentin Kipyatkov
17442617bb Synthetic extensions suggested in completion 2015-07-16 13:49:13 +03:00
Valentin Kipyatkov
08754b9fc0 Support for synthetic extensions in codegen 2015-07-16 13:49:13 +03:00
Valentin Kipyatkov
2e351f3e4d Initial implementation of synthetic extensions resolve 2015-07-16 13:49:13 +03:00
Valentin Kipyatkov
c92b43c94b Added JetScope.getSyntheticExtensionProperties() 2015-07-16 13:49:13 +03:00
Natalia Ukhorskaya
e2fa9397c8 Debugger: fix context element in SourcePositionProvider 2015-07-16 13:09:45 +03:00
Natalia Ukhorskaya
98da75c768 Debugger: check that file isn't shorter than breakpoint line (ex. after deleting some lines in file during debug) 2015-07-16 13:09:43 +03:00
Natalia Ukhorskaya
03de31f1b6 Debugger: do not throw assert when context for codeFragment is null (ex. when file was changed and psi isn't valid any more) 2015-07-16 13:09:41 +03:00
Natalia Ukhorskaya
ec3c667f38 Debugger: allow Evaluate Expression in context of File (for some synthetic methods or when file was changed during debug and breakpoint line no longer match the actual line) 2015-07-16 13:09:26 +03:00
Natalia Ukhorskaya
75edfa6527 Debugger: do not resolve symbols on breakpoint line in Evaluate Expression 2015-07-16 13:08:31 +03:00
Natalia Ukhorskaya
9a53142b26 Refactoring: move similar part for obtaining scope for codeFragment to JetCodeFragment 2015-07-16 13:04:04 +03:00
Natalia Ukhorskaya
fdfabebcce Fix debugger test on Java7 2015-07-16 10:24:33 +03:00
Pavel V. Talanov
c313887641 Split CompileTimeConstant into two entities
1. ConstantValue
	* just holds some value and its type
	* implementations for concrete constants
2. CompileTimeConstant
	* is only produced by ConstantExpressionEvaluator
	* has additional flags (canBeUsedInAnnotation etc)
	* has two implementations TypedCompileTimeConstant containing a constant value
		and IntegerValueConstant which does not have exact type
	* can be converted to ConstantValue

Adjustt usages to use ConstantValue if flags are not needed
Add tests for some uncovered cases
2015-07-16 02:28:05 +03:00
Pavel V. Talanov
155f00578d Builtins are passed into builtins module
Fixes circular dependency
2015-07-15 21:09:59 +03:00
Pavel V. Talanov
5dc5d77e60 Inject builtins in constants 2015-07-15 21:09:52 +03:00
Pavel V. Talanov
ea1a85e78c Introduce CompileTimeConstantFactory 2015-07-15 21:09:40 +03:00
Pavel V. Talanov
b0a4520710 Refactor compile constants to reduce boolean parameter hell 2015-07-15 20:57:02 +03:00
Pavel V. Talanov
f97767e159 Drop ArrayValue redundant constructor parameter 2015-07-15 20:56:55 +03:00
Pavel V. Talanov
ae88dd3f1f Convert compile constant classes to kotlin: prettify 2015-07-15 20:56:48 +03:00
Pavel V. Talanov
0369de86c7 Convert compile constant classes to kotlin: j2k 2015-07-15 20:56:41 +03:00
Pavel V. Talanov
a6180611f4 Convert compile constant classes to kotlin: rename files 2015-07-15 19:44:18 +03:00
Pavel V. Talanov
7fef1c4613 Minor: inject builtIns to CallCompleter 2015-07-15 19:44:17 +03:00
Pavel V. Talanov
44dffa7bbc Minor: remove a couple of usages of KotlinBuiltIns.getInstance() 2015-07-15 19:44:17 +03:00
Mikhail Glukhikh
c19785252c Sealed classes now are decompiled correctly + test #EA-70762 Fixed 2015-07-15 17:55:16 +03:00
Ilya Gorbunov
8b325e8a30 Make ByteArray.inputStream a method, not a property.
#KT-8360 Fixed
2015-07-15 17:48:56 +03:00
Ilya Gorbunov
4de5dd9aeb Drop deprecated FunctionalList, FunctionalQueue.
Remove dependency on FunctionalList from tests.
2015-07-15 17:45:56 +03:00
Ilya Gorbunov
0a320a13e5 Stdlib generators: change constants for Long: ZERO, ONE, -ONE. 2015-07-15 17:21:52 +03:00
Ilya Gorbunov
10c376975a Stdlib generators: refactor and eliminate warnings, add families of Sets and InvariantArrays, allow to specify custom signature for particular families. 2015-07-15 17:21:43 +03:00
Ilya Gorbunov
d1a12aa2a7 plus, plusAssign, minus, minusAssign for all possible parameter types for Maps.
#KT-6594 Fixed
2015-07-15 17:12:45 +03:00
Ilya Gorbunov
e080753dc2 Provide toMap and putAll for Arrays and Sequences of key-value pairs.
#KT-4166 Fixed
2015-07-15 17:12:43 +03:00
Ilya Gorbunov
96b79eebe7 asSequence returns empty sequence singleton for empty arrays and strings.
#KT-8450 Fixed
2015-07-15 17:08:27 +03:00
Valentin Kipyatkov
5f8a652a38 KT-4592 Parameter info shows signatures of inaccessible methods
#KT-4592 Fixed
2015-07-15 16:32:20 +03:00
Dmitry Jemerov
d34d54ba47 nicer looking action to create a new Kotlin file
#KT-8445 Fixed
2015-07-15 13:58:51 +02:00
Denis Zharkov
e82adc9d90 Drop unused Approximation type capabilities 2015-07-15 10:01:15 +03:00
Denis Zharkov
d19cb747be Emit not-null assertions for enhanced types 2015-07-15 10:01:14 +03:00
Denis Zharkov
e23c7f457b Preserve type annotations on type parameter when substituting
Subsitute(@A T, T:@B String) = @B @A String

Nullability when loading Java:
Subsitute(@NotNull T, T:String) = @NotNull String
Subsitute(@NotNull T, T:String!) = @NotNull String
Subsitute(@NotNull T, T:String?) = @NotNull String

Subsitute(@Nullable T, T:String) = @Nullable String?
Subsitute(@Nullable T, T:String!) = @Nullable String?
Subsitute(@Nullable T, T:String?) = @Nullable String?
2015-07-15 10:01:14 +03:00
Alexander Udalov
2b541a560e Make function references compiled with old compiler work with new runtime 2015-07-14 21:23:59 +03:00
Dmitry Jemerov
0295b13cc7 couple more tuple leftovers 2015-07-14 17:14:33 +02:00
Dmitry Jemerov
64860345e3 drop tuple type support from parser 2015-07-14 17:09:09 +02:00
Dmitry Jemerov
55c11539f8 drop tuples support from parser 2015-07-14 17:06:17 +02:00
Mikhail Glukhikh
a84fe53256 Minor refactoring of LookupElementsCollector 2015-07-14 16:25:11 +03:00
Mikhail Glukhikh
37b2e97e56 Rendering changed: "annotation class" is now just "class" (with kotlin.annotation.annotation if it's kotlin annotation).
A swarm of tests fixed accordingly.
2015-07-14 16:25:08 +03:00
Mikhail Glukhikh
0d2a81f098 Annotation target checking in front-end, a set of tests for different annotation targets, existing test fixes
No checks for erroneous annotations. Additional checks for identifiers.
2015-07-14 16:25:04 +03:00
Mikhail Glukhikh
609d696202 Annotations have now retention of "RUNTIME" by default. Java retention is generated as given by kotlin annotation. Annotation rendering changed.
Annotation arguments with default values are rendered as ... if renderDefaultAnnotationArguments is true.
Tests: java retention does not taken into account by Descriptor comparator.
Java retentinon changed to kotlin retention in some tests + one new test with java retention added.
More accurate tests for intentions in byte code (visibility controlled).
2015-07-14 16:25:01 +03:00
Mikhail Glukhikh
4a27b4d614 JetClassOrObject.isAnnotation() is deprecated 2015-07-14 16:24:59 +03:00
Mikhail Glukhikh
1eac4d67de "annotation" is now parsed as an identifier. It is no longer a soft keyword.
Sometimes it's allowed to parse "annotation" unescaped even if other annotations must be escaped.
A set of annotations and their options tests.
A swarm of existing tests fixed (mostly kotlin.annotation.annotation() added to txt-files).
STUB_VERSION increased. Some quick fixes slightly changed.
2015-07-14 16:24:55 +03:00
Mikhail Glukhikh
7a6e5f66bd Regression test: char + int = char 2015-07-14 16:24:52 +03:00
Mikhail Glukhikh
5126f01452 kotlin.annotation package with annotations "target" and "annotation" and enums AnnotationTarget and AnnotationRetention introduced.
Targets for existing built-in annotations.
Access to annotation package from packageFragmentProvider.
Documentation for all classes in the package.
2015-07-14 16:24:45 +03:00
Svetlana Isakova
b162a65e85 Changed the way the constraints are written in tests
SUBTYPE T Int -> T <: Int
2015-07-13 21:57:59 +03:00
Valentin Kipyatkov
d32ba08cb7 KT-8394 ReplaceWith for Delegates.lazy fails outside of stdlib
#KT-8394 Fixed
2015-07-13 19:41:42 +03:00
Evgeny Gerashchenko
1346d98bf3 Merge pull request #721 from JetBrains/rr/yole/unwhatever
don't use "whatever" as implementation of getFamilyName(), provide co…
2015-07-13 19:18:35 +03:00
Dmitry Jemerov
31f6405e07 don't use "whatever" as implementation of getFamilyName(), provide correct implementation instead 2015-07-13 18:11:44 +02:00
Ilya Gorbunov
4ad6a8e301 Ensure type of a stack value is coerced to the expected return type after the binary operation instruction with the different return type. 2015-07-13 17:27:37 +03:00
Zalim Bashorov
f7ccb3819e JS: don't pollute object with $metadata$
#KT-8126 Fixed
2015-07-13 15:52:57 +03:00
Alexander Udalov
4de2c5a5c8 Don't generate default no-args constructor for enums
#KT-8438 Fixed
2015-07-13 11:59:35 +03:00
Alexey Sedunov
064b03ca3f Minor: Suppress error message to fix compilation against Java 8 2015-07-11 14:10:36 +03:00
Alexey Sedunov
969183fbf3 Control-Flow: Move type predicate computation out of control-flow analysis 2015-07-10 21:09:07 +03:00
Alexey Sedunov
34cd2e0ac3 Refactoring: Replace factory functions with constructors 2015-07-10 21:09:06 +03:00
Alexander Udalov
290983687d Fix generation of bridges for lambdas
#KT-8447 Fixed
2015-07-10 20:10:16 +03:00
Dmitry Petrov
5dc28f1313 KT-7507 Check expected type for class literal expression 2015-07-10 20:10:15 +03:00
Dmitry Petrov
d540ff8890 KT-8206 java.lang.NoSuchFieldError: $kotlinClass for deprecated::class
Instantiate class literals for annotation classes as foreign.
2015-07-10 20:10:15 +03:00
Alexander Udalov
95f5d24988 Use a built-in marker class for Configure Kotlin action
This helps to get rid of the balloon which was shown in Kotlin project itself
because of the recent change where a source root was added to the module
'builtins', which doesn't have the class kotlin.jvm.internal.Intrinsics (the
'runtime.jvm' module does)
2015-07-10 20:10:15 +03:00
Alexander Udalov
670565b251 Wrap property reference instance before storing to static field 2015-07-10 20:10:14 +03:00
Alexander Udalov
16b5b95556 Test equals/hashCode/toString for function references 2015-07-10 20:10:14 +03:00
Alexander Udalov
f8815d9450 Test visibility of anonymous classes for callable references 2015-07-10 20:10:13 +03:00
Alexander Udalov
3b2be6212d Add some tests on Java property references 2015-07-10 20:10:13 +03:00
Alexander Udalov
c62f19ee82 Move getterName/setterName to JvmAbi
Reuse in RuntimeTypeMapper in reflection
2015-07-10 20:10:13 +03:00
Alexander Udalov
64d8e35d26 Remove ScriptParameterResolver, inline its single method 2015-07-10 20:10:12 +03:00
Alexander Udalov
9b832d4b87 Container of value parameter is always a callable 2015-07-10 20:10:12 +03:00
Alexander Udalov
636b63a8c5 Make "reflection not found" a warning, provide a quick fix
Reporting the warning on each "::", as ReflectionNotFoundInspection did, is not
correct anymore, because for example name/get/set on properties works perfectly
without kotlin-reflect.jar in the classpath. So instead we report the warning
on calls to functions from reflection interfaces. This is not perfect either
because it's wrong in projects with custom implementations of reflection
interfaces, but this case is so rare that the users can suppress the warning
there anyway

 #KT-7176 Fixed
2015-07-10 20:10:11 +03:00
Alexander Udalov
4f1247f03f Support property getters/setters in reflection 2015-07-10 20:10:10 +03:00
Alexander Udalov
749d0c4a52 Minor, simplify KProperty.accessible 2015-07-10 20:10:10 +03:00
Alexander Udalov
fd198accf6 Rename internal field/getter/setter properties in KPropertyImpl
To avoid clash with getter/setter which will appear soon in KProperty interface
2015-07-10 20:10:10 +03:00
Alexander Udalov
048a9b686e Generate separate anonymous class for each property reference
Each property reference obtained by the '::' operator now causes back-end to
generate an anonymous subclass of the corresponding KProperty class, with the
customized behavior. This fixes a number of issues:

- get/set/name of property references now works without kotlin-reflect.jar in
  the classpath
- get/set/name methods are now overridden with statically-generated property
  access instead of the default KPropertyImpl's behavior of using Java
  reflection, which should be a lot faster
- references to private/protected properties now work without the need to set
  'accessible' flag, because corresponding synthetic accessors are generated at
  compile-time near the target property

 #KT-6870 Fixed
 #KT-6873 Fixed
 #KT-7033 Fixed
2015-07-10 20:10:09 +03:00
Alexander Udalov
30794060a9 Simplify property hierarchy in reflection
Leave only 3*2 = 6 classes: KProperty0, KProperty1, KProperty2 and their
mutable analogs, depending on the number of receivers a property takes
2015-07-10 20:10:09 +03:00
Alexander Udalov
c3b97e0668 Simplify function hierarchy in reflection
Get rid of all classes except kotlin.reflect.KFunction, which will be used to
represent all kinds of simple functions.

Lots of changes to test data are related to the fact that KFunction is not an
extension function (as opposed to KMemberFunction and KExtensionFunction who
were) and so a member or an extension function reference now requires all
arguments be passed to it in the parentheses, including receivers. This is
probably temporary until we support calling any function both as a free
function and as an extension. In JS, functions and extension functions are not
interchangeable, so tests on this behavior are removed until this is supported
2015-07-10 20:10:08 +03:00
Alexander Udalov
3549e1e035 Add KFunction.name, support reflection for function references
#KT-7694 Fixed
2015-07-10 20:10:07 +03:00
Alexander Udalov
ab297a4da0 Generate reflection info to classes for function references
The information includes the owner (class, package, script, or null for local
functions) and the JVM signature -- this information will be used by reflection
to locate the symbol
2015-07-10 20:10:07 +03:00
Alexander Udalov
bc168c0cba Support KClass.jvmName = java.lang.Class.getName() 2015-07-10 20:10:07 +03:00
Alexander Udalov
236214305f Support KClass.qualifiedName for non-local classes 2015-07-10 20:10:06 +03:00
Alexey Sedunov
df07a61a08 Control-Flow: Generate instruction for left-hand side of invalid assignments
#KT-8390 Fixed
2015-07-10 19:27:53 +03:00
Svetlana Isakova
d2dc44379e Changed default value for 'getNestedTypeVariables()' 2015-07-10 15:05:12 +03:00
Svetlana Isakova
722a49767a Rename: TypeConstructorMismatch -> ParameterConstraintError 2015-07-10 15:05:12 +03:00
Svetlana Isakova
016a8f69da Removed check for position when storing initial top-level constraints 2015-07-10 15:05:11 +03:00
Svetlana Isakova
425a9516db Minor. Rename: typeParameterBounds -> localTypeParameterBounds 2015-07-10 15:05:11 +03:00
Svetlana Isakova
4701310852 Removed unnecessary check to prevent infinite recursion in incorporation 2015-07-10 15:05:11 +03:00
Svetlana Isakova
92e7ed0425 Rename: getNestedTypeArguments -> getNestedArguments 2015-07-10 15:05:10 +03:00
Svetlana Isakova
3c698992e0 Generate specific type inference error
only for bounds from 'parameter' positions (receiver & value arguments).
They can be marked as error (with red color) explicitly later.

Replaced getSystemWithoutWeakConstraints() with filterConstraintsOut(TYPE_BOUND_POSITION)
2015-07-10 15:05:10 +03:00
Svetlana Isakova
4c8b75928e Added tests
#KT-6179 Fixed
  #KT-8132 Fixed
2015-07-10 15:05:10 +03:00
Svetlana Isakova
fc69cf1b5e Added more tests on incorporation 2015-07-10 15:05:09 +03:00
Svetlana Isakova
4c1eedce3b Added tests for incorporation with nullable type parameter 2015-07-10 15:05:09 +03:00
Svetlana Isakova
d1e9f00e5f Removed obsolete type parameter substitution logic
when copy constraint system
2015-07-10 15:05:09 +03:00
Svetlana Isakova
f25f59bb6e Solve the constraint system for alpha-converted variables,
store initial and backward conversions for
substituting new constraints and the result
2015-07-10 15:05:08 +03:00
Svetlana Isakova
a714de783f Converted CallResolverUtil to kotlin 2015-07-10 15:05:08 +03:00
Svetlana Isakova
517c2b3520 Rename to kt: CallResolverUtil 2015-07-10 15:05:08 +03:00
Svetlana Isakova
b8526e7048 Added diagnostic tests for inference and incorporation 2015-07-10 15:05:07 +03:00
Svetlana Isakova
086e69e132 Added tests for obsolete tasks 2015-07-10 15:05:07 +03:00
Svetlana Isakova
690a46bbb4 Removed obsolete use of resolution results cache
the other usage is still relevant
2015-07-10 15:05:07 +03:00
Svetlana Isakova
89e16ecbcc Don't generate constraint if a type variable was substituted twice
to prevent infinite recursion
2015-07-10 15:05:06 +03:00
Svetlana Isakova
3b85ac90ba Check initial constraints in constraint system status 2015-07-10 15:05:06 +03:00
Svetlana Isakova
4c4f99c356 Use approximation of captured types in incorporation
to generate new constraints
2015-07-10 15:05:06 +03:00
Svetlana Isakova
c6e698e18d Minor: simplified code
Used BoundKind.ordinal()
2015-07-10 15:05:05 +03:00
Svetlana Isakova
ac578f7e5b Cache type corresponding to type variable 2015-07-10 15:05:05 +03:00
Svetlana Isakova
db8085c399 Incorporation tests 2015-07-10 15:05:05 +03:00
Svetlana Isakova
179c5e3c3a Add a constraint for nested call
if there are no bounds on variables in this call return type
2015-07-10 15:05:04 +03:00
Svetlana Isakova
1463ff7258 Updated constraint system tests 2015-07-10 15:05:04 +03:00
Svetlana Isakova
cf64687b02 More accurate error reporting
with type inference error for delegated properties
Add the constraints from completer if they don't lead to errors
except errors from upper bounds to improve diagnostics
2015-07-10 15:05:04 +03:00
Svetlana Isakova
9a5abf368f Constraint incorporation
In a constraint system a new bound is incorporated:
all new constrains that can be derived from it
(and from existing ones) are added
2015-07-10 15:05:04 +03:00
Svetlana Isakova
82acce4767 Separate input and result data in constraint system test
input file: *.constraints
 result file: *.bounds
2015-07-10 15:05:03 +03:00
Svetlana Isakova
07937a27eb Added GenericCandidateResolver 2015-07-10 15:05:03 +03:00
Svetlana Isakova
0fdfb6b5db Render short names in constraint system tests 2015-07-10 15:05:02 +03:00
Svetlana Isakova
8b9cdd1751 Changes in TypeBounds interface
inlined 'isEmpty' (correctly)
  replaced functions 'getValue, getValues' with properties
2015-07-10 15:05:02 +03:00
Svetlana Isakova
5717148bd4 Changed test data
Added an extra blank line to rendered constraint system
2015-07-10 15:05:02 +03:00
Svetlana Isakova
918087f475 Don't render constraint positions in tests
for constraint system, it's always SPECIAL anyway
2015-07-10 15:05:02 +03:00
Svetlana Isakova
f7dc59e2d6 Added 'UNKNOWN' argument mapping
for cases with no argument expression
2015-07-10 15:04:38 +03:00
Denis Zharkov
76648878e0 Ignore type parameters in value arguments while comparing SAM adapters
#KT-8388 Fixed
2015-07-10 08:46:27 +03:00
Alexey Sedunov
aa34fe6352 Minor: Remove useless annotation 2015-07-10 01:28:54 +03:00
Alexey Sedunov
f71f7dd4dd Minor: Drop unused classes 2015-07-09 20:47:57 +03:00
Alexey Sedunov
f9b836e144 Change Signature: Error reporting for Java class without an explicit constructor 2015-07-09 20:47:54 +03:00
Alexey Sedunov
a96bd546a1 Change Signature: Avoid explicit Unit return type 2015-07-09 20:47:51 +03:00
Alexey Sedunov
eb7463ed81 Change Signature: Propagate parameters to chosen callers
#KT-7902 Fixed
2015-07-09 20:47:48 +03:00
Alexey Sedunov
9853934087 Change Signature: Implement parameter propagation UI
#KT-7902 In progress
2015-07-09 20:47:45 +03:00
Alexey Sedunov
46dcfb508e Call Hierarchy: Find implicit constructor calls in Java code 2015-07-09 20:35:06 +03:00
Alexey Sedunov
8104b899aa Find Usages: Unify usage highlighting and full usage search 2015-07-09 20:35:03 +03:00
Alexey Sedunov
e8f5a2db7c Minor: Fix compilation-breaking nullability issues 2015-07-09 20:34:55 +03:00
Alexey Sedunov
058829aa55 J2K: JetChangeSignatureDialog 2015-07-09 17:56:54 +03:00
Alexey Sedunov
8b2be72434 J2K: JetChangeSignatureDialog (rename to .kt) 2015-07-09 17:56:53 +03:00
Alexey Sedunov
0bf7bb3987 J2K: JetChangeSignatureHandler 2015-07-09 17:56:52 +03:00
Alexey Sedunov
74570333c0 J2K: JetChangeSignatureHandler (rename to .kt) 2015-07-09 17:56:50 +03:00
Alexey Sedunov
0afea7acac J2K: JetUsageInfo 2015-07-09 17:56:49 +03:00
Alexey Sedunov
51eb989d57 J2K: JetChangeSignatureProcessor 2015-07-09 17:56:47 +03:00
Alexey Sedunov
9dd6dea85f Change Signature: Move UI-related classes to separate package 2015-07-09 17:56:46 +03:00
Alexey Sedunov
0169963a27 Change Signature: Process internal usages of function parameters when
performing Java refactoring
2015-07-09 17:56:44 +03:00
Denis Zharkov
5c60a1bdb8 Make project compilable after PurelyImplements annotation introduction 2015-07-09 16:36:48 +03:00
Denis Zharkov
a218c1359f Adjust testData: JDK collections behave like non-platform in backend
Some of that changes looks like regression and should be fixed soon
2015-07-09 16:36:48 +03:00
Denis Zharkov
d350303951 Change HashMap in test to custom class
It's implementing kotlin.Map with flexible arguments that is necessary in this test.
2015-07-09 16:36:47 +03:00
Denis Zharkov
151231ef1a Adjust testData
Standard JDK collections purely implement kotlin.Mutable* with non-platform arguments
2015-07-09 16:36:47 +03:00
Denis Zharkov
8b49a1d660 Add PurelyImplements annotation
It's parameter is FQ-name of class (currently only from builtins) that added as supertype to annotated Java class.

Parameters of annotated class used as non-flexible arguments of added supertype, that helps to propagate more precise types when using in Kotlin.
Some standard JDK collections loaded as they annotated with PurelyImplements.

See tests for clarification.
Before: ArrayList<Int>.add(x: Int!) // possible to add null
After: ArrayList<Int>.add(x: Int)   // impossible to add null

 #KT-7628 Fixed
 #KT-7835 Fixed
2015-07-09 16:36:47 +03:00
Denis Zharkov
8120513465 Add some collections to mockJDK
It's neccessary to test they loaded as pure implementation of kotlin collections
2015-07-09 16:36:46 +03:00
Denis Zharkov
da416f1caf Change traversal order for finding corresponding supertype from DFS to BFS
In most cases order doesn't matter as in supertype tree built from real code
types with same type constructors should be completely equal.

The only case when order does matter is when we artificially add more specific supertype closer to the root.

For example specific annotation adding non-platform supertype MutableMap<K, V> to ConcurrentHashMap
ConcurrentHashMap<K, V> extends ConcurrentMap<K!, V!> that extends java.util.Map<K!, V!> (mapped to kotlin.MutableMap<K!, V!>)

So we want in that case to use refined (more specific) version when checking subtypes:
ConcurrentHashMap<String, Int> should not be a subtype Map<String!, Int!> (and respectively Map<String?, Int?>)
It should be pure non-platform Map<String, Int> that can be found only with BFS
2015-07-09 16:36:46 +03:00
Denis Zharkov
0a19fb7df2 Make project compilable after types enhancement 2015-07-09 16:36:46 +03:00
Denis Zharkov
4479c215d4 Change return type for iterator method of asList impls for *Array
These objects implement AbstractList that extending MutableCollection.
After type propagation `iterator` of AbstractList become MutableIterator, so it cannot be overriden with immutable Iterator
2015-07-09 16:36:46 +03:00
Denis Zharkov
afcdd27d67 Add some marginal tests for types enhancement 2015-07-09 16:36:45 +03:00
Denis Zharkov
5ea0c14d4a Expand the AbstractJvmRuntimeDescriptorLoaderTest hack
Remove type related annotations from java source as they have CLASS retention policy
2015-07-09 16:36:45 +03:00
Denis Zharkov
00e41fc238 Fix testData after types enhancement 2015-07-09 16:36:45 +03:00
Denis Zharkov
befe025d21 Fix intentions testData: types rendering changed
Some more FQ names appeared.
The reason is that earlier such types were Lazy and their `toString` method return short version.
But after type enhancement they are represented with JetTypeImpl
2015-07-09 16:36:45 +03:00
Denis Zharkov
f0833d626a Fix intentions tests after types enhancement
Types became more accurate
2015-07-09 16:36:44 +03:00
Denis Zharkov
cfadda8061 Fix codegen tests after types enhancement 2015-07-09 16:36:44 +03:00
Denis Zharkov
1b44f77054 Minor. trait -> interface in testData 2015-07-09 16:36:44 +03:00
Denis Zharkov
d4e5479f0f Update testData for nullability warnings
They become errors after type enhancement
2015-07-09 16:36:44 +03:00
Andrey Breslav
4e17500e1c Test data for LoadJava tests fixed 2015-07-09 16:36:43 +03:00
Denis Zharkov
0173cb1c17 Diagnostics test data fixed 2015-07-09 16:36:43 +03:00
Denis Zharkov
e13f34a8a0 Minor. Use getOrElse from stdlib 2015-07-09 16:36:43 +03:00
Denis Zharkov
fd43799c6e Use original descriptor when working with errors in KotlinSignature
Otherwise enhanced version are treated differently
2015-07-09 16:36:43 +03:00
Denis Zharkov
a551f21e9f Use original descriptor when trying to obtain source
Also refine `getOriginal` of `DeclarationDescriptorWithSource` for comfortable use
2015-07-09 16:36:42 +03:00
Denis Zharkov
0375e45936 Change reporting policy for NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS
If lower bound of flexible is nullable treat it like Kotlin nullable type
Anyway appropriate errors are reported outside JavaNullabilityWarningsChecker
2015-07-09 16:36:42 +03:00
Denis Zharkov
1469a0aa6f Make computation of indexed JavaTypeQualifiers eager 2015-07-09 16:36:42 +03:00
Denis Zharkov
c01c59d562 Use doSubstitute when enhacing types of Java method
Before this commit old type parameters were inserted into new descriptor,
and that broke a simple contract: desc.child.getContainingDeclaration() == desc.

We use `doSubstitute` here because it does exactly what we need:
1. creates full copy of descriptor
2. copies method's type parameters (with new containing declaration) and properly substitute to them in value parameters, return type and etc.

But we had to customize `doSubstitute`: add some parameters like `newReturnType`

NOTE: Strange testData change.
(Mutable)List<in T!>! after substitution becomes MutableList<in T!>..List<*>?.

But it's not wrong because List<in T> behaves exactly as List<*>, and the same happens when substituing Java class scope:
public class A<E> {
    <T> void foo(List<? super T> x) {}
}

Kotlin:
A.foo(), type of first value parameter --- (Mutable)List<in T!>
A<String>().foo(), type of first value parameter --- MutableList<in T!>..List<*>?
2015-07-09 16:36:42 +03:00
Denis Zharkov
f6c4ec1533 Move creation of enhanced ValueParameterDescriptor to JavaCallableMemberDescriptor
It's needed because new parameter owner is not created while enhacing types
(It was containing declaration of old value parameter that is wrong)

Also simplified SignatureParts' logic: `replaceType` is always an identity function
2015-07-09 16:32:25 +03:00
Denis Zharkov
4710168c5a Minor. Specify visibility for some declarations in typeEnhacement 2015-07-09 16:32:25 +03:00
Denis Zharkov
c769748cb0 Move type enhacement parts to separate package in runtime
It's needed to enhace types when loading descriptors via reflection.
Also get rid of `enhanceSignatures` method in ExternalSignatureResolver as enhancement does not use external signature at all
2015-07-09 16:32:25 +03:00
Andrey Breslav
c6b91b0f81 Java type annotations supported in LazyJavaTypeResolver 2015-07-09 16:32:25 +03:00
Andrey Breslav
eaae88133c Minor FilteredAnnotations moved out of Java-specific code 2015-07-09 16:32:25 +03:00
Andrey Breslav
31f4ff749c Type annotations supported in Java elements
Reflection-related implementations are pending
2015-07-09 16:32:25 +03:00
Andrey Breslav
694af022c8 Type Enhancement for Java fields and constructors supported as well 2015-07-09 16:32:25 +03:00
Andrey Breslav
8c78739983 Proper enhancement for type parameters 2015-07-09 16:32:25 +03:00
Andrey Breslav
04aee291b9 Proper treatment of return types 2015-07-09 16:32:25 +03:00
Andrey Breslav
a8b5698145 Proper enhancement for SAM adapters 2015-07-09 16:32:25 +03:00
Andrey Breslav
9644eeb047 Propagating annotations into type arguments 2015-07-09 16:32:24 +03:00
Andrey Breslav
4248654f5f Signature enhancement: most basic version implemented 2015-07-09 16:32:24 +03:00
Andrey Breslav
61da419c4a Spec: account for problematic cases (some unsolved yet) 2015-07-09 16:32:24 +03:00
Andrey Breslav
f376b2ba70 Stub infrastructure for enhancing platform signatures 2015-07-09 16:32:24 +03:00
Andrey Breslav
991f0fcf2e Type enhancement and qualifier extraction 2015-07-09 16:32:24 +03:00
Andrey Breslav
e095162c19 Minor. Dictionary 2015-07-09 16:32:24 +03:00
Andrey Breslav
d140e83386 Minor. Methods renamed to reflect tha fact that they handle more types than just collections 2015-07-09 16:32:24 +03:00
Andrey Breslav
579ca9c1f2 Minor. Typo 2015-07-09 16:32:24 +03:00
Andrey Breslav
2de3a3b59e Minor. Rename addToScope -> addFakeOverride 2015-07-09 16:32:24 +03:00
Denis Zharkov
a6a099b0f5 Fix flexible type rendering
Do not append "!" if bounds have same nullability
2015-07-09 16:32:24 +03:00
Andrey Breslav
64866183f7 Spec for enhancing Java declarations with annotations 2015-07-09 16:32:24 +03:00
Andrey Breslav
4d6ab824c8 Adding Java descriptors to the test data for nullability warnings 2015-07-09 16:32:23 +03:00
Nikolay Krasko
7386ea0d0b Avoid counting directory parent for file 2015-07-09 12:06:36 +03:00
Dmitry Jemerov
77c0a54a79 convert QuickFixRegistrar to Kotlin; on-demand registration of quickfixes (KT-8307)
#KT-8307 Fixed
2015-07-08 18:27:24 +02:00
Dmitry Jemerov
6734dcb82c QuickFixRegistrar: J2K 2015-07-08 18:04:22 +02:00
Dmitry Jemerov
3a1fb7d883 QuickFixes: J2K 2015-07-08 18:04:21 +02:00
Valentin Kipyatkov
4dc7081dc4 Completion: fixed filtering shadowed declarations for generic functions 2015-07-08 16:28:54 +03:00
Valentin Kipyatkov
3f74cc6351 More consistent presentation for different completion items producing lambda's 2015-07-08 16:28:53 +03:00
Valentin Kipyatkov
1f79955275 Completion: more intuitive presentation of function items that insert lambda 2015-07-08 16:28:53 +03:00
Valentin Kipyatkov
88dd86d603 Fixes: use isExactFunctionOrExtensionFunctionType() to detect when lambda can be passed 2015-07-08 16:28:52 +03:00
Valentin Kipyatkov
6b78a53c3d More tests 2015-07-08 16:28:52 +03:00
Valentin Kipyatkov
91c4bf7530 Renamed test data 2015-07-08 16:28:35 +03:00
Valentin Kipyatkov
75d668bc19 Adapted completion in lambda signatures to modern syntax 2015-07-08 16:28:35 +03:00
Valentin Kipyatkov
60ea98f870 Moved/renamed test data 2015-07-08 16:28:34 +03:00
Evgeny Gerashchenko
60a3ab548c Moved filtering of excluded symbols to KotlinIndicesHelper 2015-07-08 15:30:29 +03:00
Evgeny Gerashchenko
0d5dbdfa0c Added completion action to exclude classes/packages.
#KT-2413 fixed
2015-07-08 14:28:39 +03:00
Evgeny Gerashchenko
b98aa76325 Added completion action to exclude classes/packages.
#KT-2413 fixed
2015-07-08 14:28:39 +03:00
Evgeny Gerashchenko
0451debda4 Supported excluded packages/classes in completion.
#KT-2413 in progress
2015-07-08 14:28:38 +03:00
Evgeny Gerashchenko
5c56bc455e Supported excluded packages/classes in auto-import quick fix.
#KT-2413 in progress
2015-07-08 14:28:37 +03:00
Evgeny Gerashchenko
2a0817a4d1 Minor. Added word to dictionary. 2015-07-08 14:27:39 +03:00
Ilya Gorbunov
30ec88129c Clarify docs for capitalize and decapitalize methods. 2015-07-07 22:36:55 +03:00
Dmitry Jemerov
79602163a3 update run configuration on package rename 2015-07-07 18:02:48 +03:00
Dmitry Jemerov
c6c2404dcf validate more run configuration attributes; use correct CommandLineState base class to allow shutdown hooks to work (KT-7489)
#KT-7489 Fixed
2015-07-07 18:02:47 +03:00
Dmitry Jemerov
9cfc6b3905 correctly update name of run configuration on class rename 2015-07-07 18:02:46 +03:00
Dmitry Jemerov
247ffdccbe updating run configuration on class rename (KT-6731) 2015-07-07 18:02:45 +03:00
Dmitry Jemerov
4fbd982059 fix RunConfiguratioTest: use location.getModule() instead of context.getModule() 2015-07-07 18:02:44 +03:00
Dmitry Jemerov
d29e63e2b8 check type of containing file in getTestClass() 2015-07-07 18:02:44 +03:00
Dmitry Jemerov
49714d0817 convert KotlinRunConfigurationProducer to new API, allowing it to coexist with KotlinJUnitRunConfigurationProducer correctly
#KT-2604 Fixed
2015-07-07 18:02:43 +03:00
Dmitry Jemerov
9d650b6154 JetRunConfigurationProducer: J2K 2015-07-07 18:02:42 +03:00
Dmitry Jemerov
3ca30af615 JetRunConfigurationProducer: rename to .kt 2015-07-07 18:02:41 +03:00
Dmitry Jemerov
bd36b5e3d8 rewrite JUnit run configuration producer with a non-deprecated API; correctly detect configuration created from context (KT-8038); allow running test if file contains multiple classes (KT-8272)
#KT-8038 Fixed
 #KT-8272 FIxed
2015-07-07 18:02:40 +03:00
Dmitry Jemerov
a206ff7406 JetJUnitConfigurationProducer: J2K 2015-07-07 18:02:39 +03:00
Dmitry Jemerov
2a48a97853 JetJUnitRunConfigurationProducer: rename to .kt 2015-07-07 18:02:38 +03:00
Yan Zhulanow
9cb88a9c21 Fix muted completion test for the @file keyword 2015-07-07 16:35:24 +03:00
Yan Zhulanow
9c8ea54946 Use KotlinJvmCheckerProvider to check @publicField 2015-07-07 16:35:24 +03:00
Yan Zhulanow
3bcdee2a20 publicField & field in companion object 2015-07-07 16:35:23 +03:00
Yan Zhulanow
74f44dddb0 Add tests for publicField 2015-07-07 16:35:23 +03:00
Yan Zhulanow
bffb24b075 Add publicField annotation 2015-07-07 16:35:22 +03:00
Yan Zhulanow
441e72abed kapt: Add class declarations test in AP wrapper 2015-07-07 16:35:22 +03:00
Yan Zhulanow
c6ac878cf0 kapt: Add inherited annotations test 2015-07-07 16:35:21 +03:00
Yan Zhulanow
cf08390e04 Minor: fix deprecations in Kotlin Android Extensions code 2015-07-07 16:35:21 +03:00
Yan Zhulanow
700d495d7f kapt: Support inherited annotations in Gradle 2015-07-07 16:35:21 +03:00
Yan Zhulanow
a90f175fc2 kapt: Support inherited annotations in AP wrapper 2015-07-07 16:35:20 +03:00
Yan Zhulanow
afa3ae4439 Add tests for inherited annotations (class declarations) 2015-07-07 16:35:20 +03:00
Yan Zhulanow
09c3bd8699 kapt: Support inherited annotations in Kotlin plugin 2015-07-07 16:35:19 +03:00
Dmitry Jemerov
d6e37ad8c5 add markup for KDOC_LINK 2015-07-07 14:58:59 +03:00
Dmitry Jemerov
c5ea13e5a6 KotlinColorSettingsPage: J2L 2015-07-07 14:58:57 +03:00
Dmitry Jemerov
cdf9025f38 JetColorSettingsPage: rename to .kt 2015-07-07 14:58:55 +03:00
Nikolay Krasko
65c6bad542 Remove bundled plugin from ideaSDK 2015-07-07 14:58:53 +03:00
Nikolay Krasko
23ae5ae57c Remove own idea runtime and reflect jars 2015-07-07 13:36:57 +03:00
Natalia Ukhorskaya
002bca2f01 Fix compilation 2015-07-07 13:36:56 +03:00
Nikolay Krasko
fed264580d Update to 142.2887.3 2015-07-07 13:36:55 +03:00
Dmitry Petrov
4e42cc6b81 Save/restore stack in try-expressions (and statements).
Parse TryCatchBlockNode's in generated bytecode, infer stack save/restore points.
Save stack to local variables before 'try'.
Restore stack after the beginning of try-block, catch-block, and default handler.
Integrate before/after inline markers rewriting (otherwise it'll break our stacks).

 #KT-3309 Fixed
2015-07-07 12:16:29 +03:00
Nikolay Krasko
534154e20d Replace trait to interface icons
#KT-8319 Fixed
2015-07-06 21:06:13 +03:00
Nikolay Krasko
2cde746047 Usage highlighting test 2015-07-06 21:06:12 +03:00
Nikolay Krasko
68384a9b4a Avoid looking for light methods if only Kotlin search needed 2015-07-06 21:06:11 +03:00
Ilya Gorbunov
f440d97e04 Remove unnecessary Char.toChar from tests. 2015-07-06 17:57:35 +03:00
Ilya Gorbunov
456bab40d1 Ensure value of correct return type is on stack after intrinsic Char +/- Int and Char - Char binary operations. 2015-07-06 17:57:33 +03:00
Ilya Gorbunov
222d4002ac Add char binary operations to JVM codegen tests. 2015-07-06 17:57:25 +03:00
Valentin Kipyatkov
26f72d0935 MInor corrections after code review 2015-07-06 16:48:51 +03:00
Valentin Kipyatkov
c75a18291c KT-7918 J2K: don't generate jvmOverloads on private declarations
#KT-7918 Fixed
2015-07-06 16:48:51 +03:00
Valentin Kipyatkov
2999aaf974 KT-8034 J2K: save file before performing the conversion
#KT-8034 Fixed
2015-07-06 16:48:51 +03:00
Valentin Kipyatkov
4c80db9249 KT-8110 J2K: Don't convert "==" to "===" for enum classes
#KT-8110 Fixed
2015-07-06 16:48:51 +03:00
Valentin Kipyatkov
767e21db76 J2K - no '@' required for primary constructor annnotations 2015-07-06 16:48:51 +03:00
Valentin Kipyatkov
8e3c793760 Used named arguments for clarity 2015-07-06 16:48:50 +03:00
Valentin Kipyatkov
67cf180aba Code clarification 2015-07-06 16:48:50 +03:00
Valentin Kipyatkov
d3402280c5 Extracted methods 2015-07-06 16:48:50 +03:00
Valentin Kipyatkov
e9b4045eac Fixed test data 2015-07-06 16:48:50 +03:00
Valentin Kipyatkov
40fe680acf J2K: preserving line breaks between arguments 2015-07-06 16:48:50 +03:00
Valentin Kipyatkov
fefb828fae J2K: preserving line breaks between parameters 2015-07-06 16:48:50 +03:00
Valentin Kipyatkov
1e988028a9 Optimization 2015-07-06 16:48:49 +03:00
Valentin Kipyatkov
403549b924 Renames 2015-07-06 16:48:49 +03:00
Valentin Kipyatkov
6679a6912e Memory optimizations + more clear code 2015-07-06 16:48:49 +03:00
Valentin Kipyatkov
fdff2c7153 J2K: preserving line breaks between enum members from original code 2015-07-06 16:48:49 +03:00
Alexander Udalov
f9afb4f95b Make CLASS default class kind in binary metadata
Don't write the kind to the class file if it's CLASS to save some bytes
2015-07-06 16:19:57 +03:00
Alexander Udalov
b0e963bf34 Binary metadata: make repeated int fields packed
To save some bytes for enums and classes with many nested classes
2015-07-06 16:19:55 +03:00
Alexander Udalov
5e011b92ef Add source roots to modules 'builtins' and 'runtime.jvm'
This is done to be able to write code in the module 'reflection.jvm' in the IDE
without lots of unresolved errors and such
2015-07-06 16:19:55 +03:00
Alexander Udalov
feb4dd7b8f Drop 'OBJECT$' field deprecated in M11 2015-07-06 16:19:54 +03:00
Alexander Udalov
0bad4e0137 Make KotlinJvmCheckerProvider non-singleton, pass module to it 2015-07-06 16:19:53 +03:00
Alexander Udalov
ac0db5ce80 Fix incorrect TypeCastException message when casting null
#KT-5121 Fixed
2015-07-06 16:14:22 +03:00
Alexander Udalov
cb03f0df5a Fix casts of Unit value to other types 2015-07-06 16:14:06 +03:00
Alexander Udalov
62c22bf0ec Minor, simplify ExpressionCodegen#binaryWithTypeRHS 2015-07-06 16:06:15 +03:00
Ilya Gorbunov
80074c71fa Minor: Correct typo in 'intrinsic' 2015-07-04 04:47:12 +03:00
Ilya Gorbunov
1605027b19 Change return type of Char plus Int and Char minus Int binary operations.
JS: Remove unnecessary intrinsic binary operation patterns, adjust intrinsics for binary operations with char.
2015-07-04 04:47:00 +03:00
Ilya Gorbunov
39b27751df Drop deprecated char operations: correct test data. 2015-07-04 04:46:23 +03:00
Ilya Gorbunov
e8aff3360a Do not use deprecated operations in ranges and progressions hashCode. 2015-07-04 04:46:11 +03:00
Ilya Gorbunov
2c4db42319 Drop deprecated char binary operations. 2015-07-04 04:45:59 +03:00
Ilya Gorbunov
005a0a1eb6 Eliminate deprecated char operation usages in stdlib 2015-07-04 04:45:47 +03:00
Nikolay Krasko
ff9c251438 Filter out overridden candidates before looking for most specific
This filtering will remove signature duplicates that prevent findMaximallySpecific() from finding best candidate.
2015-07-03 20:59:48 +03:00
Evgeny Gerashchenko
01b83b3e3e Minor. Fixed test data. 2015-07-03 19:48:01 +04:00
Alexey Sedunov
5319e9e761 Change Signature: Support configurable Change Signature for Java code
#KT-5923 Fixed
2015-07-03 18:38:06 +03:00
Alexey Sedunov
9e82411e78 Change Signature: Do not process calls with unmatched arguments/parameters 2015-07-03 18:38:05 +03:00
Alexey Sedunov
4cc2a57aed Minor: Pull up original property 2015-07-03 18:38:04 +03:00
Alexey Sedunov
e9b2732aa9 Minor: Drop unused class 2015-07-03 18:38:03 +03:00
Alexey Sedunov
161539f3da Change Signature: val/var parameter support 2015-07-03 18:38:02 +03:00
Alexey Sedunov
2ff63d37c2 Change Signature: Property support
#KT-6599 Fixed
2015-07-03 18:38:01 +03:00
Alexey Sedunov
c96349f42b Change Signature: Filter out OverriderUsageInfo(s) corresponding to Kotlin
declarations
2015-07-03 18:37:59 +03:00
Alexey Sedunov
c66a4d53fd Introduce Variable: Use name entered in template as a variable name
#KT-8358 Fixed
2015-07-03 18:37:58 +03:00
Pavel V. Talanov
e135b6ae96 Recompute KotlinResolveCache for synthetic files on project structure modification
Since computed KotlinResolveCache depends on corresponding synthetic files location (namely, moduleFilter), it should be recomputed in this case

The STR for this issue provided by Alexander Udalov:
1. Open a library source, wait for it to be analyzed. In this case library sources are files in the project under core/builtins/src/.
2. Go to project settings and remove the source from the library.
3. Exception now on each file change, out of block doesn't seem to help.
2015-07-03 16:50:51 +03:00
Ilya Gorbunov
f7436064d0 Unify componentN templates and add NOTHING_TO_INLINE suppression. 2015-07-03 16:38:10 +03:00
Ilya Gorbunov
9618a3542f Provide getOrElse and getOrNull methods for indexed collections.
Breaking: elementAtOrElse is no longer inlined for Iterables and Sequences.
#KT-6952
2015-07-03 16:38:08 +03:00
Michael Nedzelsky
8cd978bfd8 add tests for KT-8158 make Kotlin compiler invoked from IDEA cancellable 2015-07-03 16:14:08 +03:00
Michael Nedzelsky
ea0c14d7ad KotlinJpsBuildTest.kt: minor refactoring after converting 2015-07-03 16:14:04 +03:00
Michael Nedzelsky
13bda2de44 convert KotlinJpsBuildTest to Kotlin: step 1: rename 2015-07-03 16:14:01 +03:00
Michael Nedzelsky
e09411f45f convert KotlinJpsBuildTest to Kotlin: step 1: convert body 2015-07-03 16:13:58 +03:00
Evgeny Gerashchenko
aa65eb1055 More proper fix for KT-8137/EA-69470: avoiding failed assertion when searching usages of parameter of local class constructor
KT-8137 AE at JetSourceNavigationHelper.convertNamedClassOrObject() on function local class with several constructor parameters

 #KT-8137 fixed
 #EA-69470 fixed
2015-07-03 16:00:06 +03:00
Alexander Udalov
48a8f53551 Fix ClassCastException in SamAdapterOverridabilityCondition
This was happening on the upcoming hierarchy of property getters and setters in
kotlin.reflect. No test added because it's not so easy to come up with a small
example, and because the fix itself is rather trivial
2015-07-03 15:32:20 +03:00
Alexander Udalov
fa9dfd94b0 Minor, add ScriptContext#toString 2015-07-03 15:32:19 +03:00
Alexander Udalov
7dcb33fcf2 Minor, don't store type in receiver parameter 2015-07-03 15:32:19 +03:00
Alexander Udalov
cd61f6f96b Minor, dump bytecode in REPL test on demand 2015-07-03 15:32:18 +03:00
Alexander Udalov
cd847b7cb9 Minor, make JavaMethod#getReturnType non-null
PsiMethod#getReturnType only returns null for constructors, and JavaMethod is
not created for constructors (JavaConstructor is)
2015-07-03 15:32:17 +03:00
Alexander Udalov
b064b947ce Minor, add missing kdoc on Function's type parameter 2015-07-03 15:32:17 +03:00
Alexander Udalov
c8439ae6fc Minor, rename val EXTENSION_REGISTRY -> extensionRegistry 2015-07-03 15:32:16 +03:00
Alexander Udalov
110d6fa7f1 Don't load irrelevant classes by accident, if resource happens to exist
Check with the containing class or package first, don't load the class if the
container doesn't know about it. This also makes the workaround for
case-insensitive file systems unnecessary
2015-07-03 15:31:48 +03:00
Stanislav Erokhin
1e7b96aec0 replace ArrayList to SmartList 2015-07-02 16:32:46 +03:00
Stanislav Erokhin
2f68cc4c97 Created reset method. 2015-07-02 16:32:45 +03:00
Stanislav Erokhin
298a27951f Use System.nanoTime() instead threadMxBean.getCurrentThreadUserTime() 2015-07-02 16:32:45 +03:00
Stanislav Erokhin
45a3d7ec46 Create performance counter with excluded counters 2015-07-02 16:32:45 +03:00
Stanislav Erokhin
d830729ddb change creation of performance counters 2015-07-02 16:32:44 +03:00
Stanislav Erokhin
9974423e2b Disable performance time counters by default 2015-07-02 16:32:44 +03:00
Dmitry Jemerov
ae55131b45 fix typos 2015-07-02 13:23:17 +02:00
Dmitry Jemerov
21e25e8509 KT-4820: Intention to introduce/remove indices from a for-loop (update to modern Kotlin) 2015-07-02 13:16:34 +02:00
Dmitry Jemerov
7f3f834011 Merge branch 'for-loop-indices' of https://github.com/ElliotM/kotlin into ElliotM-for-loop-indices 2015-07-02 13:14:19 +02:00
Dmitry Jemerov
94e3b058b2 Merge pull request #712 from zarechenskiy/visitor
Override all methods from based visitor class
2015-07-02 11:39:19 +02:00
Nikolay Krasko
d564f44aad Getting decompiled file content through getPsi() doesn't work for local class files
Decompiler view providers are created with EmptyFileManager (see ClassFileDecompiler.decompile()). This makes impossible to create psi file for virtual class file in local file system because parent directory is null in SingleRootFileViewProvider.createFile() pre-check.
2015-07-02 00:49:08 +03:00
Ilya Gorbunov
64379947fd Do not allow using getOrPut on concurrent maps.
#KT-5800 In Progress
2015-07-01 22:33:58 +03:00
Ilya Gorbunov
a47325cc30 Provide getOrSet method for ThreadLocal<T: Any>
#KT-7927 Fixed
2015-07-01 22:30:17 +03:00
Mikhail Zarechenskiy
2fcb46bb13 Override all methods from based visitor class 2015-07-01 22:25:28 +03:00
Ilya Gorbunov
cb9d9cb77d Delegates.observable and vetoable inline their lambda parameters into ObservableProperty implementation.
ObservableProperty made abstract.
#KT-5388
2015-07-01 22:23:14 +03:00
Ilya Gorbunov
9dbc4e4eef Provide another type of callback to the ObservableProperty which is called after the property value has been changed.
#KT-6866 Fixed
2015-07-01 22:23:11 +03:00
Ilya Gorbunov
61e657567d Increase heap size for compiler up to 2000M 2015-07-01 22:16:17 +03:00
Evgeny Gerashchenko
8e3dd54477 Minor. Converted class with class object to object. 2015-07-01 21:21:35 +03:00
Pavel V. Talanov
15a4782a0c Move CompilationCanceledStatus and related utils to "util" module
It should not be in "frontend" since "jps bare plugin" artifact does not include "frontend" module
2015-07-01 21:21:35 +03:00
Pavel V. Talanov
9a9d70fd98 Decompiler: do not try to render function types with star projections prettily 2015-07-01 20:45:32 +03:00
Evgeny Gerashchenko
8fcbd44ad4 KT-8137 AE at JetSourceNavigationHelper.convertNamedClassOrObject() on function local class with several constructor parameters
#KT-8137
 #EA-69470 fixed
2015-07-01 19:43:54 +03:00
Evgeny Gerashchenko
560654744c Checking exceptions in other threads. E.g. inspections pass thread. 2015-07-01 19:43:54 +03:00
Mikhail Glukhikh
bae9a7d7f8 Types are no more rendered for annotation arguments + a swarm of tests corrected accordingly 2015-07-01 16:12:32 +03:00
Nikolay Krasko
dde295011b Refactoring: rename file 2015-07-01 14:52:43 +03:00
Nikolay Krasko
ef477f99e9 Create file must return new file, as old one can be invalidated (KT-8266)
Invalidation in SingleRootFileViewProvider.getPsiInner()

 #KT-8266 Fixed
2015-07-01 14:52:41 +03:00
Mikhail Glukhikh
7c7a0fb4ea trait to interface (StubInterfaces) 2015-06-30 19:46:33 +03:00
Mikhail Glukhikh
848c2afdb4 "is" over enum entry is now an error + new tests + test fixes 2015-06-30 19:46:30 +03:00
Mikhail Glukhikh
e1d3b296e9 Exhaustive when over enum may now use "is" instead of comparison + a pair of tests 2015-06-30 19:46:28 +03:00
Pavel V. Talanov
786cadb08b Fix failing test in container test and add it to generators module test dependencies
This should enable running this test on build server
2015-06-30 17:06:22 +03:00
Pavel V. Talanov
b173f96505 Refactor: Remove ScopeProvider, introduce FileScopeProviderImpl
Rename NoFileScopeProvider -> FileScopeProvider.ThrowException, ScopeProvider.AdditionalScopeProvider -> FileScopeProvider.AdditionalScopes
2015-06-30 16:12:23 +03:00
Dmitry Jemerov
7bcc3dd875 correct place for enabling alternative resolve in library configurator 2015-06-30 14:05:30 +02:00
Nikolay Krasko
8bea21a847 Introduce BodyResolveCache for storing resolve function body task in IDE 2015-06-30 13:54:42 +03:00
Nikolay Krasko
2dfed03b67 Refactoring: rename method addAllMyDataTo -> addOwnDataTo 2015-06-30 13:54:41 +03:00
Nikolay Krasko
09bb050c3f Add addOwnDataTo() to BindingContext 2015-06-30 13:54:40 +03:00
Nikolay Krasko
083023211e Refactoring: create trace inside each resolve task
This will allow reuse external cached results with their temp traces
2015-06-30 13:54:39 +03:00
Nikolay Krasko
980a0d19be Refactoring: don't register scopes explicitly, get them from scope provider on demand 2015-06-30 13:54:38 +03:00
Nikolay Krasko
b81d8eb484 Refactoring: Don't depend on whole context if only DataFlowInfo is needed 2015-06-30 13:54:37 +03:00
Nikolay Krasko
0b49197ca3 Minor: suppress warning 2015-06-30 13:54:36 +03:00
Nikolay Krasko
fad883e55b Minor: remove outdated commit 2015-06-30 13:54:36 +03:00
Valentin Kipyatkov
2f0bce375e Restored filtering out of empty name actions 2015-06-30 13:41:41 +03:00
Valentin Kipyatkov
004b400089 DirectiveBasedActionUtils: added intentions to suppress warning to the list of ignored in tests to fix DeprecatedSymbolUsage.testJavaDeprecated() 2015-06-30 13:41:41 +03:00
Valentin Kipyatkov
eadeb6e63f DirectiveBasedActionUtils: don't allow to specify ACTION directives that won't be checked anyway 2015-06-30 13:41:41 +03:00
Valentin Kipyatkov
c0062b1199 Code simplifications 2015-06-30 13:41:41 +03:00
Valentin Kipyatkov
09723b9991 Converted DirectiveBasedActionUtils to Kotlin 2015-06-30 13:41:41 +03:00
Valentin Kipyatkov
646653aa9a Better deparenthesizing 2015-06-29 19:36:50 +03:00
Valentin Kipyatkov
5b997c2c43 Moved method 2015-06-29 19:36:49 +03:00
Valentin Kipyatkov
db144a6121 Suggestions from expression itself to have higher priority + fixed incorect upper case naming 2015-06-29 19:36:49 +03:00
Valentin Kipyatkov
4a52247ab7 Name validation filters out invisible declarations 2015-06-29 19:36:48 +03:00
Valentin Kipyatkov
5c0195ff68 IterateExpressionIntention: checking for name conflicts 2015-06-29 19:36:48 +03:00
Valentin Kipyatkov
abb729b2ed Moved and renamed classes 2015-06-29 19:36:47 +03:00
Valentin Kipyatkov
de2378f909 Rewritten NameValidatorImpl to be both more efficient and more correct 2015-06-29 19:36:47 +03:00
Valentin Kipyatkov
df5f035760 KT-7716 Introduce Variable's name suggestions often have "1" at the end for no real reason
#KT-7716 Fixed
2015-06-29 19:36:46 +03:00
Valentin Kipyatkov
ed267d9949 Code improvements in NameValidatorImpl 2015-06-29 19:36:46 +03:00
Valentin Kipyatkov
e00294d17b IterateExpressionIntention uses collection expression for name suggestions too 2015-06-29 19:36:45 +03:00
Valentin Kipyatkov
024834737d Removed unclear doc 2015-06-29 19:36:45 +03:00
Valentin Kipyatkov
f60470b3eb JetNameSuggester: no name duplicates + no full body resolve always 2015-06-29 19:36:45 +03:00
Valentin Kipyatkov
bce79906ef Use of List's instead of Array's 2015-06-29 19:36:44 +03:00
Valentin Kipyatkov
343604bce0 Minor 2015-06-29 19:36:44 +03:00
Valentin Kipyatkov
a2407aaaa4 Minor code improvements 2015-06-29 19:36:43 +03:00
Valentin Kipyatkov
3dd811e73e Reordered methods 2015-06-29 19:36:43 +03:00
Valentin Kipyatkov
c478f1d347 Renamed methods 2015-06-29 19:36:42 +03:00
Valentin Kipyatkov
a02c86bac9 Refactored NameValidator getting rid of it and replacing with a function 2015-06-29 19:36:42 +03:00
Valentin Kipyatkov
79a453f12c Renamed classes 2015-06-29 19:36:41 +03:00
Valentin Kipyatkov
ffa7492240 Moved classes 2015-06-29 19:31:21 +03:00
Valentin Kipyatkov
39f38591d9 Converted JetNameSuggester to Kotlin (step 2) 2015-06-29 19:31:21 +03:00
Valentin Kipyatkov
6f9e5ed386 Converted JetNameSuggester to Kotlin (step 1) 2015-06-29 19:31:21 +03:00
Valentin Kipyatkov
2206459874 Initial implementation of KT-7688 Intention action to iterate over iterable value
#KT-7688 Fixed
2015-06-29 19:31:21 +03:00
Valentin Kipyatkov
4fc67c27b0 Renamed class 2015-06-29 19:29:27 +03:00
Valentin Kipyatkov
498e746689 KT-8169 Strange exception when replacing function call to its only argument
#KT-8169 Fixed
2015-06-29 19:29:26 +03:00
Valentin Kipyatkov
463b0cda79 Fixed test data 2015-06-29 19:29:26 +03:00
Valentin Kipyatkov
786793744e Added getEqualsToken for future use 2015-06-29 19:29:26 +03:00
Valentin Kipyatkov
46ad1b8573 "Remove argument name" intention 2015-06-29 19:29:26 +03:00
Valentin Kipyatkov
6988297511 More informative intention text 2015-06-29 19:29:26 +03:00
Valentin Kipyatkov
98c0c636b3 Smaller availability range for add argument name intention 2015-06-29 19:29:26 +03:00
Valentin Kipyatkov
9d83510af5 KT-7144 Intention action on an argument in a call to use named arguments form
#KT-7144 Fixed
2015-06-29 19:29:25 +03:00
Valentin Kipyatkov
c689af142a Fixed highlighting for enum and object names in code
#KT-8134 Fixed
2015-06-29 19:29:25 +03:00
Valentin Kipyatkov
2bd1362be6 Create function/property from usage: added "member" when appropriate + changed order 2015-06-29 19:29:25 +03:00
Dmitry Jemerov
b691ed2494 use JetIcons instead of direct icon reference 2015-06-29 17:21:32 +02:00
Dmitry Jemerov
e441aa0a3f show Kotlin bytecode by explicit request, rather than always 2015-06-29 17:01:12 +02:00
Ilya Gorbunov
0e896ea1bb Drop streams and iterators: correct test data. 2015-06-29 17:06:49 +03:00
Ilya Gorbunov
6b700c4ba6 Restore and undeprecate removed Iterator.forEach(). 2015-06-29 17:06:48 +03:00
Ilya Gorbunov
34f939a476 Make sequence implementations private. 2015-06-29 17:06:46 +03:00
Ilya Gorbunov
4660b07687 StdLib cleanup: drop deprecated iterators and streams. 2015-06-29 17:06:45 +03:00
Ilya Gorbunov
6d4e48ab9a Compiler&plugin deprecations cleanup: string operations. 2015-06-29 17:06:43 +03:00
Ilya Gorbunov
35166f44ae StdLib deprecations cleanup: string operations. 2015-06-29 17:06:41 +03:00
Ilya Gorbunov
86f4a1b6e4 Compiler&plugin deprecations cleanup: replace streams with sequences. 2015-06-29 17:06:40 +03:00
Ilya Gorbunov
5779b89ff0 Deprecations cleanup: sequence -> asSequence 2015-06-29 17:06:33 +03:00
Ilya Gorbunov
765733b791 Compiler&plugin deprecations cleanup: withIndices -> withIndex or mapIndexed 2015-06-29 17:06:31 +03:00
Ilya Gorbunov
f4651f22ca Compiler&plugin deprecations cleanup: adhoc indices property for IntArrayList. 2015-06-29 17:06:29 +03:00
Ilya Gorbunov
32144257ec Compiler&plugin deprecations cleanup: length, size, indices, tail and other collection operations. 2015-06-29 17:06:28 +03:00
Ilya Gorbunov
f3a19ebe11 StdLib deprecations cleanup: length, size, indices and other collection operations. 2015-06-29 17:06:20 +03:00
Ilya Gorbunov
2c31a1a345 Compiler&plugin deprecations cleanup: *array -> *arrayOf, copyToArray -> toTypedArray. 2015-06-29 17:06:12 +03:00
Ilya Gorbunov
00a44f6d4f StdLib deprecations cleanup: *array -> *arrayOf, copyToArray -> toTypedArray. 2015-06-29 17:05:57 +03:00
Michael Nedzelsky
c462d23a0e add support for cancel compilation from IDE
#KT-8158 Fixed
2015-06-29 16:41:16 +03:00
Alexey Sedunov
4eeff03525 Change Signature: Support Kotlin functions overriding Java methods
#KT-5856 Fixed
2015-06-27 13:58:13 +03:00
Alexey Sedunov
38982fe641 Change Signature: Fix receiver removal in the dialog 2015-06-27 13:58:11 +03:00
Alexey Sedunov
5fb37097dc Introduce Variable: Fix offset to start template at
#KT-8162 Fixed
2015-06-27 13:58:10 +03:00
Alexey Sedunov
1469275a5a Extract Function: Fix return type computation for extracted callee expression
#KT-8233 Fixed
2015-06-27 13:58:09 +03:00
Alexey Sedunov
febf725e85 Extract Function: Extract block contents
#KT-8235 Fixed
2015-06-27 13:58:07 +03:00
Alexey Sedunov
4e7200d8e8 Extract Function: Add backticks to non-identifiers and references originally surrounded in backticks
#KT-8192 Fixed
2015-06-27 13:58:06 +03:00
Alexey Sedunov
c6f6637b25 Extract Function: Fix extraction of explicit/implicit invoke()
#KT-8116 Fixed
2015-06-27 13:58:04 +03:00
Alexey Sedunov
f6965b5004 PSI: Add parentheses around annotated expressions in returns
#KT-8260 Fixed
2015-06-27 13:58:03 +03:00
Alexey Sedunov
8c9863e759 PSI: Add parentheses around non-trivial callee expressions
#KT-8232 Fixed
2015-06-27 13:58:02 +03:00
Alexey Sedunov
5ac1fbf59b Descriptor Renderer: Add parentheses around receiver type if it's non-nullable function type
#KT-8188 Fixed
2015-06-27 13:58:00 +03:00
Alexey Sedunov
5d89097870 Move: Fix processing of references with qualifier receivers
#KT-8098 Fixed
2015-06-27 13:57:59 +03:00
Alexey Sedunov
c4442c59d4 Move: Suggest target file name based on selected declarations
#KT-8227 Fixed
2015-06-27 13:57:57 +03:00
Alexey Sedunov
6055933258 Copy: CopyFileHandler must support all elements inside of Kotlin file (in the absence of more specific handlers)
#KT-8175 Fixed
2015-06-27 13:57:56 +03:00
Ilya Gorbunov
cbdaf2a151 Minor: regenerate generated code. 2015-06-26 19:40:56 +03:00
Pavel V. Talanov
65c6adfaa4 Drop "injector-generator" module, tests and existing generated injectors
Move GeneratorsFileUtil to "generators" module
Drop "Generate Injectors" run configuration
2015-06-26 15:21:43 +03:00
Pavel V. Talanov
df529f1a4b Convert usages of existing generated injectors to dynamic injectors
Rewrite RuntimeModuleData to use hand-written code as we do not pack container module into runtime
This change introduces some overhead (up to 10% for the tests I ran) in some scenarios in IDE, that should be addressed later
2015-06-26 15:21:41 +03:00
Ilya Ryzhenkov
5db541ee24 Add container module with implementation of di based on java reflection
Initial implementation by Ilya Ryzhenkov
Renovation, optimization, integration and removal of unused features by Pavel Talanov
2015-06-26 15:21:39 +03:00
Alexander Udalov
f52bc8a2d2 CLI: make message bold only for errors and warnings
Info, logging and output are not important enough to appear bold every time
2015-06-26 13:31:36 +03:00
Alexander Udalov
499579274d Move MessageRenderer instances to top level 2015-06-26 13:31:35 +03:00
Natalia Ukhorskaya
999aea6179 Update to IDEA 142.2670.3 2015-06-26 12:30:48 +03:00
Valentin Kipyatkov
a7e032456c Minor corrections after code review 2015-06-25 21:58:16 +02:00
Valentin Kipyatkov
f679ed7011 Renamed a class 2015-06-25 21:58:16 +02:00
Valentin Kipyatkov
8146fb673b Moved classes to separate files 2015-06-25 21:58:16 +02:00
Valentin Kipyatkov
bf3b731347 More correct 2015-06-25 21:58:16 +02:00
Valentin Kipyatkov
afa46f1c95 Filtering out type parameters that are not visible at the completion point 2015-06-25 21:58:16 +02:00
Valentin Kipyatkov
e894a04ce6 Code refactoring 2015-06-25 21:58:16 +02:00
Valentin Kipyatkov
57ff2be9b9 Simplified code by introducing one more option in LookupElementFactor 2015-06-25 21:58:15 +02:00
Valentin Kipyatkov
73fd4ad57f Fixed small inconsistency in presentation for nested classes 2015-06-25 21:58:15 +02:00
Valentin Kipyatkov
01e56dc571 Fixed test data 2015-06-25 21:58:15 +02:00
Valentin Kipyatkov
c5f0fbf327 Replaced JetScopeUtils.getResolutionScope() with more correct utility 2015-06-25 21:58:15 +02:00
Valentin Kipyatkov
776d198ea5 Disabled parameter name&type completion for annotation type constructor 2015-06-25 21:57:15 +02:00
Valentin Kipyatkov
0ab155d61d Rename 2015-06-25 21:57:15 +02:00
Valentin Kipyatkov
75a260a366 Restarting completion when new suggestions may appear 2015-06-25 21:57:15 +02:00
Valentin Kipyatkov
fa588ace57 Fixed icons for java and compiled classes broken before 2015-06-25 21:57:14 +02:00
Valentin Kipyatkov
ecbc7ba5b6 Parameter name completion allows user prefix part in the name + more strict prefix matcher used 2015-06-25 21:57:14 +02:00
Valentin Kipyatkov
d95c44f838 Minor 2015-06-25 21:57:14 +02:00
Valentin Kipyatkov
1011a59884 Don't detect isDeprecated twice 2015-06-25 21:57:14 +02:00
Valentin Kipyatkov
8520235934 Fixed deprecated ordering and quick doc for java and compiled classes in completion 2015-06-25 21:57:14 +02:00
Valentin Kipyatkov
53688d061a Fixed name suggestions for types with abbreviations like "URL" 2015-06-25 21:57:13 +02:00
Valentin Kipyatkov
84ba634c3e Parameter names from current file get higher priority + number of occurrences matters 2015-06-25 21:57:13 +02:00
Valentin Kipyatkov
c6fd04dcac No duplication for parameter name/types from current file and from classes 2015-06-25 21:57:13 +02:00
Valentin Kipyatkov
ce6668b5ba Fixed class names shortening 2015-06-25 21:57:13 +02:00
Valentin Kipyatkov
55e9a3b851 Refactored createLookupElementForType changing rendering for function types 2015-06-25 21:57:13 +02:00
Valentin Kipyatkov
17500cef98 Completion of parameter name/types from the current file 2015-06-25 21:57:13 +02:00
Valentin Kipyatkov
22ad1389f5 Parameter name completion: no insertion on just typing 2015-06-25 21:57:12 +02:00
Valentin Kipyatkov
c0126b08c3 Parameter name completion: added more tests for ordering 2015-06-25 21:57:12 +02:00
Valentin Kipyatkov
437478e694 Parameter name completion: suppressed auto-insertion 2015-06-25 21:57:12 +02:00
Valentin Kipyatkov
6478c7d460 Ordering of parameter name suggestions by type relevance 2015-06-25 21:57:12 +02:00
Valentin Kipyatkov
e2991b1412 Disabled parameter name completion where it makes no sense 2015-06-25 21:57:12 +02:00
Valentin Kipyatkov
0e045b9478 Completion of parameter name+type works for val/var parameters 2015-06-25 21:57:11 +02:00
Valentin Kipyatkov
0e4ac7108a Completion: fixed insertion of java class names that require escaping 2015-06-25 21:57:11 +02:00
Valentin Kipyatkov
8210d3091f Initial implementation of KT-6427 Completion to use Java name suggestion to complete function parameters
(+ filtered out synthetic Kotlin classes from completion)
2015-06-25 21:57:11 +02:00
Valentin Kipyatkov
e0f1bde20a Renames 2015-06-25 21:57:11 +02:00
Dmitry Jemerov
c91a359fea run Kotlin library configurator with alternative resolve enabled 2015-06-25 21:30:50 +02:00
Mikhail Glukhikh
4d895a4c31 Sealed classes: extra java against kotlin tests, together with an implementation of Java diagnostics inside these tests 2015-06-25 19:07:26 +03:00
Mikhail Glukhikh
6e2395471d Sealed code generation: sealed is considered abstract, correct serialization
A pair of tests provided.
2015-06-25 19:07:23 +03:00
Mikhail Glukhikh
4d2ba3e890 Sealed constructors are made private in front-end, tests changed accordingly 2015-06-25 19:07:20 +03:00
Mikhail Glukhikh
4517e15299 Minor refactoring of resolveDelegationSpecifierList 2015-06-25 19:07:18 +03:00
Mikhail Glukhikh
f6872dfbea Exhaustive when support for sealed classes #KT-7606 Fixed
When on sealed can use is (both for derived classes and objects) or just comparison (only for derived objects).
A pack of tests provided.
2015-06-25 19:07:16 +03:00
Mikhail Glukhikh
8d25c20169 Introduction of sealed classes
Sealed classes can be derived only by their own inner classes or objects.
Their constructors cannot be called explicitly, so compiler knows all their descendants.
Incompatible modifier checks (final, abstract). Impossible with interface, object, enum.
A pack of tests provided.
2015-06-25 19:07:13 +03:00
Mikhail Glukhikh
2dea17a3a9 Final specification for sealed class hierarchies, additional words about sealed when optimization 2015-06-25 19:07:10 +03:00
Andrey Breslav
de876a8c26 Create sealed-hierarchies-and-when.md 2015-06-25 19:07:08 +03:00
dnpetrov
f364d23ee9 KT-5347 VerifyError on local data class with closure
- generated copy() should push captured fields on stack
- refactor context lookup
- handle vars in local classes using instance fields

 #KT-5347 Fixed
2015-06-25 17:52:30 +03:00
dnpetrov
c24e6b5698 Support 'break' and 'continue' in expressions
- generate fake jump instructions so that we can always analyze stack depths
- fix stack before break and continue by dropping excessive elements (e.g., *a*.foo(*b*, c?:continue))
- Analyzer rewritten in Kotlin, with more flexible control of CFG traversal

 #Fixed KT-3340
 #Fixed KT-4258
 #Fixed KT-7941
2015-06-25 17:40:55 +03:00
Nikolay Krasko
d937f385cd Copy libraries to {project.dir}/lib folder by default (KT-8231)
#KT-8231 Fixed
2015-06-25 13:50:32 +03:00
Nikolay Krasko
a98468e829 Test for KT-5326
#KT-5326 Obsolete
2015-06-25 13:50:14 +03:00
Ilya Gorbunov
d20d8e2106 2nd stage of replaceFirst semantics change: remove deprecated String.replaceFirst(String), rename replaceFirstLiteral to replaceFirst. 2015-06-24 21:48:09 +03:00
Ilya Gorbunov
249106647c 2nd stage of split semantics change: remove deprecated String.split(String), rename splitBy back to split. Provide replacement for splitBy and splitWithRegex (JS). 2015-06-24 21:48:07 +03:00
Ilya Gorbunov
9caf5baf34 Refactor delegation unit tests. 2015-06-24 21:39:41 +03:00
Ilya Gorbunov
d04e94c826 Use NoSuchElementException instead of KeyMissingException. Deprecate KeyMissingException. 2015-06-24 21:39:40 +03:00
Ilya Gorbunov
9c7992abbb Use getOrElse in MapVal.get 2015-06-24 21:39:38 +03:00
Ilya Gorbunov
a6b7857d57 Drop complicated MapAccessors. Deprecate simple cases of Delegates.mapVar and Delegates.mapVal in favor of direct delegation without wrappers. 2015-06-24 21:39:37 +03:00
Ilya Gorbunov
d2feefbf3a Document map delegation accessors and withDefault functionality. 2015-06-24 21:39:36 +03:00
Ilya Gorbunov
2f8a431a79 Change getOrElse and getOrPut implementations so that double lookup is made when map doesn't contain value, rather when does. 2015-06-24 21:39:34 +03:00
Ilya Gorbunov
5306e88425 Provide the way to specify implicit default for a readonly or mutable map.
Refactor: rename default key and value providers.
2015-06-24 21:39:33 +03:00
Ilya Gorbunov
d137a83471 Simple extensions to delegate readonly property to Map and read-write property to MutableMap without delegate wrappers.
Delegation to map with custom key selector by map accessors.
2015-06-24 21:39:31 +03:00
Ilya Gorbunov
2989586582 Change Lazy from an interface to an abstract class with internal constructor to prevent implementations violating its contract. 2015-06-24 21:39:30 +03:00
Evgeny Gerashchenko
55dad40650 Added reflect.jar as dependency for proguard. Fixed build. 2015-06-24 20:51:17 +03:00
Evgeny Gerashchenko
041df7fd15 Made it possible to easily enable debug logging in incremental compilation tests. 2015-06-24 18:01:51 +03:00
Evgeny Gerashchenko
23eab73507 Added extra logging in incremental cache and Kotlin Builder. 2015-06-24 18:01:51 +03:00
Mikhail Glukhikh
5fabb962ae Private constructors are now accessed via synthetic constructor with DEFAULT_CONSTRUCTOR_MARKER as an additional argument #KT-6299 Fixed
A set of tests provided. Some external tests fixed accordingly.
Companion object creation changed accordingly.
Derived classes now can use base class with the private constructor.
Refactoring of AccessorForFunctionDescriptor.
2015-06-24 12:30:11 +03:00
Mikhail Glukhikh
83ce674a37 Warning message changed #KT-8143 Fixed 2015-06-24 12:30:08 +03:00
Michael Bogdanov
9ef00f0621 Code clean 2015-06-24 09:48:56 +03:00
Michael Bogdanov
b1c5002889 Remove finally marker at inlining 2015-06-24 09:48:55 +03:00
Michael Bogdanov
a018e4e12a Updated exception table generation: support new exception table in non-local returns 2015-06-24 09:48:55 +03:00
Michael Bogdanov
93c5a52d13 Updated exception table generation: try block return moved to uncatched interval
#KT-8148 Fixed
2015-06-24 09:48:55 +03:00
Michael Bogdanov
11ab2148b2 Fixed scipt execution classpath 2015-06-24 09:48:55 +03:00
Michael Nedzelsky
71729031c1 fix maven build 2015-06-24 01:35:25 +03:00
Alexander Udalov
0593b833b5 Check extension receiver properly for property references
Without this, the unrelated type specified on the LHS of a property reference
literal was considered to be an extension receiver of the candidate, and the
resolution was erroneously successul. This is only reproducible for properties,
because if we're trying to resolve an extension, we consider all properties
from the scope, even non-extensions, because there may be a property of an
extension-functional type (T.() -> R). (We don't do this for functions.)

 #KT-7430 Fixed
 #KT-7945 Fixed
2015-06-23 23:35:17 +03:00
Natalia Ukhorskaya
25210c0c18 Merge pull request #707 from JetBrains/rr/yole/run-configurations
add missing UI for specifying alternative JRE path to Kotlin run configuration
2015-06-23 19:06:28 +03:00
Dmitry Jemerov
02211f1431 reorder fields to match Java 2015-06-23 18:02:15 +02:00
Dmitry Jemerov
a3b543a05a change module chooser to look like in IDEA's Java run configuration 2015-06-23 17:48:34 +02:00
Dmitry Jemerov
e3846f0150 use PanelWithAnchor to align all labels and text fields in Kotlin run configuration 2015-06-23 17:16:32 +02:00
Dmitry Jemerov
1ddf87fa2e validate some of the settings in KotlinRunConfiguration 2015-06-23 16:32:15 +02:00
Dmitry Jemerov
5b1d393d05 report JIT time 2015-06-23 16:24:49 +02:00
Dmitry Jemerov
2216ec1b68 report GC time 2015-06-23 16:24:48 +02:00
Dmitry Jemerov
6ca4dd32cf include module names in analyze and generate perf reports 2015-06-23 16:24:48 +02:00
Dmitry Jemerov
ebcd7de26b report meaningful init times for subsequent runs when -Xrepeat flag is used 2015-06-23 16:24:47 +02:00
Dmitry Jemerov
669cd9e514 environment variable for enabling perf 2015-06-23 16:24:47 +02:00
Dmitry Jemerov
7cfb91192f K2JVMCompiler: cleanup after J2K 2015-06-23 16:24:46 +02:00
Dmitry Jemerov
0600abd6bd K2JVMCompiler: J2K 2015-06-23 16:24:46 +02:00
Dmitry Jemerov
d84c9fa59e K2JVMCompiler: rename to .kt 2015-06-23 16:24:45 +02:00
Sergey Mashkov
ab5d8d12ea IDL2K declarations order stability 2015-06-23 17:21:13 +03:00
Denis Zharkov
8412984774 Delete IdeaJdkAnnotationsReflectedTest
Kotlin JDK annotations are empty now
2015-06-23 16:44:47 +03:00
Denis Zharkov
602a1c11ac Fix testData: parameter names are dropped from annotations 2015-06-23 16:44:47 +03:00
Denis Zharkov
35fa4eadd8 Attach ideaSDK/jdkAnnotations.jar to external annotations for intention tests
As they're always attached to real SDKs in real projects
2015-06-23 16:44:47 +03:00
Denis Zharkov
ad99b079b9 Update intention tests: don't use java.util.Collections.*
Because their behaviour depends on annotations that we are going to drop
2015-06-23 16:44:46 +03:00
Denis Zharkov
d18c1ca32e Update J2K behavior with empty jdk annotations 2015-06-23 16:44:46 +03:00
Denis Zharkov
80a7f79f12 Make jars with JDK/Android SDK annotations empty
- Compiler use them only for getting parameter names and we are OK to drop it
- IDE plugin can use jdkAnnotations from ideaSDK
2015-06-23 16:44:27 +03:00
Nikolay Krasko
8013cbe4ef Fix forEach method in TrackingSlicedMap 2015-06-23 16:00:40 +03:00
Nikolay Krasko
237987fcc5 Workaround for non-thread-safe intentions text state 2015-06-23 16:00:38 +03:00
Nikolay Krasko
87f325c44b Use common Kotlin test supertype to avoid invalid root access assert 2015-06-23 16:00:21 +03:00
Nikolay Krasko
ef7cc6ae10 Force openning project 2015-06-23 15:59:40 +03: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
Evgeny Gerashchenko
2820dbf181 Removed workaround for exception in IDEA. 2015-06-23 15:59:36 +03:00
Nikolay Krasko
66a4e0f299 Mute error about org.iq80.snappy.Snappy 2015-06-23 15:59:34 +03:00
Nikolay Krasko
549987b27f Ignore actions with empty message 2015-06-23 15:59:33 +03:00
Nikolay Krasko
94db320f7a Update hack for restore validity of builtins files 2015-06-23 15:59:31 +03:00
Nikolay Krasko
53ab02e877 Generate private constructors for enums in coverter 2015-06-23 15:59:29 +03:00
Nikolay Krasko
b64aff9f9a Add actions with "Supress " prefix to irrelevant group 2015-06-23 15:59:27 +03:00
Nikolay Krasko
737ad5b9e0 Search in index under read action in tests 2015-06-23 15:59:25 +03:00
nik
3136e5eefd removed registration of deprecated extensions points without implementations 2015-06-23 15:59:24 +03:00
Natalia Ukhorskaya
c2a1dc4c90 Fix compilation errors 2015-06-23 15:59:22 +03:00
Natalia Ukhorskaya
aaa4e747db Fix tests: type for string isn't now rendered by default 2015-06-23 15:59:19 +03:00
Natalia Ukhorskaya
ba6b378378 Fix tests: register JavaClassSupers service in WebDemoTest 2015-06-23 15:59:17 +03:00
Nikolay Krasko
757b963731 Register JavaClassSupers service 2015-06-23 15:59:14 +03:00
Alexey Sedunov
73b2de95ab Create from Usage: Do not delete temporary file as this operation is not supported by IDEA anymore 2015-06-23 15:59:12 +03:00
Nikolay Krasko
8e51f1aadd Idea moved to junit-4.12 2015-06-23 15:59:10 +03:00
Nikolay Krasko
2ebdd32267 Make compatible with 142 idea branch 2015-06-23 15:59:08 +03:00
Nikolay Krasko
2536648e60 Update to Idea 15 eap (142.2491.1) 2015-06-23 15:59:06 +03:00
Pavel V. Talanov
16ffdc0713 ModuleResolverProvider: ResolveSessionForBodies are created lazily 2015-06-23 15:19:40 +03:00
Pavel V. Talanov
f454b7d15e AnalyzerFacade: resolvers for modules are created lazily 2015-06-23 15:19:31 +03:00
Pavel V. Talanov
96199ecc1f Refactor AnalyzerFacade: move module.initialize() outside of createResolverForModule() 2015-06-23 15:19:22 +03:00
Pavel V. Talanov
997a6f1381 Fix import resolution for some cases of malformed imports ("import some.")
Fix parsing import directives in case of non-identifier after "import"
Add diagnostics test for malformed imports
2015-06-23 15:19:14 +03:00
Pavel V. Talanov
37bcd455b5 Make ModuleDescriptor#getPackage() return not null lazy object with lazy scope
Refactor: no need to create package view in order to obtain its subpackages
LazyPackageViewDescriptorImpl to replace PackageViewDescriptorImpl
This allows to avoid computations when package views are requested but their contents not necessarily queried
For example: DescriptorResolver.resolvePackageHeader()
2015-06-23 15:19:06 +03:00
Pavel V. Talanov
1cf38e4799 Convert PackageViewDescriptor to Kotlin 2015-06-23 15:18:57 +03:00
Pavel V. Talanov
19cca8f930 Fix corner case in KotlinCopyPasteReferenceProcessor 2015-06-23 15:18:28 +03:00
Dmitry Jemerov
308b9ffc39 add missing UI for specifying alternative JRE path to Kotlin run configuration 2015-06-23 14:11:36 +02:00
Pavel V. Talanov
1ef125fa2c Change testa data according to semantics change 2015-06-23 14:35:46 +03:00
Pavel V. Talanov
6bdb35ff23 Fix project code
This would no longer compile with the new imports resolution
2015-06-23 14:15:27 +03:00
Pavel V. Talanov
c5e6dea8b0 Minor: Inline and remove JetModuleUtil 2015-06-23 14:15:17 +03:00
Pavel V. Talanov
ade898775c Minor: remove unused parameter 2015-06-23 14:14:35 +03:00
Pavel V. Talanov
257b8f31e7 Change import resolution algorithm
The new algorithm: move from right to left, trying to find package, (new code) when found go right resolving descriptors (uses old code)
This allows to avoid unnecessary computations (matters in IDE moslty) for resolving root packages
This changes semantics of imports resolution: when package clashes with any declaration package is preffered
2015-06-23 14:14:25 +03:00
Natalia Ukhorskaya
7b0458f1a9 Debugger: Navigate to first line when source file for mapping (inline) not found 2015-06-23 10:58:45 +03:00
Valentin Kipyatkov
3c16e455f7 Removed unused field 2015-06-22 17:28:44 +03:00
Karol Depka
033f2668d5 KT-7615 workaround for crash on Android ART caused by "private constructor" in DescriptorBasedProperty #KT-7615 Fixed
Tested on Android 5.1.0 API 22 in Genymotion
2015-06-22 15:57:04 +03:00
Sergey Mashkov
0e518e46bb JS and IDL2K: make dictionary builder functions public 2015-06-22 12:57:23 +03:00
Natalia Ukhorskaya
3caeddd8dc Minor: log error if we couldn't insert an expression during debug 2015-06-22 10:40:15 +03:00
Natalia Ukhorskaya
0ea65491aa Disable all jdi request during evaluation 2015-06-22 10:40:13 +03:00
Natalia Ukhorskaya
8bb33f0df5 Support labels evaluation in debugger 2015-06-22 10:40:12 +03:00
Natalia Ukhorskaya
0f108eee2f Extract function for debugger: add block code fragment as list of statement, not as block expression 2015-06-22 10:40:11 +03:00
Natalia Ukhorskaya
9a09a25df5 Refactoring: extract class for parameter in debugger 2015-06-22 10:40:09 +03:00
Ilya Gorbunov
346ea28337 lazyOf to create already initialized lazy value. 2015-06-19 23:08:17 +03:00
Ilya Gorbunov
b71fe4cd25 Lazy: Rename valueCreated property to isInitialized() function.
Notes about behavior of Lazy when initializer throws an exception.
2015-06-19 23:08:15 +03:00
Ilya Gorbunov
ecd131a7a1 Lazy made serializable. 2015-06-19 23:08:14 +03:00
Ilya Gorbunov
bfdb200cc7 Lazy: Use UNINITIALIZED_VALUE instead of null to indicate that value was not initialized. Remove escape and unescape methods. 2015-06-19 23:08:12 +03:00
Ilya Gorbunov
59ff9dc3cf Document lazy interface and methods. 2015-06-19 23:08:11 +03:00
Ilya Gorbunov
536e669023 Provide Lazy<T> in kotlin package — an interface that represents lazily computed value. Read-only properties can be delegated to lazy with the extension getter. Delegates.lazy and blockingLazy are deprecated. 2015-06-19 23:08:09 +03:00
Ilya Gorbunov
f2788d53c0 Refactor: rename PropertyMetadata parameter from 'desc' to 'property'.
Correct test data after parameter has been renamed.
2015-06-19 23:08:08 +03:00
Ilya Gorbunov
6b747cf6f8 Move delegate property interfaces to a separate file. 2015-06-19 23:00:03 +03:00
Ilya Gorbunov
fb6c7e20de Use identity equals in lazy unescape.
#KT-7474 Fixed
2015-06-19 23:00:01 +03:00
Alexey Sedunov
3266d8c29a Parser: Disable joining complex tokens while parsing type references
#KT-8141 Fixed
2015-06-19 21:45:13 +03:00
Alexey Sedunov
0e9bcee0bc Move: Specify file name in command description 2015-06-19 21:45:12 +03:00
Alexey Sedunov
6376420970 Move: UI Fixed 2015-06-19 21:45:11 +03:00
Alexey Sedunov
96a50f46c2 Move: Fix dialog mnemonics 2015-06-19 21:45:10 +03:00
Alexey Sedunov
dd3ba8675d Move: Fix handler selection when moving Java class with Kotlin file/class 2015-06-19 21:45:09 +03:00
Alexey Sedunov
cd550ed5ba Move: Suggest empty package when moving to source root 2015-06-19 21:45:08 +03:00
Alexey Sedunov
aef2443528 Move: Add "Update package directive" option to dialog
#KT-6084 Fixed
2015-06-19 21:45:07 +03:00
Alexey Sedunov
111a4a5cbc Move: Disable "File name" field when switching to "Move to file" mode 2015-06-19 21:45:06 +03:00
Alexey Sedunov
77f2c5d5b9 Move: Fix file rename on undo/redo 2015-06-19 21:45:05 +03:00
Ilya Gorbunov
a80f65cfd9 Do not create empty list when reversing empty collection or array — use singleton empty list instead.
#KT-8099 Fixed
2015-06-19 19:41:10 +03:00
Michael Nedzelsky
8a3182d1e7 Update source roots for idea libraries 2015-06-19 15:51:53 +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
Mikhail Glukhikh
065db07e1c More accurate check on an enum entry deprecated super constructor #EA-69735 Fixed 2015-06-19 13:50:49 +03:00
Yan Zhulanow
d0897193e8 kapt: Use actual classpath in the second Kotlin task as well 2015-06-19 02:29:13 +03:00
Yan Zhulanow
5f85a028ae kapt: Fix ConcurrentModificationException in Gradle 2015-06-19 02:29:13 +03:00
Yan Zhulanow
d9ac8c9d22 kapt: Pass annotation declarations options via Java APT options 2015-06-19 02:29:12 +03:00
Yan Zhulanow
205585c63e kapt: Support lazy evaluation of additional kapt arguments in test 2015-06-19 02:26:21 +03:00
Yan Zhulanow
8a10de3a26 Add Gradle test for additional kapt arguments 2015-06-19 02:26:20 +03:00
Yan Zhulanow
7f2bd5b9d4 Add basic kapt tests 2015-06-19 02:26:19 +03:00
Yan Zhulanow
fee1726dfb Write annotations with RetensionPolicy(SOURCE) to light classes 2015-06-19 02:25:41 +03:00
Yan Zhulanow
17e6b8f014 kapt: Lazy evaluation of additional arguments 2015-06-19 02:25:40 +03:00
Yan Zhulanow
f158b5b0c4 Support additional compiler arguments 2015-06-19 02:25:40 +03:00
Yan Zhulanow
3ea4306eb9 kapt: Generate stub source file just after Kotlin compile 2015-06-19 02:25:40 +03:00
Yan Zhulanow
37d52501c8 Add simple annotation processor for tests 2015-06-19 02:25:39 +03:00
Michael Nedzelsky
eda7f49b61 fix KT-7879 KotlinJS - Cannot browse jslib sources
#KT-7879 Fixed
2015-06-18 19:47:56 +03:00
Alexey Sedunov
17ca0d2c2c Minor: Extract Preview class 2015-06-18 19:28:08 +03:00
Alexey Sedunov
7ac02d751a Minor: Use MultiMap 2015-06-18 19:28:07 +03:00
Alexey Sedunov
378c1744cb Introduce Parameter: Suggest removing extension receiver which becomes unused after new parameter is added 2015-06-18 19:28:06 +03:00
Alexey Sedunov
5409b19abc Change Signature: Do not replace implicit receivers in calls with at least one explicit receiver
#KT-7988 Fixed
2015-06-18 19:28:05 +03:00
Alexey Sedunov
d58112a32a Extract Function: Use intersection type to compute candidate types for parameters
#KT-8103 Fixed
2015-06-18 19:28:04 +03:00
Alexey Sedunov
1a9003c325 Copy: Fix Kotlin file copying. Drop useless JetCopyClassHandler
#KT-7515 Fixed
2015-06-18 19:28:03 +03:00
Alexey Sedunov
683a8895df Introduce Variable: Do not insert unused variable references
#KT-7227 Fixed
2015-06-18 19:28:02 +03:00
Alexey Sedunov
1506531e59 Rename: Fix class rename by constructor reference 2015-06-18 19:28:01 +03:00
dnpetrov
36ae8790a1 KT-8011 Compiler crashes on attempt to create local class inside lambda
- use StackValue from upper-level context if local lookup fails

 #KT-8011 Fixed
2015-06-18 17:40:24 +03:00
Michael Nedzelsky
dba29fff0d fix KT-7932 plugin generates absolute path to kotlin-jslib.jar for JS module (in .iml files)
#KT-7932 Fixed
2015-06-18 16:54:35 +03:00
Michael Nedzelsky
3b43f68c1e minor: refactoring KotlinJavaScriptLibraryManager 2015-06-18 16:54:32 +03:00
Nikolay Krasko
818bfce1f1 Minor: add method for printing thread name 2015-06-18 16:45:23 +03:00
Nikolay Krasko
6d7cc8bc02 Minor: Don't print end message if profiler was muted 2015-06-18 16:45:22 +03:00
Nikolay Krasko
0f032100fc Update source roots for idea libraries 2015-06-18 16:45:21 +03:00
Ilya Gorbunov
4093147c69 Regenerate docs for intersect and subtract. (PR#703) 2015-06-18 15:13:48 +03:00
Alex Roussos
00c2b684fd Fix documentation for Sets intersect() and subtract()
Adds correct documentation for the Sets intersect() and subtract() methods, which had been copied from union().
2015-06-18 15:10:44 +03:00
dnpetrov
046189087a KT-5963 Call to super shouldn't require type specification if there is no conflict
Implemented unqualified 'super' type resolution (in BasicExpressionTypingVisitor).

No overload resolution of any kind is involved.
Corresponding supertype is determined by the expected member name only:
- 'super.foo(...)' - function or property (of possibly callable type) 'foo'
- 'super.x' - property 'x'
Supertype should provide a non-abstract implementation of such member.
As a fall-back solution for diagnostics purposes, consider supertypes with abstract implementation of such member.

Diagnostics:
- AMBIGUOUS_SUPER on 'super', if multiple possible supertypes are available;
- ABSTRACT_SUPER_CALL on selector expression, if the only available implementation is abstract.

#KT-5963 Fixed
2015-06-18 14:16:34 +03:00
Ilya Gorbunov
46baffc233 Temporary Add jvmOverloads to String.indexOf 2015-06-17 23:15:33 +03:00
Sergey Mashkov
bff88b9fe1 Fix gradle test 2015-06-17 20:41:00 +03:00
Dmitry Jemerov
e852b2d748 fix tests, sorry 2015-06-17 18:18:24 +02:00
Alexander Udalov
1a3209e1dc Drop traits with required classes
#KT-4771 Rejected
2015-06-17 16:23:58 +03:00
Alexander Udalov
dc909ba1d4 Minor, fix ExtensionReceiver#toString 2015-06-17 16:23:57 +03:00
Alexander Udalov
8207e08c61 Convert TraitImplBodyCodegen to Kotlin 2015-06-17 16:23:57 +03:00
Alexander Udalov
98ce0d529c Fix incorrect 'original' in property accessors
#KT-3930 Fixed
2015-06-17 16:23:56 +03:00
Alexander Udalov
7c846388bd Remove some unreachable/duplicated code in StackValue 2015-06-17 16:23:56 +03:00
Alexander Udalov
4dcc373a5a Fix concrete method inheritance in interfaces
For each non-abstract non-declared (i.e. inherited from supertypes) method in
an interface we generate its static form to the TImpl, which calls the TImpl
method from the corresponding supertype.

The accidental override tests changed because we're now trying to generate the
delegate for the super method, not knowing that it will clash with the declared
method

 #KT-2888 Fixed
 #KT-5393 Fixed
2015-06-17 16:23:56 +03:00
Alexander Udalov
f81c364999 Add test cases for obsolete issues
#KT-3407 Obsolete
 #KT-4753 Obsolete
2015-06-17 16:23:55 +03:00
Dmitry Jemerov
5eb4a47a1a command line flag to repeat compilation multiple times 2015-06-17 14:55:12 +02:00
Dmitry Jemerov
ab33e4935e restore perf output in command line; always remove it from output in tests 2015-06-17 14:53:09 +02:00
Sergey Mashkov
342f35fb65 IDL2K better dictionary support: generate interfaces with builder function
suppress inline warning, replace Long with Int
2015-06-17 15:26:06 +03:00
Sergey Mashkov
8238883ac4 IDL2K better dictionary support: generate interfaces with builder function 2015-06-17 15:26:06 +03:00
Sergey Mashkov
c4d53e1e16 IDL2K introduce required parameters list to avoid possible ambiguous calls 2015-06-17 15:26:06 +03:00
Sergey Mashkov
20a67c41ee IDL2K introduce commented declarations list 2015-06-17 15:26:05 +03:00
Sergey Mashkov
2cc708c5a9 IDL2K restrict readonly attributes to vals 2015-06-17 15:26:05 +03:00
Sergey Mashkov
c0c0f6152a IDL2K avoid unnecessary super() calls in secondary constructors 2015-06-17 15:26:05 +03:00
Sergey Mashkov
28f228ccc0 IDL2K better results stability 2015-06-17 15:26:04 +03:00
Sergey Mashkov
1a5e6634e2 JS generate new stubs with latest IDL2K 2015-06-17 15:26:04 +03:00
Sergey Mashkov
68183a74fa IDL2K rework types
Fixes #KT-8015
2015-06-17 15:26:04 +03:00
Sergey Mashkov
387291cbf7 IDL2K support static members 2015-06-17 15:26:03 +03:00
Sergey Mashkov
5000fe8133 IDL2K Multiple constructors (via secondary constructors when needed) 2015-06-17 15:26:03 +03:00
dnpetrov
a2b2eba1a1 Extended version of AbstractWriteSignatureTest:
- support multiple expectations in file
- support field signature expectations
- report failures in a more usable format
2015-06-17 13:45:08 +03:00
Evgeny Gerashchenko
b068a1dd5f Added test for implicit receiver in class. 2015-06-17 13:14:07 +03:00
Evgeny Gerashchenko
154b0d8351 KT-7899 "Do not check if annotated by" setting for "Unused symbol" doesn't affect properties
#KT-7899 fixed
2015-06-17 13:14:06 +03:00
Evgeny Gerashchenko
cc70ea2586 KT-7883 Receiver parameter falsely marked as unused
#KT-7883 fixed
2015-06-17 13:14:06 +03:00
Evgeny Gerashchenko
7511b5bafe If KotlinBuilder throws exception, user can see its stacktrace and report by one-click. 2015-06-17 13:14:06 +03:00
Evgeny Gerashchenko
88f2a4be52 KT-7651 IllegalArgumentException on attempt to rename class when it has anonymous subclasses
#KT-7651 fixed
 #EA-69049 fixed
2015-06-17 13:14:06 +03:00
Evgeny Gerashchenko
985b8c0ba6 KT-8042 ISE at KotlinHighlightExitPointsHandlerFactory.createHighlightUsagesHandler() on typing a function name starting with throw
#KT-8042 fixed
 #EA-68157 fixed
2015-06-17 13:14:05 +03:00
Evgeny Gerashchenko
0dd151142d KT-3639 Can't find sources of AbstractIterator when navigating from stack strace
#KT-3639 fixed
2015-06-17 13:14:05 +03:00
Evgeny Gerashchenko
811fed547b Convert to Kotlin, cleanup. 2015-06-17 13:14:05 +03:00
Evgeny Gerashchenko
cea0ffa3b7 Convert to Kotlin, auto-convert. 2015-06-17 13:14:05 +03:00
Evgeny Gerashchenko
254c58f9e4 Convert to Kotlin, rename. 2015-06-17 13:14:05 +03:00
Mikhail Glukhikh
707307b19c Fix for a cyclic generic upper bound for a class type parameter. A pair of tests. 2015-06-17 11:56:28 +03:00
Nikolay Krasko
df2c7eb9b2 Update to Idea 141.1531.2 2015-06-17 11:52:02 +03:00
Nikolay Krasko
4f763c1a43 Fixes after review 2015-06-17 11:41:17 +03:00
Nikolay Krasko
8118297f89 Remove descriptions to highlight only new targets in and view 2015-06-17 11:41:16 +03:00
Nikolay Krasko
0178cbdfb0 Deprecate all old targets and introduce new with maven artifacts 2015-06-17 11:41:15 +03:00
Nikolay Krasko
9143113a50 Download prebuilt idea maven artifacts 2015-06-17 11:41:15 +03:00
Nikolay Krasko
265708bacf Separate downloading and configuring ideaSDK 2015-06-17 11:41:14 +03:00
Nikolay Krasko
fb4ef41b09 Introduce parameter for ideaSDK folder 2015-06-17 11:41:12 +03:00
Zalim Bashorov
289efb8984 JS backend: don't fail when invoke call got extension receiver implicitly
#EA-67456 Fixed
2015-06-17 11:17:08 +03:00
Zalim Bashorov
fe7ee3fb66 JS backend tests: replace run with myRun in closure tests 2015-06-17 11:17:08 +03:00
Zalim Bashorov
d63dbf9a3e Minor in JS backend: don't fail when name is null
#EA-66032 Obsolete
2015-06-17 11:17:08 +03:00
Zalim Bashorov
65adc3ac02 JS backend: don't use octal numbers when render non-latin symbols, because of it prohibited in strict mode
#KT-7921 Fixed
2015-06-17 11:17:08 +03:00
Nikolay Krasko
69ae976be3 Revert idea to 141.1531.1 2015-06-17 03:26:05 +03:00
Nikolay Krasko
d9bcb8b18c Update to idea 141.1531.2 2015-06-16 23:52:10 +03:00
Michael Nedzelsky
30e1123af6 remove KotlinJavaScriptLibraryPresentationProvider
#KT-8056 Fixed
#KT-8058 Fixed
2015-06-16 21:19:40 +03:00
Alexey Sedunov
62f9672461 Rename: Fix field identifier replacement #KT-8018 Fixed 2015-06-16 21:15:40 +03:00
Alexey Sedunov
98dce65337 Introduce Variable: Fix NPE for the case of statement-like expression
#KT-8054 Fixed
2015-06-16 21:15:39 +03:00
Alexey Sedunov
dda271d38d Delete/Move: Delete entire file when deleting top-level class or object and no other top-level declarations are present. Ask the user confirmation if deletion if caused by the Move refactoring
#KT-8033 Fixed
2015-06-16 21:15:38 +03:00
Alexey Sedunov
e1e818858e Change Signature: Fix primary constructor processing 2015-06-16 21:15:37 +03:00
Alexey Sedunov
64bbbac9dc Change Signature: Replace entire JetThisExpression when converting receiver to parameter #KT-7970 Fixed 2015-06-16 21:15:36 +03:00
Alexey Sedunov
e481ed756d Change Signature: Fix transfer of argument to receiver position
#KT-7987 Fixed
2015-06-16 21:15:35 +03:00
Alexey Sedunov
9bfa437c96 Introduce Parameter: Do not highlight removable parameters if default value is enabled 2015-06-16 21:15:34 +03:00
Alexey Sedunov
90032fe7d7 Introduce Lambda Parameter: Merge actions to allow for atomic undo/redo 2015-06-16 21:15:33 +03:00
Alexey Sedunov
09565c78c5 Introduce parameter: Do not substitute references which don't resolve to parameters or receivers of the target function #KT-7965 Fixed 2015-06-16 21:15:32 +03:00
Alexey Sedunov
efb36f4a49 Find Usages: Use isEquivalenTo for PsiCompiledElement only when matching reference targets #KT-7983 Fixed 2015-06-16 21:15:31 +03:00
Alexey Sedunov
d1d4736fdd Create from Usage: Do not navigate to original file if template editing is cancelled
#KT-8037 Fixed
2015-06-16 21:15:30 +03:00
Alexey Sedunov
f08c7d0fd8 Call Resolver: Fix nullability of parenthesized safe calls used as value arguments
#KT-7903 Fixed
2015-06-16 21:15:29 +03:00
Alexey Sedunov
d2c33c13a6 Change Signature/Rename: Fix renaming of extension function parameter 2015-06-16 21:15:27 +03:00
Dmitry Jemerov
a0aba04338 rebase ate my changes 2015-06-16 18:11:19 +02:00
Dmitry Jemerov
ed7cc67f19 thread-safe usage of performance counters list
#KT-8046 Fixed
2015-06-16 16:45:51 +02:00
dnpetrov
c369949d90 KT-6136 VerifyError on data class inheriting from trait
- coerce property values to proper data class component types
- add tests
 #KT-6136 Fixed
2015-06-16 09:58:03 +03:00
Zalim Bashorov
a906b0336f Add badges to ReadMe.md 2015-06-15 20:32:35 +03:00
Sergey Mashkov
4949624a2a Revert IDL2K Multiple constructors (via secondary constructors when needed) 2015-06-15 20:17:23 +03:00
Sergey Mashkov
6d9413f02e IDL2K Multiple constructors (via secondary constructors when needed) 2015-06-15 20:15:36 +03:00
Valentin Kipyatkov
7ee661d334 Minor 2015-06-15 18:32:45 +03:00
Valentin Kipyatkov
bf014fc1c5 KT-5419 J2K: convert string concatenation to string template + implemented corresponding inspection
#KT-5419 Fixed
2015-06-15 18:32:45 +03:00
Valentin Kipyatkov
ab97d76fed Minor code improvements in ConvertToStringTemplateIntention 2015-06-15 18:32:44 +03:00
Valentin Kipyatkov
c8f9b466b6 More correct comparison with CANT_INFER_FUNCTION_PARAM_TYPE 2015-06-15 18:32:44 +03:00
Valentin Kipyatkov
efdfa4b247 Minor changes after review 2015-06-15 18:27:25 +03:00
Valentin Kipyatkov
1dbd342938 Minor 2015-06-15 18:27:25 +03:00
Valentin Kipyatkov
95baf9b884 Minor 2015-06-15 18:27:25 +03:00
Valentin Kipyatkov
2248abd93a Inlined method 2015-06-15 18:27:24 +03:00
Valentin Kipyatkov
b20179af9f WritableScope: got rid of mutability of implicit receiver 2015-06-15 18:27:24 +03:00
Valentin Kipyatkov
32bfd53101 Renames 2015-06-15 18:27:24 +03:00
Valentin Kipyatkov
9139a8f060 WritableScope: removed addLabeledDeclarations 2015-06-15 18:27:24 +03:00
Valentin Kipyatkov
73a534963c Fixed detection of conflicts in local scope (but I'm not sure it's correct anyway) 2015-06-15 18:27:24 +03:00
Valentin Kipyatkov
45872b8126 Fix in change signature engine required after RESOLUTION_SCOPE became correct 2015-06-15 18:27:24 +03:00
Valentin Kipyatkov
89c2aca3a8 Memory optimization 2015-06-15 18:27:23 +03:00
Valentin Kipyatkov
b301b22f47 KT-4822 Wrong scope is used for local variable name completion
#KT-4822 Fixed
2015-06-15 18:27:23 +03:00
Valentin Kipyatkov
14ddc9d972 Memory optimization 2015-06-15 18:27:23 +03:00
Valentin Kipyatkov
f38267e21d One more simplification 2015-06-15 18:27:23 +03:00
Valentin Kipyatkov
99001f0fe2 More correct and simple 2015-06-15 18:27:23 +03:00
Valentin Kipyatkov
2ab86192c3 One more simplification 2015-06-15 18:27:23 +03:00
Valentin Kipyatkov
060aeb60e1 Minor optimization 2015-06-15 18:27:23 +03:00
Valentin Kipyatkov
db0f212b3e More code simplifications 2015-06-15 18:27:22 +03:00
Valentin Kipyatkov
472841de16 Inlined method 2015-06-15 18:27:22 +03:00
Valentin Kipyatkov
f88d603f5c Removed unused code in WritableScopeImpl 2015-06-15 18:27:22 +03:00
Valentin Kipyatkov
b3d74c380a Shadowed declarations filtering: more correct selection of imported declarations 2015-06-15 18:27:22 +03:00
Valentin Kipyatkov
985d69880f Better tests 2015-06-15 18:27:22 +03:00
Valentin Kipyatkov
7b553ef3a7 Shadowed globals filtered out too 2015-06-15 18:27:22 +03:00
Valentin Kipyatkov
abc9c1ab02 Non-imported extensions from different packages do not shadow each other 2015-06-15 18:27:22 +03:00
Valentin Kipyatkov
8d11ab9866 Non-imported extensions are excluded when shadowed by members or something 2015-06-15 18:27:21 +03:00
Valentin Kipyatkov
f089d1ef55 Code refactoring 2015-06-15 18:27:21 +03:00
Valentin Kipyatkov
3d0c3e225e Added test for second press completion for inaccessible 2015-06-15 18:27:21 +03:00
Valentin Kipyatkov
483da9607c KT-4893 Code completion should not show multiple functions with the same signature
#KT-4893 Fixed
2015-06-15 18:27:21 +03:00
Sergey Mashkov
4c0e7e32e7 KT-8080 RemoveExplicitTypeArgumentsIntention crashes with AssertionError 2015-06-15 17:38:24 +03:00
Valentin Kipyatkov
4deefce603 KT-7901 Auto import is not suggested
KT-7229 Completion for extension functions with complex capture

 #KT-7901 Fixed
 #KT-7229 Fixed
2015-06-15 17:10:05 +03:00
Michael Nedzelsky
0877c09b80 fix EA-69474 - IAE: KotlinAbiVersionIndex$INDEXER$.map 2015-06-15 16:20:29 +03:00
Alexander Udalov
3a6ba67602 Delete unused diagnostic about j.l.Class in annotations 2015-06-15 15:55:23 +03:00
Alexander Udalov
9637c049fe CLI: update KOTLIN_HOME lookup process in Bash script
The original code was taken from the 'scalac' script, where it has evolved
since and now is a lot easier to understand
2015-06-15 15:43:31 +03:00
Alexander Udalov
2f1316ec9c CLI: don't pass -D and -J options to Kotlin
Kotlin compiler's CLI argument parser currently fails on these options, so
there was no convenient way to use them
2015-06-15 15:42:43 +03:00
Alexander Udalov
cdd53de9a7 CLI: get rid of duplication in JVM/JS scripts 2015-06-15 15:42:42 +03:00
Alexander Udalov
5ec4576844 CLI: add color to compiler output via jansi
Disabled on Windows temporarily, because for some reason colors there work only
in REPL
2015-06-15 15:42:42 +03:00
Alexander Udalov
00566bcfb0 Move MessageRenderer to module 'cli'
It will use jline soon, which is not available in 'cli-common'
2015-06-15 15:42:42 +03:00
Alexander Udalov
54dfd626ab CLI: improve diagnostic message format
- render the whole line where the error/warning points to, if any, and another
  line with '^', like other compilers do
- lowercase diagnostic severity
- decapitalize the message if it doesn't start with a proper name
2015-06-15 15:42:41 +03:00
Alexander Udalov
46515afb22 CLI: don't render non-positive line and column in error messages 2015-06-15 15:42:41 +03:00
Alexander Udalov
6083a18ce1 Convert CompilerMessageLocation to Kotlin 2015-06-15 15:42:40 +03:00
Alexander Udalov
bca5eb083e Don't report warnings when there are errors
All sane compilers do this
2015-06-15 15:42:40 +03:00
Alexander Udalov
4cfbf5886b Get rid of unneeded MessageCollector implementations 2015-06-15 15:42:40 +03:00
Mikhail Glukhikh
e623aadf00 Exception fix: more accurate parsing of class base type #EA-65509 Fixed 2015-06-15 14:43:37 +03:00
Mikhail Glukhikh
d77c6eb30e Exception fix: diagnose an error for a generic type which is a subtype of itself, a set of tests #EA-64453 Fixed 2015-06-15 14:43:24 +03:00
Mikhail Glukhikh
46d5290f70 Exception fix (equal returns true for the same types) #EA-65206 Fixed 2015-06-15 14:43:17 +03:00
Denis Zharkov
bb49bfcea9 Colors & Fonts page: Get rid of obsolete syntax and add labels' highlighting
#KT-8059 Fixed
2015-06-15 14:07:42 +03:00
Pavel V. Talanov
846c0e2522 AnalyzerFacade: compute module dependencies lazily 2015-06-13 20:36:50 +03:00
Pavel V. Talanov
705f35450f Refactor setting dependencies for ModuleDescriptors 2015-06-13 20:36:47 +03:00
Pavel V. Talanov
1d696c2e54 Do not force evaluation of parent package in ResolveSession#createPackage 2015-06-13 20:36:44 +03:00
Pavel V. Talanov
b3b7da22d4 Module(Production/Test)SourceInfo#dependencies() is cached 2015-06-13 20:36:43 +03:00
Denis Zharkov
e3c3af6aab Change MISSING_CONSTRUCTOR_KEYWORD severity to error
And adjust testData
2015-06-12 11:23:13 +03:00
Denis Zharkov
eb7114bd53 Add 'constructor' keyword in whole project where needed 2015-06-12 09:55:15 +03:00
Denis Zharkov
414d6b92f6 Adjust testData: don't use java.lang.Class in annotations 2015-06-12 09:55:13 +03:00
Denis Zharkov
da254ab1a0 Drop support of java.lang.Class as annotation parameter
Also drop some related diagnostics and testData
2015-06-12 09:55:12 +03:00
Denis Zharkov
d71fe0d11a Drop JavaClassValue and it's usages
Also drop related testData
2015-06-12 09:55:10 +03:00
Denis Zharkov
980499e331 Drop javaClass in annotations related things from inspections/quickfixes 2015-06-12 09:55:09 +03:00
Denis Zharkov
9245cfaa7f Load Class-object from java annotated entity as KClass 2015-06-12 09:55:08 +03:00
Denis Zharkov
2e284718ce Revert "Create additional constructor for java annotation with Class-parameter"
This reverts commit 8f0e290dec.
2015-06-12 09:55:06 +03:00
Denis Zharkov
9080b57635 Revert "Load annotation parameter's type for ctr as contravariant"
This reverts commit 294eb1dceb.
2015-06-12 09:55:03 +03:00
Denis Zharkov
2df6fcb785 Drop some tests using java.lang.Class in annotation
We are going to drop such cases anyway, but they're annoying when reverting commits
2015-06-12 09:55:02 +03:00
Denis Zharkov
9d87638a11 Clarify grammar rules for annotations 2015-06-12 09:55:01 +03:00
Denis Zharkov
cf4b1ab7cd Drop obsolete annotations syntax 2015-06-12 09:55:00 +03:00
Denis Zharkov
26864a4407 Get rid of annotation syntax deprecation related things 2015-06-12 09:23:32 +03:00
Denis Zharkov
200dee2761 Replace deprecated annotations in whole project 2015-06-12 09:23:32 +03:00
Denis Zharkov
c9f79c2d05 Adjust testData: get rid of obsolete annotations 2015-06-12 09:23:31 +03:00
Denis Zharkov
053dcf3abf Effectively turn off completion tests with file keyword
Completion does not work with new syntax: see KT-8036
2015-06-12 09:23:31 +03:00
Denis Zharkov
cdba1c2dbe Parsing: allow accessors with '@' annotation on the same line 2015-06-12 09:23:31 +03:00
Michael Nedzelsky
ed262a2a2a fix KT-8032 Mixed platform library in JVM module causes JS warning about unsupported format
#KT-8032 Fixed
2015-06-12 02:09:53 +03:00
Valentin Kipyatkov
366a2be8a7 KT-7989 ReplaceWith replacement adds redundant type arguments for platform types
Highlighting of redundant type arguments made more strict about platform types

 #KT-7989 Fixed
2015-06-11 23:30:22 +03:00
Valentin Kipyatkov
2203fb3231 Renamed intention class 2015-06-11 23:30:22 +03:00
Michael Nedzelsky
744e760444 tests for KT-7618 Compiling Maven project targeting JS fails when no source file present 2015-06-11 22:21:25 +03:00
Michael Nedzelsky
dd60c7b79f K2JSCompiler: use INTERNAL_ERROR only for internal problems 2015-06-11 22:21:23 +03:00
Michael Nedzelsky
57356e29b8 kotlinc-js, kotlinc-jvm: report error on empty sources 2015-06-11 22:21:20 +03:00
Michael Nedzelsky
3ac1bdcdc8 kotlin-maven-plugin, ant:withKotlin: skip compilation for empty sources
#KT-7618 Fixed
2015-06-11 22:21:16 +03:00
Evgeny Gerashchenko
0ddfedba49 Allowed accessing private members from same package, but different package fragment instance. 2015-06-11 18:58:32 +03:00
Evgeny Gerashchenko
4461687ae3 Incremented cache format version: package part hashes changed. 2015-06-11 16:48:27 +03:00
Evgeny Gerashchenko
e6bb501c1a Enabled rebuilding when enabling/disabling incremental compilation in IDEA. 2015-06-11 16:48:27 +03:00
Yan Zhulanow
08fa9b639e Gradle: update annotation syntax 2015-06-11 15:19:51 +03:00
Yan Zhulanow
e3c6f32b50 Gradle: Subplugin loading process is unrelated to kapt 2015-06-11 15:19:51 +03:00
Yan Zhulanow
853cfdb70b kapt: Move class generation methods to core plugin 2015-06-11 15:19:50 +03:00
Yan Zhulanow
3cfdf21aa4 kapt: Create kotlinAfterJava task after project evaluation 2015-06-11 14:53:50 +03:00
Yan Zhulanow
7561b43336 kapt: Warn on using android-apt with kapt 2015-06-11 14:53:50 +03:00
Yan Zhulanow
39d7674886 kapt: Fix compatibility with android-apt 2015-06-11 14:53:49 +03:00
Yan Zhulanow
b9bfc659d5 Gradle: Remove logger argument in SubpluginEnvironment 2015-06-11 14:53:48 +03:00
Yan Zhulanow
c2073cb575 kapt: Add logging information 2015-06-11 14:53:48 +03:00
Yan Zhulanow
6ed5bbc2f8 kapt: Initial .class stub support in Gradle 2015-06-11 14:53:47 +03:00
Yan Zhulanow
78af866f5a kapt: Do not fail if annotations.txt file does not exist 2015-06-11 14:53:46 +03:00
Yan Zhulanow
a900a424d0 Gradle: Do not inline getOrNull() 2015-06-11 14:53:45 +03:00
Yan Zhulanow
f1b6bd5914 kapt: Stop compiler gracefully 2015-06-11 14:53:45 +03:00
Yan Zhulanow
fbb8d28120 kapt: Light class stub producer in compiler 2015-06-11 14:53:37 +03:00
Yan Zhulanow
571c9073fa Add AnalyzeCompletedHandlerExtension 2015-06-11 14:50:32 +03:00
Alexey Sedunov
e1e1dd9413 Diagnostics: Fix range of DECLARATION_SIGNATURE diagnostics reported on secondary constructors 2015-06-11 13:53:00 +03:00
Alexey Sedunov
95438c7b5d Light Classes: Fix ClassCastException for KotlinNoOriginLightField 2015-06-11 13:52:59 +03:00
Alexey Sedunov
bbc644f4c8 Refactoring: Unify getClassOrObject() and getContainingClassOrObject() functions in constructor PSI 2015-06-11 13:52:58 +03:00
Alexey Sedunov
1ab90c7814 J2K: Convert constructor PSI classes to Kotlin 2015-06-11 13:52:57 +03:00
Alexey Sedunov
7ed02dcd58 J2K: Rename constructor PSI classes to *.kt 2015-06-11 13:52:56 +03:00
Alexey Sedunov
bfabb40955 Find Usages: Skip KotlinNoOriginLightMethod to avoid NPE (to be be fixed later) 2015-06-11 13:52:55 +03:00
Alexey Sedunov
2a73247566 Find Usages: Rename test class and move test data 2015-06-11 13:52:54 +03:00
Alexey Sedunov
81440815e1 Light Classes: Retain original declarations for nested decompiled classes 2015-06-11 13:52:53 +03:00
Alexey Sedunov
ca8e2d4956 Navigation: Implement proper getOriginalElement() for Kotlin declarations.
Run find usages tests with library for both original and navigation elements. Drop duplicating tests. Simplify test class.
TODO: Some usages are not found yet since light methods built from library files do not retain original declarations
2015-06-11 13:52:52 +03:00
Alexey Sedunov
ba0000dde1 Navigation: Fix navigation to library sources for Kotlin constructors 2015-06-11 13:52:50 +03:00
Alexey Sedunov
e2d758463f Find Usages: Support primary constructors
#KT-7881 Fixed
2015-06-11 13:52:49 +03:00
Alexey Sedunov
1ea2c24562 Light Classes: Primary constructor fixes 2015-06-11 13:52:48 +03:00
Alexey Sedunov
608ce59f15 Resolution: Resolve primary constructor references to primary constructor
itself if it's explicitly present in PSI
2015-06-11 13:52:47 +03:00
Alexey Sedunov
b049455aa4 Presentation: Support constructors in JetFunctionPresenter 2015-06-11 13:52:46 +03:00
Alexey Sedunov
034af9e7f2 PSI: Extract JetConstructor class 2015-06-11 13:52:45 +03:00
Alexey Sedunov
64ae0c0036 Find Usages: Add file grouping to test data 2015-06-11 13:52:43 +03:00
Natalia Ukhorskaya
d4bf5faeec Fix validation of field breakpoints for package classes with several files 2015-06-11 12:15:09 +03:00
Natalia Ukhorskaya
da263ce090 Show all kotlin properties in 'Add field watchpoint' dialog 2015-06-11 12:15:07 +03:00
Natalia Ukhorskaya
cc5045a333 Fix warnings 2015-06-11 12:15:05 +03:00
Natalia Ukhorskaya
e99bd89139 Copy AddFieldBreakpointDialog from IDEA 2015-06-11 12:15:01 +03:00
Natalia Ukhorskaya
19fe6c58fa FieldWatchpoints: reload breakpoint type if property changed 2015-06-11 12:14:59 +03:00
Natalia Ukhorskaya
0a1bfcec04 Remove delegate to JavaFiledBreakpoint 2015-06-11 12:14:57 +03:00
Natalia Ukhorskaya
b1f9341ab4 Rewrite filters panel 2015-06-11 12:14:55 +03:00
Natalia Ukhorskaya
14f90f15e5 Field WatchPoints: add ability to stop at initializer 2015-06-11 12:14:53 +03:00
Natalia Ukhorskaya
d7375e0dc4 Create custom panel for field watchpoints 2015-06-11 12:10:19 +03:00
Natalia Ukhorskaya
d198a9fa7f Minor: move class to separate file 2015-06-11 12:10:19 +03:00
Natalia Ukhorskaya
9f041b9555 Field watchpoints: render message in status bar properly 2015-06-11 12:10:18 +03:00
Natalia Ukhorskaya
32d0057a7f Support filed breakpoints on properties without backing fields 2015-06-11 12:10:17 +03:00
Natalia Ukhorskaya
1c135e7ac7 Minor: rename test 2015-06-11 12:10:16 +03:00
Natalia Ukhorskaya
1ed9ea44a9 Line numbers for traits 2015-06-11 12:10:16 +03:00
Natalia Ukhorskaya
04db433ab5 Minor: Evaluate expression tests, support resume instruction 2015-06-11 12:10:15 +03:00
Zalim Bashorov
07bb0ce481 Minor: remove files temporary copied from IDEA 2015-06-10 21:39:21 +03:00
Mikhail Glukhikh
f03a35d7ce Resolve refactoring: resolvePropertyDeclarationBodies 2015-06-10 18:38:32 +03:00
Mikhail Glukhikh
40513bda56 Annotation resolve refactoring: AnnotationResolver.resolveAnnotationArguments --> ForceResolveUtil.forceResolveAllContents 2015-06-10 18:38:30 +03:00
Mikhail Glukhikh
f9fe8cd341 Fixed annotation resolve for loop parameter or catched exceptions type 2015-06-10 18:38:27 +03:00
Mikhail Glukhikh
731e5d85a4 Annotation arguments resolve refactoring via ForceResolveUtil. Deptecated...Intention fixed accordingly 2015-06-10 18:38:25 +03:00
Alexander Udalov
64b60718e3 Finish off old deprecated function/extension function classes
This reverts commit d14e5b8a72.
2015-06-10 14:41:57 +03:00
Alexander Udalov
5394abc83e Don't use reflection in JetType.getCapability 2015-06-10 14:41:56 +03:00
Alexander Udalov
d4c18b3d55 Drop PsiBasedMethodSignatureChecker 2015-06-10 14:41:56 +03:00
Michael Nedzelsky
12d7187394 Minor: extract common logic from KotlinClassFileIndex, KotlinJavaScriptMetaFileIndex 2015-06-10 12:48:11 +03:00
Valentin Kipyatkov
76e501c7ea Experimental framework for inline constants 2015-06-10 11:35:00 +03:00
Valentin Kipyatkov
657abffea2 Minor code improvement 2015-06-10 11:34:59 +03:00
Valentin Kipyatkov
ef550e1f21 Reduced number of constant renderers in DescriptorRenderer 2015-06-10 11:34:59 +03:00
Valentin Kipyatkov
4263c47f4d DescriptorRenderer: moved enums out 2015-06-10 11:34:59 +03:00
Valentin Kipyatkov
fcf613cf03 Replacing usages of DescriptorRenderer.renderName/renderFqName 2015-06-10 11:34:59 +03:00
Valentin Kipyatkov
acdf6b2821 Minor 2015-06-10 11:34:59 +03:00
Valentin Kipyatkov
c661e2fbe2 DescriptorRenderer uses FqName.render(), not the opposite 2015-06-10 11:34:59 +03:00
Valentin Kipyatkov
2d5611d916 DescriptorRenderer uses Name.render(), not the opposite 2015-06-10 11:34:58 +03:00
Valentin Kipyatkov
0766e685b1 Minor code improvements 2015-06-10 11:34:58 +03:00
Valentin Kipyatkov
55b898167b DescriptorRendererImpl made internal + minor improvements 2015-06-10 11:34:58 +03:00
Valentin Kipyatkov
2601e0ccd4 Fixed non-equivalent conversion from Java 2015-06-10 11:34:58 +03:00
Valentin Kipyatkov
a1ff2f20ed Got rid of DescriptorRendererBuilder providing new scheme for creating DescriptorRenderer's 2015-06-10 11:34:58 +03:00
Valentin Kipyatkov
ce2ce44d7b Converted DescriptorRenderer, DescriptorRendererImpl and DescriptorRedererBuilder to Kotlin 2015-06-10 11:34:58 +03:00
Michael Nedzelsky
855715cc5c extract common logic to KotlinAbiVersionIndexBase 2015-06-10 05:38:18 +03:00
Michael Nedzelsky
dac10944e0 JS: add notification for incompatible abi version for Kotlin/JavaScript libraries 2015-06-10 05:38:15 +03:00
Michael Nedzelsky
1dd101f362 add KotlinJavaScriptAbiVersionIndex 2015-06-10 05:38:12 +03:00
Michael Nedzelsky
2e8c9fe362 KotlinAbiVersionIndex: refactoring after converting 2015-06-10 05:38:08 +03:00
Michael Nedzelsky
a396222652 convert to kotlin: KotlinAbiVersionIndex.kt 2015-06-10 05:38:05 +03:00
Michael Nedzelsky
cec792c3d3 rename KotlinAbiVersionIndex.java -> KotlinAbiVersionIndex.kt 2015-06-10 05:38:02 +03:00
Michael Nedzelsky
999c83240c JS: error message (not exception) for incompatible abi version during compilation 2015-06-10 05:37:57 +03:00
Dmitry Jemerov
34577a7e12 add test for ReferencesSearch; use standard isReferenceTo() API (which is the same thing for Kotlin but more efficient for non-Kotlin references) 2015-06-09 20:45:11 +02:00
Dmitry Jemerov
7d02b522db KotlinReferencesSearcher: remove enclosing read action, use queryParameters.getOptimizer().searchWord
#KT-7917 Fixed
2015-06-09 20:45:10 +02:00
Dmitry Jemerov
527751e967 KotlinReferencesSearcher: cleanup after J2K 2015-06-09 20:45:10 +02:00
Dmitry Jemerov
b2a6531255 KotlinReferencesSearcher: J2K 2015-06-09 20:45:09 +02:00
Dmitry Jemerov
7ba13e5425 KotlinReferencesSearcher: rename to .kt 2015-06-09 20:45:09 +02:00
Evgeny Gerashchenko
4c6fcef221 Disable access to incremental caches when incremental compilation mode is disabled. 2015-06-09 20:03:21 +03:00
Evgeny Gerashchenko
c48378260e Path hash code is case-agnostic. This is to avoid changing it if e.g. path to project is reconfigured from C:\Work to c:\work 2015-06-09 20:03:21 +03:00
Evgeny Gerashchenko
959364aa77 Fixed sticking of incremental cache data when case of file path is changed. 2015-06-09 20:03:20 +03:00
Alexander Udalov
4815a9e5a8 Fix kotlin-reflect Maven artifact, attach sources jar 2015-06-09 15:39:04 +03:00
Alexander Udalov
4c7bcc8e1a Minor, specify version for maven-jar-plugin 2015-06-09 15:01:18 +03:00
Mikhail Glukhikh
a792b29a78 Exception fix: more accurate type annotation parsing #EA-69124 Fixed 2015-06-09 14:36:12 +03:00
Mikhail Glukhikh
804bf3ad22 Refactoring of AnnotationResolver.resolveAnnotation(s)Arguments 2015-06-09 14:36:08 +03:00
Pavel V. Talanov
a525c2f654 Fix folding after changes to parser 2015-06-08 20:51:10 +03:00
Pavel V. Talanov
07d35d305e Create import list psi element even if no directives are present
Fix a problem where deleting last import directive via "optimize imports" could lead to incorrect psi structure resulting in CCE, see EA-64291
New imports are inserted at the head (after package directive if present) of the file (before any comments) if no imports were present
Add test for inserting import to file where a first statement is a comment
Drop code dealing with non-existing import list in ImportInsertHelperImpl
AbstractQuickFixTest: check for unexpected actions before changes to the file are made as it relies on the first line having specific format
2015-06-08 20:51:04 +03:00
Pavel V. Talanov
4c4f730c53 Minor: Remove dead code in ScopeProvider 2015-06-08 20:25:55 +03:00
Pavel V. Talanov
d3315f5ebb Refactor: Do not pass rootScope to QualifiedExpressionResolver#processImportReference 2015-06-08 20:25:54 +03:00
Pavel V. Talanov
39e78cad2a Always pass moduleDescriptor to QualifiedExpressionResolver#processImportReference
Passing package view descriptor has the same effect
2015-06-08 20:25:54 +03:00
Pavel V. Talanov
7585cbfe22 Remove check in visibilities that allowed access to privates of outer packages
It doesn't work for a while now in imports and is planned to be dropped with upcoming changes to private
2015-06-08 20:25:52 +03:00
Pavel V. Talanov
be66ee7015 Refactor QualifiedExpressionResolver: pass descriptor to check for visibility instead of scope 2015-06-08 20:25:51 +03:00
Pavel V. Talanov
5e0cc18be2 Minor: prettify code in ImportDirectiveProcessor 2015-06-08 20:25:50 +03:00
Pavel V. Talanov
806098f8a0 Refactor: Extract ImportDirectiveProcessor from QualifiedExpressionResolver
J2K code
2015-06-08 20:25:50 +03:00
Alexey Sedunov
8b9ddea729 Introducer Parameter: Fix PsiInvalidElementAccessException 2015-06-08 20:18:16 +03:00
Alexey Sedunov
1d59c7e0e4 Change Signature: Substitute new function name into generated this-expressions
#KT-7920 Fixed
2015-06-08 20:18:15 +03:00
Dmitry Jemerov
aa8adbeddc remove unnecessary call to super.get() in CliBindingTrace 2015-06-08 18:57:36 +02:00
Pavel V. Talanov
54b1859aa7 KotlinQuickDocumentationProvider: fix quick doc for elements from type hierarchy
Fix quick doc for light classes

 #KT-7964 Fixed
2015-06-08 18:46:44 +03:00
Dmitry Jemerov
220403b6f6 avoid unnecessary creation of empty containers 2015-06-08 15:10:40 +02:00
Dmitry Jemerov
109c09cf7c get rid of WritableScopeWithImports 2015-06-08 15:10:39 +02:00
Michael Bogdanov
baa44e3d01 Fix default parameter remapping on inlining: support store instruction
#KT-7963 Fixed
2015-06-08 16:07:39 +03:00
Michael Bogdanov
7a1625fc9e Support extension lambda inlining
#KT-7962 Fixed
2015-06-08 16:07:38 +03:00
Dmitry Jemerov
18753a16d7 a bunch of fixes to the grammar 2015-06-08 14:46:28 +02:00
Valentin Kipyatkov
5f0171aa04 Added two more inspections based on existing intentions 2015-06-08 15:37:59 +03:00
Valentin Kipyatkov
5b9680fe11 Made all inspections making code more verbose low priority 2015-06-08 15:37:59 +03:00
Valentin Kipyatkov
63b30cf7f6 KT-7955 "Add replaceWith to specify replacement pattern" intention/inpesction has too large a range
#KT-7955 Fixed
2015-06-08 15:37:58 +03:00
Valentin Kipyatkov
e1efb95259 Added test 2015-06-08 15:37:40 +03:00
Valentin Kipyatkov
7dddd6c718 Code simplification 2015-06-08 15:33:58 +03:00
Valentin Kipyatkov
8243d27fb2 Smart completion: argument with "*" is not necessary the only one for vararg parameter 2015-06-08 15:33:58 +03:00
Valentin Kipyatkov
0d992ee38f Moved tests 2015-06-08 15:33:58 +03:00
Valentin Kipyatkov
54e9a46f12 Smart completion: fixed in argument with "*" 2015-06-08 15:33:58 +03:00
Valentin Kipyatkov
2197d554ca Smart completion: a bit more correct logic for last vararg parameter 2015-06-08 15:33:58 +03:00
Valentin Kipyatkov
ee15eae6b3 Smart completion: function literal argument can correspond only to the last parameter! 2015-06-08 15:33:57 +03:00
Valentin Kipyatkov
6284f557e6 Smart completion: sometimes we can insert comma after vararg argument too 2015-06-08 15:33:57 +03:00
Valentin Kipyatkov
02e876679c Completion: more correct code for lambda template insertion 2015-06-08 15:33:57 +03:00
Valentin Kipyatkov
64e9ecc7b4 Moved test data 2015-06-08 15:33:57 +03:00
Valentin Kipyatkov
7eec200887 Moved tests from deprecated to generated test fixture 2015-06-08 15:33:57 +03:00
Valentin Kipyatkov
560b7dae75 Minor correction 2015-06-08 15:33:56 +03:00
Nikolay Krasko
e4c7f9bc22 Keep NullableNotNullManager methods for J2K converter 2015-06-08 15:21:03 +03:00
Valentin Kipyatkov
0cb2348b2f KT-6807 J2K: Convert "==" to "===" if class has equals() method
#KT-6807 Fixed
2015-06-06 11:00:55 +03:00
Alexey Sedunov
dae7717a69 Introduce Variable: Reimplement in-place refactoring using AbstractInplaceIntroducer. Extract common superclass AbstractKotlinInplaceIntroducer 2015-06-05 21:10:36 +03:00
Alexey Sedunov
4a56b99cff Introduce Parameter: Reimplement in-place refactoring using AbstractInplaceIntroducer
This simplifies implementation and fixes bug with unnecessarily detailed command history available through undo/redo
2015-06-05 21:10:35 +03:00
Alexander Udalov
d475401108 Ant task: don't pass kotlin-runtime.jar to javac on "-no-stdlib" 2015-06-05 16:19:55 +03:00
Alexander Udalov
f5ec8d6850 Minor, delete useless test
'withKotlinNoJavaSources' tests exactly the same
2015-06-05 16:19:42 +03:00
Alexander Udalov
e224337ff3 Ant task: support "compilerarg" element in withKotlin as in kotlinc 2015-06-05 16:19:19 +03:00
Alexander Udalov
dda44a61a1 Rewrite integration tests to JUnit3, make Ant JVM task tests generated 2015-06-05 16:19:17 +03:00
Alexander Udalov
0f6c23e1c4 Don't always run code in Ant task tests
But when running code, do it via <java> task, not via custom testing code. Most
of the time the compiled code need not be runned, because it's irrelevant to
the Ant task itself
2015-06-05 15:55:59 +03:00
Alexander Udalov
968d362b77 Don't check exit code in Ant tests
It's already checked in the build log in each test
2015-06-05 15:55:58 +03:00
Alexander Udalov
89408f45bb Ant task: pass kotlin-runtime to javac's classpath; simplify tests
'kotlinCompiler' test is deleted because it's a very roundabout way to compile
Kotlin and Java sources, and there's no point in testing it.

'javacCompiler' test is deleted for similar reasons: using javac's "compiler"
option is not an advertised way to use Kotlin Ant task, and anyway it will work
with any CompilerAdapter instance, so it's hard to break it (apart from
deleting "withKotlin" adapter).

There are tests which check compilation/running of the same code but with the
recommended method. The pretext for deletion of these tests is to make Ant
tests generated, and that would be easier if they wouldn't depend on any outer
variables
2015-06-05 15:55:58 +03:00
Alexander Udalov
49c78602af Minor, move and rename CompilerClassLoaderHolder -> KotlinAntTaskUtil 2015-06-05 15:55:56 +03:00
Alexander Udalov
8f5826793d Ant task: warn when Ant version < 1.8.2 2015-06-05 15:55:56 +03:00
Alexander Udalov
0ad6dce7ce Ant task: support 'failOnError' attribute in kotlinc and withKotlin 2015-06-05 15:55:54 +03:00
Alexander Udalov
6d00c265e2 Always run kotlinc in <withKotlin/> Ant task
This change requires withKotlin to be run with Ant of version at least 1.8.2.

Some test data changed because now compileList contains both Java and Kotlin
sources

 #KT-7870 Fixed
2015-06-05 15:55:53 +03:00
Alexander Udalov
cbbf8dec7e Drop ant-1.7 from project, advance Ant to 1.8.2
Ant 1.8.2 has the API (namely,
CompilerAdapterExtension#getSupportedFileExtensions) which will allow to fix a
critical bug in <withKotlin/> task (see KT-7870)
2015-06-05 15:55:52 +03:00
Alexander Udalov
9008a8b161 Fix withKotlin Ant task when no classpath is given
#KT-6492 Fixed
2015-06-05 15:55:51 +03:00
Nikolay Krasko
cf62e0b999 Remove internal artifacts for rr/* branches 2015-06-05 14:29:54 +03:00
Nikolay Krasko
95e4766b3e Minor: reformat 2015-06-05 14:29:49 +03:00
Nikolay Krasko
9cfbf27602 Use same classloader for loading JS and JVM compilers 2015-06-05 14:29:47 +03:00
Denis Zharkov
9ec235c011 Introduce KotlinNamesValidator
It's needed to prohibit invalid kotlin identifiers in refactorings

 #EA-69048 Fixed
 #EA-69063 Fixed
2015-06-05 11:58:16 +03:00
Alexander Udalov
6e97f85863 Fix type argument substitution bug in KFunction construction
For example,

KMemberFunction2<T, P1, P2, R> : KMemberFunction<T, R>

So for this inheritance the heuristic that was present ("take the last K type
parameters of the subclass, and substitute for K parameters of the superclass")
was wrong. The new heuristic for this case is: take type parameters with the
same names.

Also don't store "parameters" in a lazy value, since it's easy to compute and
it's computed practically every time anyway
2015-06-04 23:08:21 +03:00
Alexander Udalov
b474fa9278 Refactor fictitious function class kinds, reuse in J<->K map 2015-06-04 23:08:21 +03:00
Alexander Udalov
9e8c51f7d3 Minor, delete pointless field annotations 2015-06-04 23:08:20 +03:00
Ilya Gorbunov
1036448fcd Improve the documentation of MatchGroupCollection.
#KT-7938 Fixed
2015-06-04 20:51:08 +03:00
Mikhail Glukhikh
98407a7c4b Recursive annotations are now possible for properties / functions / classes / primary constructors #EA-66984 Fixed #EA-63992 Fixed #EA-64272 Fixed
A set of tests provided.
2015-06-04 20:09:36 +03:00
Ilya Gorbunov
0c1a8ab8ff Change KotlinCleanupInspection display name and description to mention deprecated symbols 2015-06-04 20:00:55 +03:00
Evgeny Gerashchenko
c194ced87e Performance report is emitted only when corresponding command-line argument is provided. 2015-06-04 19:45:01 +03:00
Natalia Ukhorskaya
b4190fb1fe Rewrite KotlinOutputParser for Android plugin to make it works with Android Studio 1.3
#KT-7862 Fixed
2015-06-04 19:17:46 +03:00
Pavel V. Talanov
812273cb2b Fix a problem when invoking completion outside of source roots could lead to declarations from index being analyzed in a wrong resolution facade 2015-06-04 18:36:05 +03:00
dnpetrov
50ea67ba13 KT-5524 Support [platformName] annotation for class members
@platformName is now supported for final non-overriding class member functions
(including property accessors).
Front-end provides diagnostics for inapplicable annotation cases.
Code generation updated:
- ignore kotlin.platform.platformName annotation for Java class methods;
- bridges generation generates proper JVM declarations in case of methods renamed with @platformName.
@platformName-related tests added.

#KT-5524 Fixed
2015-06-04 17:54:08 +03:00
Evgeny Gerashchenko
0bf249d6ae Do not recompile module when anonymous object or local class is changed. 2015-06-04 17:50:14 +03:00
Evgeny Gerashchenko
6403ef39eb KT-7521 Compilation problem of dependent modules with different jdks
#KT-7521 fixed
2015-06-04 17:50:13 +03:00
Valentin Kipyatkov
200c6446be Probably fixed EA-69004 2015-06-04 17:23:20 +03:00
Valentin Kipyatkov
f05789e224 Fixed EA-69042 2015-06-04 17:21:28 +03:00
Valentin Kipyatkov
e597532c7a KT-7815 Smart completion after "as" inserts fq-name for type parameter
#KT-7815 Fixed
2015-06-04 17:21:28 +03:00
Valentin Kipyatkov
d3e4b346ce Deprecated symbols made less priority than named parameters 2015-06-04 17:21:28 +03:00
Valentin Kipyatkov
54836113a7 Better test data format 2015-06-04 17:21:28 +03:00
Valentin Kipyatkov
603f7ef3c1 KT-7756 Completion of "return null", "return true" and "return false"
#KT-7756 Fixed
2015-06-04 17:21:27 +03:00
Ilya Gorbunov
009baa11fc Specific wording in exception message for String methods. 2015-06-04 16:45:55 +03:00
Ilya Gorbunov
a1d8e9d633 Provide dropLast and takeLastWhile methods. Optimize special cases of drop/take/dropLast/takeLast (when n is equal to zero or size of collection). 2015-06-04 16:32:25 +03:00
Ilya Gorbunov
9f85fa9720 Make proposed split replacement equivalent in behavior with additional dropLastWhile call.
#KT-7887
2015-06-04 16:32:23 +03:00
Ilya Gorbunov
9b17220baa Provide dropLastWhile for Arrays, Lists and Strings. 2015-06-04 16:32:21 +03:00
Ilya Gorbunov
705c9089f0 Provide replacement for methods deprecated in favor of SAM-constructors.
Provide replacement for isNotEmpty on nullable receiver.
JS: Provide SAM-like constructor for Runnable.
2015-06-04 16:32:19 +03:00
Ilya Gorbunov
13c89b7ae9 Provide lineSequence() extension method instead of BufferedReader.lines() in order not to conflict with JDK8 instance method with the same name. 2015-06-04 16:32:17 +03:00
Michael Bogdanov
dee26957d1 Tests for obsolete KT-4798, KT-7288, KT-7046
#KT-4798 Obsolete
 #KT-7288 Obsolete
 #KT-7046 Obsolete
2015-06-04 16:28:08 +03:00
Valentin Kipyatkov
9e27e208ef Made test data correct 2015-06-04 16:20:30 +03:00
Valentin Kipyatkov
6751a1d440 DeprecatedSymbolUsageFix: keeping explicit type arguments in original form 2015-06-04 16:20:30 +03:00
Valentin Kipyatkov
9f1fbe20dc Extracted methods 2015-06-04 16:20:30 +03:00
Valentin Kipyatkov
a26c62ab0f KT-7895 Auto replace for deprecated (ReplaceWith) loses generic type
#KT-7895 Fixed
2015-06-04 16:20:29 +03:00
Valentin Kipyatkov
f14615315d KT-5482 Redundant type arguments are not detected in some cases
#KT-5482 Fixed
2015-06-04 16:20:29 +03:00
Denis Zharkov
9802931a90 Remove variables with empty ranges from local vars table
As their ranges may intersect after dead code elimination that leads to VerifyError
2015-06-04 16:11:02 +03:00
Denis Zharkov
310babefdf Minor, Rename InsnStream -> InsnSequence 2015-06-04 16:11:02 +03:00
Denis Zharkov
8da3f53404 EA-53937: Drop failing assertion about no-name val in annotation 2015-06-04 16:11:02 +03:00
Denis Zharkov
0e718fbaab Introduce UNKNOWN visibility as default in FunctionDescriptor
It's needed to prevent NPE when requesting non-nullable visibility of descriptor
before `initialize` has been called.
Currently it happens because of indirect calls of `DescriptorUtils.isLocal`
between descriptor creation and it's initialization.
2015-06-04 16:11:02 +03:00
Denis Zharkov
4f85afb3f0 Fix DescriptorUtils.isLocal semantics
Non-member descriptors, e.g. type parameters, value parameters that defined in local function should be local too
Otherwise a lot of exceptions happens when resolving references within anonymous objects
2015-06-04 16:11:02 +03:00
Nikolay Krasko
e874ad9cbb Remove getting stacktrace in internal mode 2015-06-04 15:33:16 +03:00
Nikolay Krasko
46ddb1958f Update IDEA to 141.1383.1 2015-06-04 15:33:14 +03:00
Valentin Kipyatkov
6e7fd19d8e KT-7695 Java to Kotlin converter incorrectly generates a cast to non-nullable type
#KT-7695 Fixed
2015-06-04 15:11:48 +03:00
Valentin Kipyatkov
1fa777f3c3 Fixed EA-60042 2015-06-04 15:11:48 +03:00
Valentin Kipyatkov
142ee0ce70 Fixed EA-65709 2015-06-04 15:11:47 +03:00
Michael Bogdanov
83f04501be Remove error diagnostic from return in multideclaration
#KT-5100 Fixed
2015-06-04 12:01:59 +03:00
Dmitry Jemerov
a321e8eef5 performance counters infrastructure 2015-06-04 10:20:19 +02:00
Valentin Kipyatkov
a3a33ce089 Minor code improvements + more correct code 2015-06-04 01:05:50 +03:00
Valentin Kipyatkov
9c0d607894 Replace "||" with "&&" (and the opposite) made more clever about negating expressions 2015-06-04 01:05:50 +03:00
Valentin Kipyatkov
ac6ef6b544 KT-7454 Replace "||" with "&&" adds unnecessary parethesis
#KT-7454 Fixed
2015-06-04 01:05:50 +03:00
Valentin Kipyatkov
1a0f8a5070 Maybe it will fix EA-67317 2015-06-04 01:05:50 +03:00
Valentin Kipyatkov
b73ebad167 Fixed EA-66035 2015-06-04 01:05:50 +03:00
Valentin Kipyatkov
4957495cf3 Migrated to use of modern API 2015-06-04 01:05:50 +03:00
Valentin Kipyatkov
fd4a634001 Fixed EA-66835 2015-06-04 01:05:50 +03:00
Valentin Kipyatkov
6d2d054b3b Refactored ShowExpressionTypeAction to work for variable type 2015-06-04 01:05:49 +03:00
Valentin Kipyatkov
5d9259e9a4 Refactored ShowExpressionTypeAction 2015-06-04 01:05:49 +03:00
Valentin Kipyatkov
5a50423ae5 Converted to Kotlin 2015-06-04 01:05:49 +03:00
Valentin Kipyatkov
4169a78e6f Removing unnecessary uses of analyzeFully 2015-06-04 01:05:49 +03:00
Valentin Kipyatkov
cd68cefba1 Added diagnostic for EA-68663 2015-06-04 01:05:49 +03:00
Valentin Kipyatkov
7be59f969c Fixed EA-68869 2015-06-04 01:05:49 +03:00
Valentin Kipyatkov
662cc325f4 Never invoke intention action when it's not available 2015-06-04 01:05:48 +03:00
Valentin Kipyatkov
9b32bb8894 Fixed EA-68922 2015-06-04 01:05:48 +03:00
Valentin Kipyatkov
6010876c95 Fixed EA-68937 2015-06-04 01:05:48 +03:00
Zalim Bashorov
9d32f5e8ed Minor in JS backend tests: use checkFooBoxIsOk instead of fooBoxIsValue 2015-06-03 23:09:17 +03:00
Zalim Bashorov
92457543bc JS backend: fix equality check for nullable types
* Generate simple check when compare with `null` literal.
* Use Kotlin.equals if type of receiver or argument is nullable.
* Don't call equals method if any of receiver or argument is null (at runtime, not only literal). For more information see KT-4356.

 #KT-7530 fixed
 #KT-7916 fixed
2015-06-03 23:09:16 +03:00
Zalim Bashorov
6aaccae6a9 JS backend: compare enum entries strictly
#KT-7840 fixed
2015-06-03 23:09:16 +03:00
Zalim Bashorov
4f0a858e93 JS backend: fix tests after move testTrue and testFalse to common place 2015-06-03 23:09:16 +03:00
Zalim Bashorov
430a3c121d Minor in JS backend: move testFalse and testTrue to common place 2015-06-03 23:09:16 +03:00
Zalim Bashorov
ca4ce48801 JS backend: fix compiler crash on for with empty body 2015-06-03 23:09:15 +03:00
Zalim Bashorov
f90df7aa35 JS backend: fix compiler crash on empty then if block
#EA-68941 fixed
2015-06-03 23:09:15 +03:00
Zalim Bashorov
779a0373c7 JS backend: generate better code for secondary constructor calls -- don't generate undefined when it possible 2015-06-03 23:09:15 +03:00
Zalim Bashorov
79b5652ce6 JS backend: added test which check that name of classes not mangled when we have a function with the same name in non-public API 2015-06-03 23:09:15 +03:00
Zalim Bashorov
33fb3fb6e4 JS backend: support secondary constructors in native classes 2015-06-03 23:09:15 +03:00
Dmitry Jemerov
08439c541e don't bother calculating possibleResolutionScopes if we aren't going to use them 2015-06-03 20:59:18 +02:00
Pavel V. Talanov
f335e9f6b2 Fix a problem where a sequence of out-of-block completions could lead to an inconsistent resolve session provided for a synthetic copy of a file 2015-06-03 21:22:10 +03:00
Natalia Ukhorskaya
7b63dd987c Workaround for bug in Android Plugin: it generates LightFields for files starting from '.' (ex. .DS_Store file)
#KT-6625 Fixed
2015-06-03 16:36:57 +03:00
Alexander Udalov
e38bc864d1 Fix heavy integer parsing in FunctionN class factory
#KT-7924 Fixed
2015-06-03 15:37:49 +03:00
Alexander Udalov
6c8f2be1d8 Revert "Fix heavy integer parsing in FunctionN class factory"
This reverts commit 9d493d995e.
2015-06-03 15:32:47 +03:00
Alexander Udalov
c18ef6e2ac Increase buffer size in preloader from 8K to 512K
Doesn't seem to improve performance, but cuts down lots of IO file read counts
2015-06-03 15:14:24 +03:00
Alexander Udalov
9d493d995e Fix heavy integer parsing in FunctionN class factory
#KT-7924 Fixed
2015-06-03 15:14:23 +03:00
Pavel V. Talanov
3c791c418d KotlinSignatureInJavaMarkerProvider: do not report errors on exceptions
Fixing it is not in our immediate plans and these exceptions litter our EA and create a bad impression for users, while not really disrupting any workflow
2015-06-03 14:56:10 +03:00
Michael Bogdanov
2377a10007 Fix labeling processing on inlining: suport labeled literals
#KT-7273 Fixed
2015-06-03 14:42:57 +03:00
Pavel V. Talanov
f02f663167 Minor: fix test data 2015-06-03 14:29:44 +03:00
Dmitry Jemerov
758b94d3a6 get rid of JetScopeSelectorUtil, inline its contents into Kotlin code 2015-06-03 12:03:15 +02:00
Natalia Ukhorskaya
c57a0440ec Test stdlib with dx
#KT-7003 Fixed
2015-06-03 12:44:02 +03:00
Natalia Ukhorskaya
094119ee63 Fix EA-63657 2015-06-03 12:44:01 +03:00
Natalia Ukhorskaya
c410f1cdfc Android tests: use ant from dependencies dirs 2015-06-03 12:44:00 +03:00
Dmitry Jemerov
425f91dfc6 some dead code in ResolutionTask 2015-06-02 20:38:02 +02:00
Pavel V. Talanov
04bef2cc08 Minor: Drop unused code and inline utility 2015-06-02 19:19:57 +03:00
Pavel V. Talanov
ccaa779e2f Minor: fix test 2015-06-02 19:06:27 +03:00
Dmitry Jemerov
4d5c785944 don't create resolve tasks with lists of candidates which are known to be empty 2015-06-02 17:40:13 +02:00
Dmitry Jemerov
365d45f49e add missing API to retrieve Kotlin source roots from a CompilerConfiguration 2015-06-02 17:22:44 +02:00
Dmitry Jemerov
9672264442 avoid unnecessary and expensive creation of FqName instances 2015-06-02 16:36:03 +02:00
Alexander Udalov
d1df234cfe Support annotations as annotation arguments in reflection, add test
A follow-up to 281acb8 where this was supported in the compiler
2015-06-02 17:31:19 +03:00
Alexander Udalov
158b3ba102 Make parameter names of fictitious function classes non-stable
To be able to change them when overriding invoke in subclasses without a
warning
2015-06-02 17:30:58 +03:00
Alexander Udalov
16b20cf910 Fix NoSuchMethodError on FunctionReference#init 2015-06-02 17:29:52 +03:00
Pavel V. Talanov
d2592e4a2c Companion objects have public visibility by default
#KT-7114 Fixed
2015-06-02 16:23:03 +03:00
Dmitry Jemerov
5ba283397b use more compact map implementation in ObservableBindingTrace 2015-06-02 15:17:25 +02:00
Dmitry Jemerov
f545c9ddac dispatch directly to the correct visitor function 2015-06-02 15:14:37 +02:00
Ilya Gorbunov
0302dd06f7 Do not call mkdirs when destination file of copyTo doesn't have any parent directory.
#KT-7888 Fixed
2015-06-02 15:50:47 +03:00
Pavel V. Talanov
7f70a4ae89 Minor: extract implementation of ResolutionFacade to a separate class 2015-06-02 15:32:02 +03:00
Pavel V. Talanov
a94c13be6d KotlinCacheService: allow to get ResolveSessionForBodies by module descriptor
Utility to resolve import in file by fq name
2015-06-02 15:32:01 +03:00
Valentin Kipyatkov
e60c3f5ee7 DeprecatedSymbolUsageFix: fixed for string template 2015-06-02 14:36:06 +03:00
Valentin Kipyatkov
a5cb1e8c2b Converted JetExpressionImpl to Kotlin, got rid of code duplication 2015-06-02 14:36:06 +03:00
Valentin Kipyatkov
b012f22edc DeprecatedCallableAddReplaceWithIntention: fixed for string templates in expression 2015-06-02 14:36:06 +03:00
Valentin Kipyatkov
07cb0a0b08 DeprecatedSymbolUsageFix: refactored code for easier handling of optional arguments 2015-06-02 14:36:06 +03:00
Valentin Kipyatkov
1fdb4429c3 Edited TODOs 2015-06-02 14:36:05 +03:00
Valentin Kipyatkov
134621ce77 DeprecatedSymbolUsageFix: fixed for incorrect annotation arguments 2015-06-02 14:36:05 +03:00
Valentin Kipyatkov
f1d8838bbd Removed code duplication for getting annotation argument 2015-06-02 14:36:05 +03:00
Valentin Kipyatkov
aefe0dd192 Changed highlighting range and attributes of useless elvis operator 2015-06-02 14:35:19 +03:00
Denis Zharkov
11290ae9e7 Fix wrong assumptions in quickfix
Diagnostic is always reported on overriden property

 #EA-64407 Fixed
2015-06-02 14:07:49 +03:00
Denis Zharkov
349d5f02ea Drop wrong assertion about duplicating properties in data class
#EA-64269 Fixed
2015-06-02 14:07:49 +03:00
Denis Zharkov
70dbbd8fda Resolve constructors declared in traits and objects
It prevents exceptions and produces less red code

 #EA-68667 Fixed
2015-06-02 14:07:49 +03:00
Denis Zharkov
7f9d2e8a36 Refine diagnostics reported on primary constructors 2015-06-02 14:07:49 +03:00
Denis Zharkov
9c574469ca Parsing: allow primary ctor in object syntactically
It's needed for better recovering for cases of changes like 'class' -> 'object'

The only sensible case when it's may be bad:
class A {
   object B
   constructor() : super()
}

But it seems to be rare, and ';' can be used to separate object from secondary ctor
2015-06-02 14:07:48 +03:00
Denis Zharkov
3f7ca5a586 Do not report diagnostic "ctr in trait" in delegation specifier
Constructor declaration in interfaces is prohibited anyway
2015-06-02 13:18:53 +03:00
Denis Zharkov
19e4127f4f Do not wrap primary ctor of object into ErrorElement
It helps to resolve them as for classes
Diagnostic with same content will be reported instead
2015-06-02 13:18:53 +03:00
Denis Zharkov
c054dc19e3 Get rid of assumption that primary ctr is a child of JetClass
As it can be contained within JetObjectDeclaration
2015-06-02 13:18:53 +03:00
Denis Zharkov
71b5cd692b Prettify JetClass and JetObjectDeclaration 2015-06-02 13:18:53 +03:00
Denis Zharkov
8c6264bf2c Pull constructor-related methods from JetClass to JetClassOrObject 2015-06-02 13:18:53 +03:00
Denis Zharkov
51534f4592 Make JetClassOrObject an abstract class implementing common methods 2015-06-02 13:18:52 +03:00
Denis Zharkov
5b1a5deae4 Convert JetClassOrObject and inheritors: J2K 2015-06-02 13:18:52 +03:00
Denis Zharkov
bfa667f569 Convert JetClassOrObject and inheritors: .java -> .kt 2015-06-02 13:18:52 +03:00
Dmitry Jemerov
cb6ddc5db3 correctly check if we need to process deferred types in body resolver 2015-06-02 11:58:33 +02:00
Dmitry Jemerov
22168aa026 optimize DescriptorUtils.getContainingModuleOrNull() by removing duplicate parent traversal and Class.isInstance() checks 2015-06-02 11:55:16 +02:00
Dmitry Jemerov
252ddf4e2e delete unused interface KeyNormalizer 2015-06-02 11:52:42 +02:00
Alexander Udalov
d2508c8710 Do not report irrelevant diagnostics on unresolved supertypes
Previously the confusing "trait with superclass" was reported when an
unresolved classifier appeared in interface supertypes
2015-06-02 12:30:14 +03:00
Alexander Udalov
23670292d6 Minor, drop unused properties in libraries/pom.xml
Also regroup for clarity
2015-06-02 11:12:09 +03:00
Alexander Udalov
9cc156c67f Copy kotlin-reflect.jar from dist to publish to Maven
Also build sources jar in build.xml to publish as kotlin-reflect's sources, and
create an empty javadoc
2015-06-02 11:12:09 +03:00
Alexander Udalov
ee811136d2 Minor, update URL and fix typo in maven project description 2015-06-02 11:12:08 +03:00
Alexander Udalov
c830eee453 Add kotlin-reflect.jar to targets in build.xml 2015-06-02 11:12:08 +03:00
Mikhail Glukhikh
9295624378 Unused imports removed 2015-06-02 11:11:19 +03:00
Mikhail Glukhikh
dea2ec9da6 When now tries to smart cast subject to not-null if contains no null case #KT-7857 Fixed
Some new tests + some fixed tests
2015-06-02 10:56:21 +03:00
Mikhail Glukhikh
de12771c0f Warning generation on non-exhaustive whens over enums + a set of tests + fixed test #KT-6227 Fixed 2015-06-02 10:56:17 +03:00
Mikhail Glukhikh
969993bd09 Fix for EA-68871 #EA-68871 Fixed 2015-06-02 10:56:13 +03:00
Alexander Udalov
bd17db6f3e Delete TeamCityPluginPublisher.xml and run configuration on TC
The run configuration is not used anymore because we have branches which run
tests against different IDEA versions, and also IDEA master runs the plugin
verifier with the Kotlin plugin
2015-06-01 19:23:12 +03:00
Alexander Udalov
06dafef4cc Add test on no 'kotlin.reflect.jvm.internal.impl' package in project code 2015-06-01 19:23:11 +03:00
Alexander Udalov
9cd835a5f8 Refactor and optimize JetCodeConformanceTest
Combine all tests that iterate over all files in the project. This should speed
up the test substantially, especially on slow file systems
2015-06-01 19:23:11 +03:00
Alexander Udalov
41d2e378f8 Convert JetCodeConformanceTest to Kotlin: prettify 2015-06-01 19:23:11 +03:00
Alexander Udalov
fca662af91 Convert JetCodeConformanceTest to Kotlin: invoke J2K 2015-06-01 19:23:10 +03:00
Alexander Udalov
8cf04ce966 Convert JetCodeConformanceTest to Kotlin: move .java -> .kt 2015-06-01 19:23:10 +03:00
Alexander Udalov
12a6461006 Report 'free function called as extension' on Function subclasses
You can't make a value of some type invokable as an extension by adding
'extension' annotation to the type
2015-06-01 19:23:10 +03:00
Alexander Udalov
596d378962 Fix abstract method error: implement arity in function references 2015-06-01 19:23:09 +03:00
Alexander Udalov
803fb82b8b Minor, move compiler.pro out of project root 2015-06-01 19:23:09 +03:00
Alexander Udalov
28addcf8e7 Do not generate annotations of method parameters on its $default synthetic method
#KT-7892 Fixed
2015-06-01 19:23:08 +03:00
Alexander Udalov
4f77b44ac3 Minor, move constant to the proper place 2015-06-01 19:23:08 +03:00
Alexander Udalov
df4d5a3ae2 Fix initialization order of enum entries and companion
#KT-5761 Fixed
2015-06-01 19:23:08 +03:00
Alexander Udalov
7ba0dda29c Check compileJavaAgainstKotlin tests with .txt files 2015-06-01 19:23:07 +03:00
Evgeny Gerashchenko
cab8f583a8 Minor. Renamed test. 2015-06-01 19:02:13 +03:00
Evgeny Gerashchenko
88e8988b18 Stabilized order of bytecode for when mappings initialization. 2015-06-01 19:02:13 +03:00
Evgeny Gerashchenko
b94665e948 Updated Kannotator JPS build test for new incremental compilation.
Now it only invokes make for each changed file (much faster). And for each source target, it also checks that out directories are the same as after full rebuild.
2015-06-01 19:02:13 +03:00
Evgeny Gerashchenko
bd8e907809 Minor. Moved file to separate package to avoid clashing between tests and sources 2015-06-01 19:02:12 +03:00
Evgeny Gerashchenko
beb099fc12 Made incremental compilation enabled by default in IDEA settings. 2015-06-01 19:02:12 +03:00
Evgeny Gerashchenko
36915bf846 Enabled incremental compilation by default. 2015-06-01 19:02:12 +03:00
Evgeny Gerashchenko
fe3437e8a1 Fixed iml files in test data. Order entry for own sources is obligatory. 2015-06-01 19:02:12 +03:00
Evgeny Gerashchenko
7de531fe09 Fixed package proto for circular dependencies. Case when package is present in different modules which depend on each other. We should generate separate package facades for this case. 2015-06-01 19:02:11 +03:00
Evgeny Gerashchenko
37d6c9bf25 Minor. Fixed typo in test data. 2015-06-01 19:02:11 +03:00
Valentin Kipyatkov
ad624d60ec ConvertFunctionToPropertyIntention and ConvertPropertyToFunctionIntention made low priority 2015-06-01 18:23:35 +03:00
Valentin Kipyatkov
8fd6a64be9 Refactored methods for val/var in PSI 2015-06-01 18:23:34 +03:00
Valentin Kipyatkov
034b74d3e5 Rewritten ChangeVariableMutabilityFix
#KT-7877 Fixed
2015-06-01 18:23:34 +03:00
Valentin Kipyatkov
d74ac4d08a Override/implement members dialog: no qualified type names in signatures but qualified owner class names (+ moved a method) 2015-06-01 18:23:34 +03:00
Yan Zhulanow
54b3fc9e37 Do not bundle annotation collector plugin into IDE plugin 2015-06-01 17:28:03 +03:00
Pavel V. Talanov
d531641459 Fix ReplaceWithOperatorAssignmentIntention in some cases
#KT-7831 Fixed
2015-06-01 15:52:52 +03:00
Natalia Ukhorskaya
1334f0352b Support com.android.tools.build.gradle 1.3.0-beta1
#KT-7884 Fixed
2015-06-01 14:00:57 +03:00
Natalia Ukhorskaya
31db945110 Fix navigation to file from "breakpoint reached at" info 2015-06-01 14:00:56 +03:00
Zalim Bashorov
746b16fce3 Don't include test data in the language statistic for a repository 2015-06-01 12:47:29 +03:00
Ilya Gorbunov
64b2e37436 Deprecate meaningless or vague-defined operations with Char operands: downTo. 2015-06-01 00:55:45 +03:00
Alexey Sedunov
8a751ad74a Call Hierachy: Fix NPE
#EA-67995 Fixed
2015-05-30 18:16:26 +03:00
Alexey Sedunov
26c4efb587 Light Elements: Filter out nulls when converting Kotlin declarations to corresponding light elements
#EA-64403 Fixed
2015-05-30 18:16:25 +03:00
Alexey Sedunov
fed8047a59 Find Usages: Fix NPE
#EA-64275 Fixed
2015-05-30 18:16:23 +03:00
Alexey Sedunov
e1f660f446 Call Hierarchy: Forbid PsiClass at the hierarchy root
#EA-64406 Fixed
2015-05-30 18:16:22 +03:00
Zalim Bashorov
f1d37572c8 JS backend: fix missed variable declarations for tmps in class primary/default constructor
#KT-7864 Fixed
2015-05-29 20:09:46 +03:00
Dmitry Jemerov
e0f819d93c document ReplaceWith annotation 2015-05-29 17:11:22 +02:00
Valentin Kipyatkov
0e69162628 DeprecatedSymbolUsageFix to not be available for functions with optional parameters and no sources 2015-05-29 15:10:14 +03:00
Valentin Kipyatkov
6fbd530eee DeprecatedSymbolUsageFix: changed from descriptors to import back to fq-names as it's more safe 2015-05-29 15:10:14 +03:00
Valentin Kipyatkov
859128744e Fixed DeprecatedSymbolUsageInWholeProjectFix 2015-05-29 15:06:14 +03:00
Valentin Kipyatkov
eef0e8e447 JetBlockExpression.getStatements() returns List<JetExpression> instead of List<JetElement> 2015-05-29 14:22:56 +03:00
Valentin Kipyatkov
4927a58101 Reordered methods 2015-05-29 14:07:34 +03:00
Valentin Kipyatkov
609ac21be0 Added TODO 2015-05-29 13:55:48 +03:00
Valentin Kipyatkov
df0fc51d68 Moved methods working with calls into appropriate place 2015-05-29 13:55:47 +03:00
Valentin Kipyatkov
ac7e6bdfe4 Moved method to psiUtils.kt 2015-05-29 13:55:47 +03:00
Valentin Kipyatkov
85d9855013 Moved methods for package-directory relation into IDEA 2015-05-29 13:55:47 +03:00
Valentin Kipyatkov
cbc0a60006 Moving more PSI modification methods to psiModificationUtils.kt 2015-05-29 13:55:47 +03:00
Valentin Kipyatkov
006c02b569 Getting rid of confusing methods on PsiElement's 2015-05-29 13:55:47 +03:00
Valentin Kipyatkov
e99b343be3 Moving methods modifying PSI to psiModificationUtils.kt 2015-05-29 13:55:47 +03:00
Valentin Kipyatkov
c1e0469188 More simple implementation 2015-05-29 13:55:46 +03:00
Valentin Kipyatkov
494d96bbc7 Refactored PsiElement.parents() into 2 properties 2015-05-29 13:55:46 +03:00
Valentin Kipyatkov
55f70d7d48 Dropped unused methods 2015-05-29 13:55:46 +03:00
Valentin Kipyatkov
0e8a43f746 Moved language independent methods from jetPsiUtil.kt to psiUtils.kt + reordered and gropped them 2015-05-29 13:55:46 +03:00
Valentin Kipyatkov
65383cf68b Fixed incorrect method 2015-05-29 13:55:46 +03:00
Valentin Kipyatkov
c8223fff9e getFirstChild().siblings -> allChildren 2015-05-29 13:55:46 +03:00
Alexander Udalov
bf09906f35 Fix ISE when caret is on parameter of function type
EA-68570
2015-05-28 22:09:33 +03:00
Alexander Udalov
dff3e17d88 Minor, swap order of parameters for clarity 2015-05-28 22:09:24 +03:00
Alexander Udalov
6dbd9b2d01 Minor, set XML indentation to 4 spaces
Was accidentally changed to 2 in 181af17
2015-05-28 22:09:01 +03:00
Valentin Kipyatkov
ca3dfdf008 Fixed AbstractQuickFixMultiFileTest badly broken sometime ago 2015-05-28 22:00:36 +03:00
Valentin Kipyatkov
09028390fd Corrected test data 2015-05-28 21:35:05 +03:00
Dmitry Jemerov
443eabf88a make Dokka happy by sorting imports of Java classes 2015-05-28 17:53:12 +02:00
ilya-g
ba6a6ce49f Merge pull request #677 from JetBrains/rr/yole/stdlib-docs
stdlib doc-related cleanup
2015-05-28 16:22:42 +03:00
Valentin Kipyatkov
08cf8065ea DeprecatedSymbolUsageFix to keep line breaks when possible 2015-05-28 16:14:15 +03:00
Dmitry Jemerov
8f0f02fc59 correct some errors and omissions in stdlib doc comments 2015-05-28 14:38:36 +02:00
Dmitry Jemerov
fa5aa664b5 update build script for new distribution of dokka 2015-05-28 14:38:20 +02:00
Dmitry Jemerov
0e5b6c41dd use new syntax for annotations 2015-05-28 14:14:05 +02:00
Valentin Kipyatkov
5e5e71882e Code cleanup to work more reliably with nested problems 2015-05-28 13:45:24 +03:00
Valentin Kipyatkov
2b61bca6dd Code cleanup includes deprecated symbol usage fixes + code cleanup does not crash on nested usages to fix 2015-05-28 13:45:24 +03:00
Valentin Kipyatkov
d415b0c74d Fixed critical bug in DeprecatedSymbolUsageFix 2015-05-28 13:45:07 +03:00
Zalim Bashorov
68eca8bc00 JS backend: add the support secondary constructors 2015-05-28 11:06:06 +03:00
Zalim Bashorov
016534b487 Minor: change package in astUtils.kt: ast -> jsAstUtils 2015-05-28 11:06:05 +03:00
Zalim Bashorov
cb37ae5d1e Minor: add "ctor" to dictionary 2015-05-28 11:06:04 +03:00
Zalim Bashorov
e11d61d68a JS backend: move all class creation logic from FileDeclaration to ClassTranslator 2015-05-28 11:06:04 +03:00
Zalim Bashorov
6e7be78b98 Minor improvments in ClassTranslator after conversion 2015-05-28 11:06:03 +03:00
Zalim Bashorov
c589026a47 Convert ClassTranslator.java to Kotlin 2015-05-28 11:06:02 +03:00
Zalim Bashorov
b61c1376a2 ClassTranslator.java -> ClassTranslator.kt 2015-05-28 11:06:02 +03:00
Zalim Bashorov
ef5ee5100a JS backend: make CallTranslator more comfortable to use from java 2015-05-28 10:38:30 +03:00
Zalim Bashorov
68f851cbdc Move JvmCodegenUtil#getDelegationConstructorCall to common place (BindingContextUtils) 2015-05-28 10:30:54 +03:00
Zalim Bashorov
f3f799aab5 Fix secondary constructor tests for JS -- use non-zero fracitional part 2015-05-28 10:25:12 +03:00
Zalim Bashorov
3fe363e72b Minor: split test to access to companion and to nested object 2015-05-28 10:25:11 +03:00
Zalim Bashorov
dc1b91eacd JS: prepare tests for secondary constructors 2015-05-28 10:24:48 +03:00
Zalim Bashorov
72c2648fc8 JS frontend: remove diagnostics about the secondary constructors are not supported 2015-05-28 10:24:47 +03:00
Alexander Udalov
d14e5b8a72 Restore and deprecate Function{n}/ExtensionFunction{n} classes for easier migration
Users' Java code will not break in common cases (when passing functions to
Kotlin), and deprecation warnings will be reported.

Provide an inspection with a quick fix which allows to replace deprecated
function class usages to the new classes. Include this fix to the "code
cleanup" action
2015-05-28 01:20:05 +03:00
Ilya Gorbunov
851007cc6c Fix output of test that relied on the documentation wording. 2015-05-28 00:36:00 +03:00
Valentin Kipyatkov
ce40ed1385 J2K: use arrayOf instead of array and similar 2015-05-28 00:17:04 +03:00
Valentin Kipyatkov
002312f98a Import of KClass inserted when needed on conversion to Kotlin on paste 2015-05-28 00:17:04 +03:00
Valentin Kipyatkov
f687a40136 Conversion to Kotlin on paste: supported for annotation 2015-05-28 00:17:04 +03:00
Valentin Kipyatkov
098b313a32 Moved method 2015-05-28 00:17:04 +03:00
Valentin Kipyatkov
ce9a986524 J2K: updated to use of Kotlin's KClass instead of Java's class in annotation declarations and usages 2015-05-28 00:17:04 +03:00
Valentin Kipyatkov
0a2983d602 J2K: converting of enum constants overriding members 2015-05-28 00:17:03 +03:00
Valentin Kipyatkov
bb0b3fcd0c J2K: updating generated enums to modern syntax 2015-05-28 00:17:03 +03:00
Valentin Kipyatkov
f89cff8b78 "trait" -> "interface" 2015-05-28 00:17:03 +03:00
Valentin Kipyatkov
87cb36e8e9 Updating java to kotlin convert to new language syntax 2015-05-28 00:17:03 +03:00
Ilya Gorbunov
802ca5476d Clarify requirements for limit parameter in split method. Provide replacement for deprecated split(regex: String). 2015-05-27 23:28:06 +03:00
Ilya Gorbunov
ea85290939 Annotate deprecated members with proposed replacement. 2015-05-27 22:29:37 +03:00
Ilya Gorbunov
953bbef08c Allow to specify replacement for deprecated items in generated code. 2015-05-27 22:29:35 +03:00
Ilya Gorbunov
fa24db435d Stdlib documentation: clarified toMap behavior when a duplicate key is encountered. 2015-05-27 22:29:33 +03:00
Ilya Gorbunov
1fb4183bbb Prettify kdocs in stdlib, part 2. 2015-05-27 22:16:19 +03:00
Ilya Gorbunov
5c8c58f702 Prettify kdocs in stdlib, part 1. 2015-05-27 22:16:17 +03:00
Ilya Gorbunov
ae60f7a32f Prettify kdocs and exception messages in the generated code. 2015-05-27 22:16:15 +03:00
Mikhail Glukhikh
fe49a2ee51 Build fix 2015-05-27 23:40:40 +02:00
Dmitry Jemerov
a41205fff7 Allow calling KotlinCacheService.getResolutionFacade() with an empty set of Kotlin files.
This is needed in Dokka, where a project to be documented can contain only Java files, but we will still attempt to resolve links in Markdown files containing package documentation through the KDoc reference resolver. The attempts will fail when there are no Kotlin files, but at least we won't crash trying to retrieve the first element of an empty list.
2015-05-27 19:22:19 +02:00
Mikhail Glukhikh
3ad06f169d Solution for EA-66870: Foo<in *> and Foo<out *> types are now treated as incorrect.
#EA-66870  Fixed.
2015-05-27 19:07:46 +03:00
Mikhail Glukhikh
9b50705a0e Warning fixed 2015-05-27 19:07:43 +03:00
Mikhail Glukhikh
4fb331ecd3 Solution for KT-7838: now data flow information at the end of when expression is determined correctly.
#KT-7838  Fixed.
2015-05-27 19:07:41 +03:00
Alexey Sedunov
9e69b74a15 Extract Function: Extract smart-cast value as parameter
#KT-7576 Fixed
2015-05-27 18:41:42 +03:00
Michael Bogdanov
e20a5121c7 Support private package properties in inline functions 2015-05-27 18:09:40 +03:00
Denis Zharkov
be9cc2e91b Change color scheme for annotations
Use same color as for modifiers, but with plain font type
2015-05-27 17:41:27 +03:00
Denis Zharkov
53e9234ea9 Add quickfix for replacing positioned arguments in Java annotation 2015-05-27 17:41:27 +03:00
Ilya Gorbunov
0c818767a6 Replace usages of renamed overloads annotation. 2015-05-27 17:26:07 +03:00
Dmitry Jemerov
966df199bb move KDocFinder to idea-analysis package 2015-05-27 15:41:47 +02:00
Valentin Kipyatkov
a71710f589 DeprecatedSymbolUsageInWholeProjectFix: removed notification dialog 2015-05-27 16:15:56 +03:00
Valentin Kipyatkov
18ddac0249 Corrected formatting in test data 2015-05-27 16:15:55 +03:00
Valentin Kipyatkov
eadfa72480 Fixed formatter for EOL comments (via hack) 2015-05-27 16:15:55 +03:00
Valentin Kipyatkov
55acce5e0d Minor 2015-05-27 16:15:55 +03:00
Valentin Kipyatkov
b6eda35345 TODOs 2015-05-27 16:15:55 +03:00
Valentin Kipyatkov
697516cfdd DeprecatedSymbolUsageFix: fixed for java declaration + one more test 2015-05-27 16:15:55 +03:00
Valentin Kipyatkov
18c19457f0 DeprecatedSymbolUsageFix: handling of array access expression duplication 2015-05-27 16:15:55 +03:00
Valentin Kipyatkov
d5d1158e44 Comment saver is more clever about comma's 2015-05-27 16:15:55 +03:00
Valentin Kipyatkov
d3403dee1a DeprecatedSymbolUsageFix preserves comments 2015-05-27 16:15:54 +03:00
Valentin Kipyatkov
fefa12b0a9 ConvertForEachToForLoopIntention preserves comments 2015-05-27 16:15:54 +03:00
Valentin Kipyatkov
5d0b42ee71 ConvertToForEachFunctionCallIntention preserves comments outside of body too 2015-05-27 16:15:54 +03:00
Valentin Kipyatkov
8b44c93667 JetPsiFactory.createByPattern supports PsiChildRange as argument, used it in ConvertToForEachFunctionCallIntention 2015-05-27 16:15:54 +03:00
Valentin Kipyatkov
b957584d91 Refactored JetPsiFactory.createByPattern to handle different argument types uniformly 2015-05-27 16:15:54 +03:00
Valentin Kipyatkov
1d16b76a42 Minor corrections after code review 2015-05-27 16:15:54 +03:00
Valentin Kipyatkov
2eaf767521 JetPsiFactory: create by pattern allows Name's as arguments + changed placeholder text specification format 2015-05-27 16:15:53 +03:00
Valentin Kipyatkov
77d097b957 TODO's 2015-05-27 16:15:53 +03:00
Valentin Kipyatkov
c167ddb2fe Minor 2015-05-27 16:15:53 +03:00
Valentin Kipyatkov
df0d27b8b2 Split if intention preserves comments 2015-05-27 16:15:53 +03:00
Valentin Kipyatkov
4a2f2b62ec Fixed KT-7755 Convert to expression body kills comment
#KT-7755
2015-05-27 16:15:53 +03:00
Valentin Kipyatkov
b39e9ebdb2 Implemented special CommentSaver helper for not loosing comments when doing code transformation 2015-05-27 16:15:53 +03:00
Valentin Kipyatkov
333445d93e Fixed Convert to foreach intention loosing comments 2015-05-27 16:15:52 +03:00
Valentin Kipyatkov
0f36458d2e Made low prio 2015-05-27 16:15:52 +03:00
Valentin Kipyatkov
63f9d0abdb Convention name calls intentions made high priority 2015-05-27 16:15:52 +03:00
Valentin Kipyatkov
526bdfd500 "Flip binary expression" intention made low priority 2015-05-27 16:15:52 +03:00
Valentin Kipyatkov
4c88b31878 KT-7525 Don't suggest to replace 'get' call with index operator for static method calls (inspection & intention)
KT-5322 super.get issues a "Replace 'get' call with index operator" inspection

 #KT-7525 Fixed
 #KT-5322 Fixed
2015-05-27 16:15:52 +03:00
Valentin Kipyatkov
0fe334fd55 KT-7702 Split into 2 if's intention: produce better result for return
#KT-7702 Fixed
2015-05-27 16:15:52 +03:00
Valentin Kipyatkov
8f797e8e69 "Split if" intention - renamed tests 2015-05-27 16:15:51 +03:00
Valentin Kipyatkov
8e16ddb00e Minor 2015-05-27 16:15:51 +03:00
Valentin Kipyatkov
0d8d030763 "Add constructor parameters" fix - fixed display of too long signatures 2015-05-27 16:15:51 +03:00
Valentin Kipyatkov
04bee4dd7d Fixing issues after code review 2015-05-27 16:15:51 +03:00
Valentin Kipyatkov
17f0ac9ba7 Don't use plain text generation 2015-05-27 16:15:51 +03:00
Valentin Kipyatkov
5df840d9e3 Getting default value from overriding method 2015-05-27 16:15:50 +03:00
Valentin Kipyatkov
a7580d95e5 Accessing of default parameter value in compiled code via source (if found) 2015-05-27 16:15:50 +03:00
Valentin Kipyatkov
281acb860e Loading of annotation class arguments from compiled classes 2015-05-27 16:15:50 +03:00
Valentin Kipyatkov
b256329287 Added "ReplaceWith" to deprecated library functions 2015-05-27 16:15:50 +03:00
Valentin Kipyatkov
ec5256a0f0 DeprecatedCallableAddReplaceWithIntention 2015-05-27 16:15:50 +03:00
Valentin Kipyatkov
ba3d5f944e DeprecatedSymbolUsageFix: optimization to not search descriptors to import twice 2015-05-27 16:15:50 +03:00
Valentin Kipyatkov
ee681cbeed DeprecatedSymbolUsageFix: renamed local 2015-05-27 16:15:49 +03:00
Valentin Kipyatkov
e767cdef83 DeprecatedSymbolUsageFix: fixed nested calls with implicit receivers in the pattern 2015-05-27 16:15:49 +03:00
Valentin Kipyatkov
4407523b65 DeprecatedSymbolUsageFix: more correct code + refactoring 2015-05-27 16:15:49 +03:00
Valentin Kipyatkov
a9e00a3264 DeprecatedSymbolUsageFix: can drop more arguments when function literal argument exist 2015-05-27 16:15:49 +03:00
Valentin Kipyatkov
2e2701aa61 DeprecatedSymbolUsageFix: keeping named arguments 2015-05-27 16:15:49 +03:00
Valentin Kipyatkov
0c397548e8 createByPattern fix (after we changed way how JetPsiFactory.createArgument works 2015-05-27 16:15:49 +03:00
Valentin Kipyatkov
6b66e3b0e6 JetPsiFactory: refactored method for creating argument + introduced ability to create arbitrary constructs by pattern 2015-05-27 16:15:49 +03:00
Valentin Kipyatkov
161630a449 DeprecatedSymbolUsageFix: keeping functional literal arguments out of parenthesis 2015-05-27 16:15:48 +03:00
Valentin Kipyatkov
36f41c6d13 Minor code simplification 2015-05-27 16:15:48 +03:00
Valentin Kipyatkov
be9a3d10f6 DeprecatedSymbolUsageFix: fixed bug with symbols from root package not imported 2015-05-27 16:15:48 +03:00
Valentin Kipyatkov
97d3620262 DeprecatedSymbolUsageFix: dealing with vararg's 2015-05-27 16:15:48 +03:00
Valentin Kipyatkov
f8a4d9bf0b Moved test data into subfolders 2015-05-27 16:15:48 +03:00
Valentin Kipyatkov
6ddb208bb7 Removed default values from inline functions to workaround compiler's bug 2015-05-27 16:15:47 +03:00
Valentin Kipyatkov
f58ce760ca DeprecatedSymbolUsageFix: support for optional parameters (not complete) 2015-05-27 16:15:47 +03:00
Valentin Kipyatkov
766ca2b905 Deprecated symbol usages fix for the whole project 2015-05-27 16:15:47 +03:00
Valentin Kipyatkov
78302be571 Minor code clarification 2015-05-27 16:15:47 +03:00
Valentin Kipyatkov
5c445ca003 DeprecatedSymbolUsageFix: dealing with dropping arguments with potential side effects + stdlib's "let" has no receiver type bound 2015-05-27 16:15:47 +03:00
Valentin Kipyatkov
08cfca56f8 DeprecatedSymbolUsageFix - dealing with infix and operator calls 2015-05-27 16:15:47 +03:00
Valentin Kipyatkov
33caa7ad36 Moved utility method 2015-05-27 16:15:46 +03:00
Valentin Kipyatkov
a6f76bbf76 Fixed keywords after 'this@' completion + fixed implementation of JetExpressionWithLabel.getLabelName() 2015-05-27 16:15:46 +03:00
Valentin Kipyatkov
2a5ca095ee DeprecatedSymbolUsageFix - correct dealing with implicit receivers + fixed KT-7776 in completion
#KT-7776 Fixed
2015-05-27 16:15:46 +03:00
Valentin Kipyatkov
5da192ddd4 DeprecatedSymbolUsageFix - fixed bug with usage in derived class 2015-05-27 16:15:46 +03:00
Valentin Kipyatkov
450168d6c7 DeprecatedSymbolUsageFix - code refactoring 2015-05-27 16:15:46 +03:00
Valentin Kipyatkov
a773542d47 DeprecatedSymbolUsageFix - handling of complex expressions used twice 2015-05-27 16:15:46 +03:00
Valentin Kipyatkov
4999958ca4 DeprecatedSymbolUsageFix - other way of safe call treatment - prepare to handle arguments with side effects 2015-05-27 16:15:45 +03:00
Valentin Kipyatkov
348d09866a DeprecatedSymbolUsageFix: more correct generation of "let" for safe call 2015-05-27 16:15:45 +03:00
Valentin Kipyatkov
df850d7035 DeprecatedSymbolUsageFix: initial implementation 2015-05-27 16:15:45 +03:00
Valentin Kipyatkov
0a886320ca JetWholeProjectForEachElementOfTypeFix - not too much duplicating string arguments 2015-05-27 16:15:45 +03:00
Valentin Kipyatkov
7d8a92aeb7 More correct code in class completion insert handler 2015-05-27 16:15:45 +03:00
Valentin Kipyatkov
d7c64d44b6 Better implementation of "Move lambda outside parenthesis" 2015-05-27 16:15:44 +03:00
Valentin Kipyatkov
3bca1d1f83 "Move lambda outside parenthesis" should not be available when not valid 2015-05-27 16:15:44 +03:00
Valentin Kipyatkov
25e323e960 Methods for editing in JetValueArgumentList 2015-05-27 16:15:44 +03:00
Valentin Kipyatkov
1e60c24134 Added ResolutionFacada.resolveImportReference and used it (but not all places replaced yet!!) 2015-05-27 16:15:44 +03:00
Valentin Kipyatkov
5a737b8973 Correctness check in JetPsiFactory.createExpression 2015-05-27 16:15:44 +03:00
Valentin Kipyatkov
0dc92c3ee8 QuickFixMultiFileTestGenerated - shorter test data files names 2015-05-27 16:15:44 +03:00
Yan Zhulanow
2a7b5501f4 Do not generate annotations.txt file if kapt is not used in project 2015-05-27 16:11:08 +03:00
Yan Zhulanow
33ba9e85c0 Close kapt writer only once 2015-05-27 16:11:07 +03:00
Yan Zhulanow
42ba2860a6 Gradle: Do not save javaTask extract property 2015-05-27 16:11:07 +03:00
Yan Zhulanow
b254825427 kapt: fix several annotation processors in AP wrapper 2015-05-27 16:11:06 +03:00
Yan Zhulanow
28a3865997 Cache writer instance in kapt 2015-05-27 16:11:05 +03:00
Yan Zhulanow
c2dd7d197e APT: Use task qualifiers in annotation file names 2015-05-27 16:11:05 +03:00
Yan Zhulanow
cbe435ccef APT: Remove stub Java file after Java compile step 2015-05-27 16:11:04 +03:00
Yan Zhulanow
0a450c1739 Fix compatibility issues with Android Gradle plugin 1.2 2015-05-27 16:11:03 +03:00
Evgeny Gerashchenko
88021ffc73 KT-7381 Receiver parameter is never used for native extension function
#KT-7381 fixed
2015-05-27 16:07:09 +03:00
Evgeny Gerashchenko
2a23bc79f3 KT-7256 False "Receiver parameter not used" for property with delegation
#KT-7256 fixed
2015-05-27 16:07:09 +03:00
Sergey Mashkov
6e444baedb Indexer advance() should check previousTokens size before look inside
fixes IndexOutOfBounds during indexing
2015-05-27 15:32:00 +03:00
Dmitry Jemerov
1188e57597 rename @overloads annotation to @jvmOverloads 2015-05-27 12:23:08 +02:00
Natalia Ukhorskaya
5c7d13e23c JetPositionManager: do not analyze breakpoints in files outside source roots 2015-05-27 11:17:48 +03:00
Natalia Ukhorskaya
2d509b3211 Write correct lineNumbers for properties with comments 2015-05-27 11:17:46 +03:00
Natalia Ukhorskaya
ffb7027680 JetPositionManager: fix finding psi file by source name 2015-05-27 11:17:44 +03:00
Natalia Ukhorskaya
c77d448832 Fix EA-68813: readAccess in JetPositionManager 2015-05-27 10:20:10 +03:00
Natalia Ukhorskaya
0fbcfddf4a Gradle: debug message prefix added 2015-05-27 10:20:09 +03:00
Denis Zharkov
cab2328b64 Do not insert type parameters when replacing javaClass with T::class
Type parameters are invalid for class literal unless class is `Array`
2015-05-27 08:24:57 +03:00
Denis Zharkov
eb80764d21 Introduce forceResolveLazyTypes into TypeResolutionContext
The main reason is to force type resolution when resolving
type arguments in class literal as annotation value argument:

@Ann(Array<String>::class) class Ann

`String` left unresolved unless this commit is applied.

Note, that currently forced calculations used only when bare types are allowed
as it's true for class literals resolution and currenlty it's enough.
2015-05-27 08:24:42 +03:00
Alexander Udalov
f9556e584d Minor, suppress code conformance test for generated sources 2015-05-27 01:44:19 +03:00
Alexander Udalov
6ae7ed1cc4 Add some new tests on functions and extension functions 2015-05-27 01:44:19 +03:00
Alexander Udalov
fae2d0231c Fix test data, restore incorrectly deleted import
It was mistakenly deleted in 738a84e and 48b18f1
2015-05-27 01:44:18 +03:00
Ilya Gorbunov
9c5844cf45 Restore mapping between PsiFiles and VirtualFiles, otherwise built-ins psi elements will become invalid in next test. 2015-05-27 00:58:46 +03:00
Ilya Gorbunov
84ca26719d Deprecate meaningless or vague-defined operations with Char operands.
Change expected test output.
2015-05-27 00:58:35 +03:00
Ilya Gorbunov
c6abf75856 Do not generate primitive type definition for Char, place it in a file beside. 2015-05-27 00:58:24 +03:00
Ilya Gorbunov
5f319e69d8 Restore String.split(String, Int) overload and make it deprecated. 2015-05-27 00:36:30 +03:00
Ilya Gorbunov
1566ea83c7 Rename conflicting repeat function with the same behavior from js tests. 2015-05-26 23:23:39 +03:00
Ilya Gorbunov
310666a617 Deprecate times method taking integer and function. Provide top-level repeat method instead.
#KT-7074 Fixed.
2015-05-26 23:23:37 +03:00
Ilya Gorbunov
45c82f2844 map(): Take into account size of collection being transformed when allocating ArrayList.
#KT-7832 Fixed.
2015-05-26 23:23:36 +03:00
Ilya Gorbunov
c9afb407f1 Provide isNotEmpty() extension function for Maps. 2015-05-26 23:23:34 +03:00
Ilya Gorbunov
01a0348685 Remove deprecated size property usage from generated code. 2015-05-26 23:23:32 +03:00
Alexey Sedunov
58ef7f2691 Extraction Engine: Suggest both bounds for nullability-flexible types without nullability annotations. Do not omit return type if inferred one is flexible
#KT-6837 Fixed
2015-05-26 22:42:46 +03:00
Alexey Sedunov
72205540d6 Extract Function: Show possible types for receiver in Extract Function/Introduce Lambda Parameter dialogs
#KT-7578 Fixed
2015-05-26 22:42:43 +03:00
Alexey Sedunov
cb9b1019b2 Function <-> Property Intention: Fix conversion of recursive functions/property accessors
#KT-7823 Fixed
2015-05-26 19:29:09 +03:00
Alexey Sedunov
5afc6235cc Move: Do not update package directives in files that don't belong to source root
#KT-7824 Fixed
2015-05-26 19:29:08 +03:00
Alexey Sedunov
6a1ae8b911 Minor: Code cleanup 2015-05-26 19:29:07 +03:00
Alexey Sedunov
cc351e55b0 Create from usage: Use type predicates provided by control-flow analysis to suggest more precise types
#KT-7742 Fixed
2015-05-26 19:29:06 +03:00
Alexey Sedunov
c757701a87 Refactoring: Extract function getContainingPseudocode() 2015-05-26 19:29:05 +03:00
Alexey Sedunov
b6ea2d4fd4 Control-Flow: Compute type predicates for arguments of unresolved calls 2015-05-26 19:29:04 +03:00
Alexey Sedunov
036e2c585b Refactoring: Introduce getReferenceTargets() function 2015-05-26 19:28:11 +03:00
Alexey Sedunov
640f07969a Refactoring: Extract createUnresolvedCall() functions 2015-05-26 19:28:10 +03:00
Alexey Sedunov
3d3b5591e1 Control-Flow: Improve debug text of ReadValueInstruction 2015-05-26 19:28:09 +03:00
Alexey Sedunov
868329e3cb Control-Flow: Fix pseudocode generation for combined get/set and invoke conventions
#KT-4462 Fixed
 #KT-4681 Fixed
2015-05-26 19:28:07 +03:00
Alexander Udalov
fa29e75add Minor, move top level function to companion object
Package 'org.jetbrains.kotlin.idea.quickfix' already contains top level
functions in module 'idea-analysis' and top level functions in another module
cause compilation errors because of package facade class clash
2015-05-26 18:52:48 +03:00
Alexander Udalov
48b18f18d3 Restore explicit imports of Kotlin function types in Java
This is a follow-up to 738a84e259 and
d4965a4f3e. Optimize imports in all files
affected in those commits, drop temporary _.kt
2015-05-26 18:46:27 +03:00
Dmitry Jemerov
58e4ff0502 Add quickfixes for unnecessary casts and nullability operations to cleanup inspection. Rewrite two quickfixes from Java to Kotlin. Add inspection description. Use marker interface for identifying quickfixes applicable for code cleanup. 2015-05-26 14:41:23 +02:00
Dmitry Jemerov
e2dbfebf32 add more quickfixes to cleanup action 2015-05-26 14:41:21 +02:00
Dmitry Jemerov
6e7ea662c8 "Code Cleanup" action to migrate all instances of deprecated syntax to new one 2015-05-26 14:41:21 +02:00
Mikhail Glukhikh
4570872bfd Postfix expression code generation fixed as per KT-7561.
A set of tests for KT-7561 on codegen side, including exotic inc() functions().
 #KT-7561 Fixed.
2015-05-26 15:20:37 +03:00
Mikhail Glukhikh
5723c2a077 Front-end fix: result type corrected for increment / decrement expressions. Smart cast allowed on a postfix increment result. See KT-7561.
Now result type is receiver type for postfix increment, or increment result type for prefix increment.
A set of relevant tests.
2015-05-26 15:20:25 +03:00
Alexander Udalov
ea6d0b464d Report error when free function is called as extension 2015-05-26 15:05:04 +03:00
Svetlana Isakova
14c2690447 Distinguish between no declared arguments and an empty argument list
in a function literal
If there are no arguments, any number of them might be expected
2015-05-26 15:05:03 +03:00
Svetlana Isakova
d9568ef88c Added special type constructor for function/ extension function
that stores an information about declared argument types
2015-05-26 15:05:02 +03:00
Alexander Udalov
79ee91c048 Download and build intellij-markdown when ABI version changes 2015-05-26 15:05:02 +03:00
Alexander Udalov
9ba6d91e2e Prepare JVM runtime for support of reflection on functions
Introduce abstract class FunctionReference, which is supposed to be a
superclass for all anonymous classes generated for function references. Each
anonymous subclass will have statically-generated symbol info, which will be
used by reflection to locate the symbol
2015-05-26 15:05:01 +03:00
Alexander Udalov
9aeae7ddc6 Extract FunctionReferenceGenerationStrategy to top level 2015-05-26 15:05:00 +03:00
Alexander Udalov
d0bb06dbb0 Rename helper method in KotlinDebuggerTestBase
Now that functions and extension functions conform to each other, this method
began to conflict with the synthesized SAM-adapter from the super class (which
also can't be overridden by design)
2015-05-26 15:05:00 +03:00
Alexander Udalov
4d00077ffb Delete assertion on receiver presence in 'invoke'
#KT-6541 Fixed
 #KT-7383 Fixed
2015-05-26 15:04:59 +03:00
Alexander Udalov
34c6af0039 Advance stub and JVM ABI versions due to function type reform 2015-05-26 15:04:58 +03:00
Alexander Udalov
7f0b5029eb Refactor KotlinBuiltIns#isFunctionType/isExtensionFunctionType 2015-05-26 15:04:58 +03:00
Alexander Udalov
6a0a703539 Delete numbered ExtensionFunction classes and generation logic 2015-05-26 15:04:57 +03:00
Alexander Udalov
2186ce5e8d Degrade CFG test on values of extension function type
Apparently type annotations ('kotlin.extension' in particular) are lost
somewhere in control-flow values processor at the moment, so types may not be
as precise as they were when functions and extension functions had different
classifiers.

This test presumably only affects IDE functionality like 'Extract Method' in a
way that it will suggest a slightly incorrect function type for the parameter
of an extracted method. An issue is to be reported and fixed later upon demand
2015-05-26 15:04:56 +03:00
Alexander Udalov
49004a8b8e Conform functions to extension functions and vice versa
#KT-5989 Fixed
2015-05-26 15:04:56 +03:00
Alexander Udalov
b08bd3bc67 Update FunctionImpl hack in Evaluate Expression and test data
Lambdas now have an additional superclass besides FunctionImpl: Lambda, which
should also be changed to inherit from MagicAccessorImpl
2015-05-26 15:04:55 +03:00
Alexander Udalov
4141e0a8df Introduce fictitious numbered Function class descriptors 2015-05-26 15:04:54 +03:00
Alexander Udalov
27ed098467 Introduce kotlin.jvm.internal.Lambda, superclass for all lambdas
It has its arity precomputed, as opposed to the future KFunctionImpl inheriting
from FunctionImpl, for which the computation of arity can take some time and so
it shouldn't be passed in the constructor and saved as a field
2015-05-26 15:04:54 +03:00
Alexander Udalov
86ecb423f6 Drop generic parameters from FunctionImpl classes in JVM runtime
They are not used in any way but cause some complex code in JVM back-end
2015-05-26 15:04:53 +03:00
Alexander Udalov
135ee92966 Minor, don't pass constants as parameters 2015-05-26 15:04:52 +03:00
Alexander Udalov
d4965a4f3e Add temporary imports for disambiguation 2015-05-26 15:04:52 +03:00
Alexander Udalov
738a84e259 Temporary hack to migrate functions to package kotlin.jvm.functions
Add a file in package 'kotlin.jvm.functions' to the project and replace
explicit imports of functions 'kotlin.Function{n}' to two imports 'kotlin.*'
and 'kotlin.jvm.functions.*', so that the codebase can be compiled both by the
old and by the new compiler
2015-05-26 15:04:34 +03:00
Alexander Udalov
7baa7a72e2 Avoid extension functions in Java-facing code in project
This is to workaround the coming functions / extension functions global
refactoring and move
2015-05-26 14:27:42 +03:00
Alexander Udalov
b574c1d205 Move 23 function classes to package kotlin.jvm.functions, drop KFunction* 2015-05-26 14:27:41 +03:00
Alexander Udalov
f6178ad7dd Introduce Function, KFunction interfaces and 'extension' annotation 2015-05-26 14:27:40 +03:00
Alexander Udalov
90097d7e8b Move callable reference diagnostic tests to non-stdlib 2015-05-26 14:27:40 +03:00
Alexander Udalov
51684b3fe1 Drop "Reflection types not loaded" diagnostic
Reflection types are now considered to be built-in, so their absence means the
runtime is broken and the compiler can't work at all; this condition probably
should be handled on another level for all built-in types
2015-05-26 14:27:39 +03:00
Alexander Udalov
45c28abfee Keep built-in metadata for reflection interfaces
Reflection interfaces (interfaces in kotlin.reflect.* in core/builtins/) are
now fully considered as built-ins and can be accessed via KotlinBuiltIns. This
increases runtime size by ~20kb, but only because KotlinBuiltIns is static and
is therefore constructed only via resource loading from the compiler classpath
at the moment. As soon as it's possible to inject KotlinBuiltIns to the
particular resolution process, the metadata on JVM will be loaded via standard
annotation mechanism (kotlin.jvm.internal.KotlinClass/KotlinPackage) and wasted
runtime space will be reclaimed
2015-05-26 14:27:38 +03:00
Michael Nedzelsky
0879860074 AbstractQuickFixTest: fix possible test failure for tests with js-runtime 2015-05-26 12:56:25 +03:00
Michael Nedzelsky
f56bb4e9f4 add dependency on idea-js for idea and fix AbstractQuickFixTest 2015-05-26 05:05:08 +03:00
Michael Nedzelsky
533e4ac812 add dependency on idea-js to idea-test-framework and fix testUtils 2015-05-26 05:05:05 +03:00
Michael Nedzelsky
9f3154e6c0 add dependency on idea-js for idea-completion and fix AbstractJSBasicCompletionTest 2015-05-26 05:05:03 +03:00
Michael Nedzelsky
b558fd4181 add KotlinJavaScriptDecompiledTextConsistencyTest 2015-05-26 05:05:00 +03:00
Michael Nedzelsky
7978e0895e add KotlinJavaScriptStubConsistencyTest 2015-05-26 05:04:57 +03:00
Michael Nedzelsky
4a83de7ef3 tests: extract closeAndDeleteProject, move to testUtils 2015-05-26 05:04:54 +03:00
Michael Nedzelsky
1f744272f2 JS: add decompiled text generated tests 2015-05-26 05:04:52 +03:00
Michael Nedzelsky
c362db7330 tests for decompiled texts: AssertionError -> RuntimeException 2015-05-26 05:04:49 +03:00
Michael Nedzelsky
a0dc22b464 add TARGET_BACKEND: JVM to some decompiled tests 2015-05-26 05:04:44 +03:00
Michael Nedzelsky
79b81d846e fix and improve check for TARGET_BACKEND for generated tests 2015-05-26 05:04:41 +03:00
Michael Nedzelsky
f48a8d206a JdkAndMockLibraryProjectDescriptor: support for Kotlin/Javascript library 2015-05-26 05:04:39 +03:00
Michael Nedzelsky
fc916b22f8 MockLibraryUtil: add support for compile to js 2015-05-26 05:04:36 +03:00
Michael Nedzelsky
69c3f7b69a AllClassesCompletion: remove unnecessary code 2015-05-26 05:04:33 +03:00
Michael Nedzelsky
ac01dd6996 JsAnalyzerFacade: use only metadata from library modules 2015-05-26 05:04:30 +03:00
Michael Nedzelsky
484a73c17e JsHeaderLibraryDetectionUtil -> KotlinJavaScriptLibraryDetectionUtil
JsHeaderLibraryPresentationProvider -> KotlinJavaScriptLibraryPresentationProvider
2015-05-26 05:04:28 +03:00
Michael Nedzelsky
ebcc29b907 PluginDeclarationProviderFactoryService: remove special treatment for Kotlin/Javascript projects 2015-05-26 05:04:25 +03:00
Michael Nedzelsky
23da4f0897 JS: KotlinJavascriptMetaFileDecompiler -> KotlinJavaScriptMetaFileDecompiler 2015-05-26 05:04:23 +03:00
Michael Nedzelsky
a0579ebedd add KotlinJavaScriptStubBuilder 2015-05-26 05:04:20 +03:00
Michael Nedzelsky
ea9d7ed49a DecompiledTextFactory: new implementation of buildDecompiledTextFromJsMetadata 2015-05-26 05:04:17 +03:00
Michael Nedzelsky
18afa8f2d5 add KotlinJavaScriptDeserializeForDecompiler 2015-05-26 05:04:15 +03:00
Michael Nedzelsky
f1a0d86f87 JsMetaFileUtils: add some useful code, remove unnecessary parts 2015-05-26 05:04:12 +03:00
Michael Nedzelsky
4f26c7fe42 DecompiledNavigationUtils, JetSourceNavigationHelper: fix support for Kotlin/Javascript projects
DecompiledUtils: add isKotlinJavaScriptInternalCompiledFile
DecompiledUtils: add isKotlinJsMetaFile
DecompiledNavigationUtils: use isKotlinJvmCompiledFile, isKotlinJsMetaFile
DecompiledNavigationUtils: isFromKotlinJavascript -> isFromKotlinJavasriptMetadata
2015-05-26 05:04:09 +03:00
Michael Nedzelsky
f92d112564 DirectoryBasedClassFinder: add DirectoryBasedKotlinJavaScriptMetaFileFinder and DirectoryBasedKotlinJavaScriptDataFinder 2015-05-26 05:04:06 +03:00
Michael Nedzelsky
7a01ba7d7a JS: add jsProtoBufUtil 2015-05-26 05:04:04 +03:00
Michael Nedzelsky
c4c8f3c3ea convert IDEVirtualFileFinder to kotlin 2015-05-26 05:04:01 +03:00
Michael Nedzelsky
6e371e61a9 change extension: IDEVirtualFileFinder.java -> IDEVirtualFileFinder.kt 2015-05-26 05:03:57 +03:00
Michael Nedzelsky
d4f348edd5 VirtualFileFinder: regenerate injectors 2015-05-26 05:03:54 +03:00
Michael Nedzelsky
618a8622a1 VirtualFileFinderFactory: introduce JvmVirtualFileFinderFactory, JsVirtualFileFinderFactory 2015-05-26 05:03:51 +03:00
Michael Nedzelsky
de35434800 KotlinUpdatePluginComponent: update indices for Kotlin Javascript metafiles. 2015-05-26 05:03:48 +03:00
Michael Nedzelsky
3d641b17b4 add KotlinJavaScriptMetaFileIndex: support indexing for Kotlin Javascript meta files 2015-05-26 05:03:45 +03:00
Michael Nedzelsky
48e7c8cd60 convert KotlinClassFileIndex to kotlin 2015-05-26 05:03:42 +03:00
Michael Nedzelsky
38674dd3a1 convert KotlinClassFileIndex to kotlin: change extension: KotlinClassFileIndex.java -> KotlinClassFileIndex.kt 2015-05-26 05:03:40 +03:00
Michael Nedzelsky
85e84b8aef IDELightClassGenerationSupport: do not try to create stub for non java-class files 2015-05-26 05:03:37 +03:00
Michael Nedzelsky
0815eab3a5 add KotlinJavaScriptMetaFileType 2015-05-26 05:03:34 +03:00
Michael Nedzelsky
0a6c6e35b5 JS: JpsJsModuleUtils: do not include urls with kotlin-js-meta protocol 2015-05-26 05:03:31 +03:00
Michael Nedzelsky
4a05005fa7 JS: do not include sources in kotlin-jslib.jar 2015-05-26 05:03:28 +03:00
Michael Nedzelsky
044497fab6 JS: add idea-js module: KotlinJavaScriptLibraryManager and KotlinJavaScriptLibraryContentsTreeStructureProvider 2015-05-26 05:03:25 +03:00
Michael Nedzelsky
06af6bbd82 JS: KotlinJavascriptSerializationUtil, KotlinJavascriptSerializedResourcePaths: add some useful functions 2015-05-26 05:03:14 +03:00
Ilya Gorbunov
1cf4a407d1 JS: Provide MIN_VALUE and MAX_VALUE member constants for Double and Float companion objects.
JVM: Make MIN_VALUE and MAX_VALUE not an extension but member constant properties of Double and Float companion objects.
2015-05-26 00:26:19 +03:00
Alexey Tsvetkov
bd934bc3c4 Minor in JS: fixed typo in file name (abstarct->abstract) 2015-05-25 20:20:26 +03:00
Alexey Tsvetkov
fc1a1f742b JS test: added multi-module inline tests 2015-05-25 20:20:25 +03:00
Alexey Tsvetkov
115798f584 JS test: check directives in MultipleModulesTranslationTest 2015-05-25 20:20:25 +03:00
Alexey Tsvetkov
f214c4eac7 JS test: use common dependencies.txt for MultipleModulesTranslationTest 2015-05-25 20:20:25 +03:00
Alexey Tsvetkov
08df655dcc JS: simplify load metadata 2015-05-25 20:20:25 +03:00
Alexey Tsvetkov
b2238c0ebf JS: search inline function in .js file corresponding to module's
.meta.js
2015-05-25 20:20:25 +03:00
Evgeny Gerashchenko
0488229a61 KT-7693 Unused constructor parameter is not detected if class is constructed with named argument
#KT-7693 fixed
2015-05-25 18:33:08 +03:00
Mikhail Glukhikh
3c7225e83a An implementation of KT-7753: now enum constructors cannot be called explicitly.
Several tests are provided.
 #KT-7753 Fixed.
2015-05-25 17:27:31 +03:00
Michael Bogdanov
8cf21f24cd Fix for KT-7792: Invalid class file generation: java.lang.ClassFormatError: Invalid length 65522 in LocalVariableTable in class file
#KT-7792 Fixed
2015-05-25 17:06:18 +03:00
Natalia Ukhorskaya
37c47ac980 Show notification for "Non configured Kotlin Project" only after indexing 2015-05-25 16:19:05 +03:00
Natalia Ukhorskaya
a47a27565b JetPositionManager: do not calculate class name during indexing 2015-05-25 16:19:04 +03:00
Natalia Ukhorskaya
1cfed000c4 Fix exception during step into inline function in library 2015-05-25 16:19:03 +03:00
Natalia Ukhorskaya
2538ebe407 Tests: add ability to write custom stepping tests 2015-05-25 16:19:02 +03:00
Natalia Ukhorskaya
403ca00a63 Fix exception: for inline functions in stdlib we calculate classname by declaration 2015-05-25 16:19:01 +03:00
Natalia Ukhorskaya
5d9daf3890 Refactor stepping tests 2015-05-25 16:19:00 +03:00
Natalia Ukhorskaya
cf163181f1 Minor: report exception with stackTrace 2015-05-25 16:18:58 +03:00
Sergey Mashkov
fe26bd22f0 JS stubs: add URL specification 2015-05-25 14:55:47 +03:00
Mikhail Glukhikh
f4977a1108 Reorganization of when checking: exhaustion predicates clarified, analysis on platform enum warnings was moved to frontend.java 2015-05-25 14:23:57 +03:00
Pavel V. Talanov
e4c242e66b Remove direct usages of ModuleDescriptor#getPackageFragmentProvider() 2015-05-25 13:00:16 +03:00
Pavel V. Talanov
23dabf595a J2k for PackageViewDescriptorImpl: prettify 2015-05-25 13:00:15 +03:00
Pavel V. Talanov
3bca284e1b J2k for PackageViewDescriptorImpl: autoconvert 2015-05-25 13:00:15 +03:00
Pavel V. Talanov
5ff4765e3d J2k for PackageViewDescriptorImpl: rename file 2015-05-25 13:00:14 +03:00
Sergey Mashkov
07a3233569 JS stubs: add CSSOM view specification and GEOMETRY spec 2015-05-25 12:36:42 +03:00
Ilya Gorbunov
4fd1b46e91 Refactor JS tests: unified package name, test JS specific map implementations only in JS.
Add required files to build StdLibTestToJSTest.
Remove tests StdLibMapJsTest and StdLibSetJsTest because they are tested elsewhere.
2015-05-24 05:07:01 +03:00
Ilya Gorbunov
c95ba4da8e Tests for specialized primitive implementations of sets and maps in JS. 2015-05-24 05:06:51 +03:00
Ilya Gorbunov
4d3855a8fb Implement missing members for sets, maps and entry of map.
hashCode and toString for PrimitiveHashMap, hashCode for PrimitiveHashSet.
2015-05-24 05:06:24 +03:00
Ilya Gorbunov
df6d4dc73f Implement some of missing AbstractList methods.
Make ListIterator to implement kotlin.ListIterator interface.
Add TODOs and UnsupportedOperationExceptions for members left to implement.
2015-05-24 05:04:06 +03:00
Ilya Gorbunov
e31cb19a2c Expected output of test changed after introducing new overload of listOf. 2015-05-24 05:03:56 +03:00
Ilya Gorbunov
ebe578dbc5 Tests to ensure the behavior of the specialized empty List, Set, Map implementations is same as of non-specialized ones. 2015-05-24 05:03:46 +03:00
Ilya Gorbunov
edc471c8ec Optimize the implementation of emptyList, emptySet and emptyMap and make them serializable.
Specialized implementations of singleton List, Set and Map are used in JVM.

#KT-6682 Fixed
#KT-7104 Fixed
#KT-4840 Fixed
2015-05-24 05:03:36 +03:00
Alexey Sedunov
b7277cd80c Find Usages: Use isEquivalentTo() instead of identity equality when matching references with PsiCompiledElement 2015-05-22 20:51:28 +03:00
Alexey Sedunov
b2201026d1 Java Resolver: Substitute original element when resolving PsiMethod to FunctionDescriptor
#KT-7353 Fixed
2015-05-22 20:51:25 +03:00
Mikhail Glukhikh
babb7e58bc Implementation of KT-6399: platform types under when are now counted as not nullable but warning is generated. #KT-6399 Fixed.
A set of tests. Warning about Java enum nullable argument under when in particular situations.
2015-05-22 18:38:30 +03:00
Ilya Gorbunov
0efaedd32c Rename files to avoid having identically named files in the same package, which sometimes may confuse debugger. 2015-05-22 18:08:28 +03:00
Evgeny Gerashchenko
a5da64bd4f Don't ask user to choose method for renaming parameter when it is changed in overridden function. 2015-05-22 17:18:09 +03:00
Evgeny Gerashchenko
24c533df32 KT-6285 Rename refactoring doesn't rename named arguments when rename function parameters or private val/var constructor parameters
Just added test. Works automatically since rename parameter now delegates to change signature.

 #KT-6285 fixed
2015-05-22 17:18:08 +03:00
Evgeny Gerashchenko
2568fc92cb Supported Kotlin in Java's automatic parameter renamer. 2015-05-22 17:18:07 +03:00
Evgeny Gerashchenko
1e46469bb1 Automatic renaming parameter in hierarchy. 2015-05-22 17:18:06 +03:00
Ilya Gorbunov
33f5158170 Fix deprecated replaceAll and replaceFirst usages in stdlib tests and tools. 2015-05-22 16:13:55 +03:00
Ilya Gorbunov
79a5e0607d Fix deprecated replaceAll and replaceFirst usages. 2015-05-22 16:13:53 +03:00
Ilya Gorbunov
36fb5b3c49 Use platform independent way to split output to lines. 2015-05-22 16:12:07 +03:00
Evgeny Gerashchenko
9b28609d57 Optimized matchesTarget for "(" references 2015-05-22 14:33:11 +03:00
Evgeny Gerashchenko
e50de5d94d KT-7730 Find Usages causes 100% CPU usage, UI blocked, never returned
KT-7623 Renaming val constructor parameter of a data class is very slow

 #KT-7730 fixed
 #KT-7730 fixed
2015-05-22 14:33:11 +03:00
Mikhail Glukhikh
d8745b3ecb Solution for EA-65195. #EA-65195 Fixed. 2015-05-22 13:38:36 +03:00
Natalia Ukhorskaya
52fe6310a0 Fix breakpoints in inline functions in libraries 2015-05-22 11:05:06 +03:00
Ilya Gorbunov
6516c74a1a Revert back 2nd stage of split semantics change and restore deprecated String.split(String). 2015-05-21 23:13:16 +03:00
Alexey Sedunov
b1f1360081 PSI: Make JetPostfixExpression.getBaseExpression() nullable
#KT-7761 Fixed
2015-05-21 19:29:49 +03:00
Alexey Sedunov
14d1d8e1dc Inspections: Create single diagnostic for inspections based on multiple intentions
#KT-7784 Fixed
2015-05-21 19:29:47 +03:00
Alexey Sedunov
5166cdbc96 Introduce...: Allow semicolon extraction
#KT-7583 Fixed
2015-05-21 19:29:46 +03:00
Alexey Sedunov
64892e7d28 Minor: Fix inconsistent naming of menu items under "Refactor > Extract"
#KT-7609 Fixed
2015-05-21 19:29:44 +03:00
Natalia Ukhorskaya
1b6475c676 LibraryClassFileSearcher: minor, do not search top level functions in package inner classes 2015-05-21 19:17:37 +03:00
Natalia Ukhorskaya
0b91ab141e FieldWatchpoints: UI for adding kotlin field watchpoint 2015-05-21 19:17:36 +03:00
Natalia Ukhorskaya
2b015ae09a Debugger: support field watchpoints for kotlin 2015-05-21 19:17:35 +03:00
Natalia Ukhorskaya
7406627e26 Minor: optimise search in LibraryClassFileSearcher 2015-05-21 19:17:33 +03:00
Natalia Ukhorskaya
95b9c05138 Tests for step out command 2015-05-21 19:17:32 +03:00
Natalia Ukhorskaya
5edc25d2ba Debugger: step into default property getter/setter
#KT-7287 Fixed
2015-05-21 19:17:31 +03:00
Natalia Ukhorskaya
f742188df9 Minor: do not use property in twoLambdasOnOneLineSecond test 2015-05-21 19:17:30 +03:00
Ilya Gorbunov
fb342de451 Ensure stable order is used when rendering list of resolved calls by sorting them with MemberComparator. 2015-05-21 19:07:19 +03:00
Zalim Bashorov
4de3e3c712 Fix SlicedMapImpl#clear 2015-05-21 18:53:57 +03:00
Zalim Bashorov
d8b1856e1c Create SlicedMapImpl#collectiveSliceKeys on demand 2015-05-21 18:53:56 +03:00
Zalim Bashorov
492404bf04 Introduce KeyWithSlice and use it as Key for UserDataHolder in SlicedMap instead of cashing mapping from key to slice(see SlicedMapImpl#keyIdToSlice) 2015-05-21 18:53:56 +03:00
Zalim Bashorov
ecb824386e Optimize memory usage in SlicedMapImpl (used in BindingContext)
In short:
before these changes: Map<SlicedMapKey<slice, key>, value>
after: Map<key, Map<slice, value>> // where for nested Map used lightweight storage UserDataHolder

Before these changes it stored map from SlicedMapKey to value.
Where SlicedMapKey created for each record and store slice and key.
And now it sored map from key to UserDataHolder.
UserDataHolder store map from slice to value.
2015-05-21 18:53:56 +03:00
Zalim Bashorov
c7175e1858 Temporary copy UserDataHolderBase and KeyFMap implementations from intellij/master 2015-05-21 18:53:56 +03:00
Yan Zhulanow
89d3a4b623 Move AnnotationProcessingManager to main kotlin-gradle-plugin 2015-05-21 15:48:30 +03:00
Yan Zhulanow
6de79f46e4 More kotlin-annotation-processing parsing tests 2015-05-21 15:48:29 +03:00
Yan Zhulanow
07214c4f35 Platform-agnostic text compare in kotlin-annotation-processing 2015-05-21 15:48:27 +03:00
Yan Zhulanow
692e396ffd Support constructors in kapt wrapper 2015-05-21 15:48:26 +03:00
Yan Zhulanow
569582fd34 kapt: Add constructor collectToFile test 2015-05-21 15:48:26 +03:00
Yan Zhulanow
62a1f8edf3 Rename kotlinApt/ directories to kapt/ 2015-05-21 15:48:25 +03:00
Yan Zhulanow
c414c598ca Minor: fixes in KotlinAnnotationProvider (APT wrapper) 2015-05-21 15:48:24 +03:00
Yan Zhulanow
d2e256f470 Output annotation processor fqName if the processor can't be initialized 2015-05-21 15:48:24 +03:00
Yan Zhulanow
0363b6b911 Warn if the generated source destination (for APT) was modified 2015-05-21 15:48:23 +03:00
Yan Zhulanow
7a2f3bf1ea Replace all dollar signs in class name with . (temporary workaround) 2015-05-21 15:48:22 +03:00
Yan Zhulanow
b9a9f783e9 Fix annotation collector tests (now using mock JDK) 2015-05-21 15:48:22 +03:00
Yan Zhulanow
921017367a APT: Add more compiler plugin tests 2015-05-21 15:48:21 +03:00
Yan Zhulanow
594988db51 Move kapt compiler plugin classes to BundledCompilerPlugins 2015-05-21 15:48:20 +03:00
Yan Zhulanow
01a097dae7 Annotations file name change: annotations.txt -> annotations.kotlin.txt 2015-05-21 15:48:20 +03:00
Yan Zhulanow
fdc183e3af Apt working dir is now outside the Kotlin classes directory 2015-05-21 15:48:19 +03:00
Yan Zhulanow
d93508f4d3 APT: Support non-Android Java projects in Gradle 2015-05-21 15:48:18 +03:00
Yan Zhulanow
80762f99bb Catch UnknownPropertyException properly 2015-05-21 15:48:17 +03:00
Yan Zhulanow
297f2d0669 Add annotation file parse tests in AP wrapper 2015-05-21 15:48:16 +03:00
Yan Zhulanow
803bfd6097 Add kotlin-annotation-processing dependency automatically in kotlinApt configurations 2015-05-21 15:48:15 +03:00
Yan Zhulanow
964e57a8f8 Add annotation processor wrapper as a Maven artifact 2015-05-21 15:48:14 +03:00
Yan Zhulanow
c6e11949b8 Support Android source sets in annotation processing 2015-05-21 15:48:11 +03:00
Yan Zhulanow
905eb01044 Annotation processor wrapper fqName changed 2015-05-21 15:48:10 +03:00
Yan Zhulanow
3e5b24f2a2 Add output dir for generated sources 2015-05-21 15:48:09 +03:00
Yan Zhulanow
ee8f2bbd75 Generate custom annotation class file 2015-05-21 15:48:09 +03:00
Yan Zhulanow
1dd96a3f23 Move APT-related functions to AnnotationProcessingManager 2015-05-21 15:48:08 +03:00
Yan Zhulanow
d9289df29e Basic annotation collector tests 2015-05-21 15:48:07 +03:00
Yan Zhulanow
f12531dd6d Initial annotation processing support in Gradle 2015-05-21 15:48:07 +03:00
Yan Zhulanow
b2220ca98a Annotation collector compiler plugin 2015-05-21 15:48:06 +03:00
Mikhail Glukhikh
c8aa6defb6 Data flow information is no longer dropped while analyzing object literal expression. #KT-6293 Fixed. #KT-7110 Fixed.
A set of tests for KT-6293 / KT-7110 provided.
2015-05-21 13:03:39 +03:00
Michael Bogdanov
5bca1d3c8f Added dianostic error for non-local return on disabled inlines,
Render bytecode diagnostics in BytecodeToolWindow

  #KT-5584 Fixed
2015-05-21 10:06:03 +03:00
Michael Bogdanov
ef4981b0ef Report error on indirect inline cycles 2015-05-21 10:06:02 +03:00
Michael Bogdanov
a671d684c9 Test for obsolete KT-5199: IllegalArgumentException with non local return in lambda
#KT-5199 Obsolete
2015-05-21 10:06:02 +03:00
Michael Bogdanov
4abaa54d0e Test for obsolete KT-4869: Report error when inline parameter is passed to a function variable
#KT-4869 Obsolete
2015-05-21 10:06:01 +03:00
Michael Bogdanov
319c5aec60 Fix for KT-7557: NoSuchMethodError when capturing receiver in object expression
#KT-7557 Fixed
   #KT-7769 Fixed
2015-05-21 10:06:01 +03:00
Michael Nedzelsky
34100fff99 fix maven tests: NoInternalVisibilityInStdLibTest.kt 2015-05-21 02:46:44 +03:00
Michael Nedzelsky
bfc641caba JS: fix tests for -meta-info 2015-05-21 02:30:57 +03:00
Michael Nedzelsky
d629271510 JS: make -meta-info cli option boolean 2015-05-21 02:30:54 +03:00
Michael Nedzelsky
572ce47c25 add tests for serializaion of nested classes and objects (builtins and js) 2015-05-21 02:30:38 +03:00
Michael Nedzelsky
6b64dcc4ee JvmProtoBuf: reuse one instance of ExtensionRegistryLite 2015-05-21 02:30:35 +03:00
Michael Nedzelsky
ea8234adb9 convert JvmProtoBufUtil.java to kotlin, step 2: convert content 2015-05-21 02:30:32 +03:00
Michael Nedzelsky
2a6cd3dd96 convert JvmProtoBufUtil.java to kotlin, step 1: rename extentsion 2015-05-21 02:30:27 +03:00
Pavel V. Talanov
cfdb1f4ec3 Refactor creation of ModuleDescriptor
Add storageManager to ModuleDescriptorImpl (to be used later)
Extract ModuleParameters to hold default imports and platform class map
Introduce MutableModuleContext to simplify module creation code
2015-05-20 19:45:50 +03:00
Ilya Gorbunov
6a3cb0eff8 Provide distinctBy(keySelector) method for collections and sequences.
Implement distinct() and toMutableSet() for sequences.
Breaking change: distinct() now returns List instead of Set.

#KT-5834 Fixed
#KT-6063 Fixed
2015-05-20 19:28:47 +03:00
Ilya Gorbunov
46d91b2606 Add test for toMap with key selector and value transform. 2015-05-20 19:28:45 +03:00
Ilya Gorbunov
85e637b1e7 Revert toArrayList for primitive arrays back to trivial implementation.
Use newly introduced Int.MAX_VALUE in JS.
Inline mapCapacityForValues function.
Precalculate capacity of linked hash set being created with toMutableSet function.
2015-05-20 19:28:44 +03:00
Danny Thomas
7ce0487b7e Collection performance improvements
Lists

- For arrays, use Arrays.asList, then toArrayList making the list creation an array copy
- For the same reason, use the ArrayList(Collection) constructor
- Replace duplicate code in toList, instead calling toArrayList

Maps/Sets

- Where the size of the source is known, precalculate the capacity, using the formula used by Guava's Maps class
- For toMap where we're unable to get at the private function, use HashSet's formula where the size is known
- Add a toMap that takes a selector and a transform, avoiding a separate step for transforming values
2015-05-20 19:27:44 +03:00
Svetlana Isakova
0e6babc96b Converted IdeRenderers to kotlin 2015-05-20 15:19:31 +02:00
Svetlana Isakova
61df8c55e4 Rename IdeRenderers to kt file 2015-05-20 15:19:31 +02:00
Evgeny Gerashchenko
7dbc08f048 Moved util function to util package. Also to avoid top-level functions in same package of different targets. 2015-05-20 15:48:07 +03:00
Valentin Kipyatkov
ce4fa6b0f1 KT-4774 Hotkey conflict for "select all occurrences" and "convert java file to kotlin file"
Changed shortcut to Ctrl-Alt-Shift-K

 #KT-4774 Fixed
2015-05-20 14:01:58 +03:00
Valentin Kipyatkov
d91ee03e9e KT-7178 Converter from Java drops the result when there is already a file with the same name
#KT-7178 Fixed
2015-05-20 14:01:58 +03:00
Valentin Kipyatkov
0b809453b5 Fixed KT-7682 Conversion from Java to Kotlin - converted file is not added automatically to VCS
#KT-7682 Fixed
2015-05-20 14:01:58 +03:00
Sergey Mashkov
4695aed993 Replace trait with interfaces in JavaScript stubs 2015-05-20 14:01:03 +03:00
Sergey Mashkov
9b24a9b73b Maven: fix test data for project configurator 2015-05-20 13:45:14 +03:00
Sergey Mashkov
f9ab08ed47 Maven: maven configurator shouldn't add resources directory to sources list
#KT-7781 Fixed
2015-05-20 13:45:13 +03:00
Sergey Mashkov
6c59a311fb Maven: Maven IDEA configurator also configures tests for JavaScript 2015-05-20 13:45:13 +03:00
Denis Zharkov
6df805d6f2 Refine diagnostics reported on implicit constructor delegation call
- Do not report anything else if primary's call expected

- Do not repeat EXPLICIT_DELEGATION_CALL_REQUIRED

 #KT-7230 Fixed
2015-05-20 09:24:57 +03:00
Denis Zharkov
87be626848 Add quickfix for deprecated labels syntax 2015-05-20 09:24:57 +03:00
Denis Zharkov
e98b9ea84e Save annotations of lambda on SAM's method
Also add tests checking that annotations on 'invoke' methods of common lambdas are saved properly

 #KT-6932 Fixed
2015-05-20 09:24:57 +03:00
Denis Zharkov
e078eaf15b Resolve annotations on lambda's descriptor
Also add test checking functional expression
2015-05-20 09:24:57 +03:00
Denis Zharkov
fd4946e552 Annotate $default-method with same annotations as original
#KT-6930 Fixed
2015-05-20 09:24:57 +03:00
Denis Zharkov
5b1f3080d3 Add quickfix removing names of function expressions 2015-05-20 09:24:57 +03:00
Denis Zharkov
b650753643 Change formatting of function expressions without names
No spaces between 'fun' and value parameter list
2015-05-20 09:24:56 +03:00
Denis Zharkov
2deb7faf05 Deprecate function expressions with names 2015-05-20 09:24:56 +03:00
Denis Zharkov
aa1548a83b Report obsolete labels syntax deprecation on objects
#KT-7771 Fixed
2015-05-20 09:24:56 +03:00
Denis Zharkov
5297b4974f Adjust descriptor renderer to latest parsing changes
- `constructor` keyword expected in primary constructor with non-empty modifier list
- annotation list should be preceeded by '@'
2015-05-20 09:24:56 +03:00
Denis Zharkov
dd14b36921 Prohibit unescaped annotations on primary constructor of local class 2015-05-20 09:24:56 +03:00
Denis Zharkov
89337ff51e Change deprecation rules for annotations in brackets
Also adjust quickfix for deprecated syntax
2015-05-20 09:24:56 +03:00
Denis Zharkov
e4f54b5d2e Parsing: support '@[ann1 ann2]', '@file:ann' and '@file:[ann]' cases 2015-05-20 09:24:56 +03:00
Denis Zharkov
f6aadec7e2 Minor, rename tests onFile -> onFileObsolete 2015-05-20 09:24:56 +03:00
Denis Zharkov
083966389a Minor, get rid of repeating parsing semantics 2015-05-20 09:24:55 +03:00
Denis Zharkov
1df08cfa6c Minor, drop redundant allowAtAnnotations option
As '@' annotations are allowed everywhere
2015-05-20 09:24:55 +03:00
Denis Zharkov
488464dd3b Minor, extract methods 2015-05-20 09:24:55 +03:00
Denis Zharkov
aa4a20dddc Add missing 'constructor' to testData when it was necessary 2015-05-20 09:24:55 +03:00
Denis Zharkov
a9c1c3edb6 Add quickfix for missing 'constructor' inside primary ctor 2015-05-20 09:24:55 +03:00
Denis Zharkov
a2578d0f46 Minor, move quickfixUtil.kt 2015-05-20 09:24:55 +03:00
Denis Zharkov
46a6cab671 Formatter: no spaces after 'constructor' inside primary ctor 2015-05-20 09:24:55 +03:00
Denis Zharkov
09cae59f0a Report warning on modifier list of primary ctor unless 'constructor' keyword specified 2015-05-20 09:24:54 +03:00
Denis Zharkov
805a811d91 Change parsing rules for primary constructor
- Parse 'constructor' keyword before value arguments
- Allow unescaped annotations
2015-05-20 09:24:54 +03:00
Denis Zharkov
d058a07ce2 Parsing: allow semicolon between declarations 2015-05-20 09:24:54 +03:00
Valentin Kipyatkov
7edff172a2 KT-1273 Unused assignment - should highlight assignment instead of expression
#KT-1273 Fixed
2015-05-19 23:45:59 +03:00
Alexander Udalov
189286efee Support platformStatic members in companion object of enums
#KT-7777 Fixed
2015-05-19 18:47:00 +03:00
Alexander Udalov
e1b367bd65 Delete test case for navigation to 'invoke' of functional type
Classes for functional types will not have any physical source representation
anymore, so navigation to them in the IDE will not be possible
2015-05-19 18:47:00 +03:00
Alexander Udalov
bc2398cf40 JS: disable test on inheritance from function types
This is not yet fully supported but this test is an obstacle for the function
type refactoring

 #KT-7692 Open
2015-05-19 18:46:59 +03:00
Alexander Udalov
7a1b3bfbed JS: serialize/deserialize type annotations similarly to JVM
No new tests added because there are some on extension functions, which soon
will depend on type annotations to be preserved to work correctly
2015-05-19 18:46:58 +03:00
Andrey Breslav
a2b1a86ef5 Rename packages in kotlin-reflect.jar so that they do not duplicate compiler classes 2015-05-19 17:15:02 +03:00
Andrey Breslav
100c1b2787 Proguard instruction extracted to a separate file 2015-05-19 17:15:02 +03:00
Andrey Breslav
f7a9cc6b28 Fix for EA-64905 - assert: TypeUtils.intersect 2015-05-19 17:15:02 +03:00
Mikhail Glukhikh
1389b62fa4 Enum entry delimiters / super constructors: a few remaining warnings removed 2015-05-19 17:07:47 +03:00
Pavel V. Talanov
5b14d5be28 ClsStubBuilder: fix stub builder in case of java types annotated with special annotations 2015-05-19 16:01:40 +03:00
Sergey Mashkov
09e7e0da4d JS: example library to use new library format 2015-05-19 15:51:38 +03:00
Sergey Mashkov
4ef745974e Maven: Fix build for Maven 3.0.5 2015-05-19 15:00:10 +03:00
Mikhail Glukhikh
1edce76d01 Fix for EA-68569 with a test. #EA-68569 Fixed 2015-05-19 13:55:28 +03:00
Nikolay Krasko
0108205367 Minor: log class of element in assert message 2015-05-19 13:04:57 +03:00
Nikolay Krasko
9c507ec9cb Use equality check when looking for java elements in IDE 2015-05-19 13:04:56 +03:00
Nikolay Krasko
edeea5e399 Refactoring: move JavaDescriptorResolver extensions to idea-analysis module 2015-05-19 13:04:55 +03:00
Nikolay Krasko
ea789845aa J2K: LazyTopDownAnalyzer - converter fixes 2015-05-19 13:04:54 +03:00
Nikolay Krasko
6caa1e644d J2K: LazyTopDownAnalyzer - converter 2015-05-19 13:04:54 +03:00
Nikolay Krasko
94386f35e3 J2K: LazyTopDownAnalyzer - rename file 2015-05-19 13:04:53 +03:00
Mikhail Glukhikh
3585c45f70 Fixed a quick fix for enum entry delimiters: situation with following comments. Three new tests. isAvailable(). 2015-05-19 11:22:57 +03:00
Mikhail Glukhikh
6342b98592 Fixed a quick fix for enum entry short super constructor syntax (situation with a preceding comment / annotation). Four extra tests. isAvailable(). 2015-05-19 11:22:34 +03:00
Natalia Ukhorskaya
62e9c31987 Do not step into package facade class if SKIP_SYNTHETIC_METHODS flag is true 2015-05-19 10:39:09 +03:00
Michael Bogdanov
0cb4b8f8d4 Fix outer info generation for scripts 2015-05-19 10:34:34 +03:00
Andrey Breslav
0426291bd7 Test data fixed 2015-05-19 06:26:11 +03:00
Alexey Sedunov
fa03e4e76c Move: Implement "Update package directive" option 2015-05-18 21:18:56 +03:00
Alexey Sedunov
d88e01e770 Convert to Kotlin: KotlinMoveFilesOrDirectoriesHandler.kt 2015-05-18 21:18:55 +03:00
Alexey Sedunov
e854da386d Convert to Kotlin: Rename KotlinMoveFilesOrDirectoriesHandler.java -> .kt 2015-05-18 21:18:54 +03:00
Alexey Sedunov
c34ba01513 Move: Place "Destination directory" panel under "To Package" option. Fix panel title. Add missing mnemonics 2015-05-18 21:18:54 +03:00
Alexey Sedunov
7bc5ec04c7 Move: Suggest deleting file when all declarations are moved 2015-05-18 21:18:53 +03:00
Alexey Sedunov
6c4b895f72 Move: Do not search/process usages if package is not changed 2015-05-18 21:18:52 +03:00
Alexey Sedunov
da6b8b75ea Move File/Change Package: Change package directive prior to processing of internal usages (otherwise some necessary imports are not added) 2015-05-18 21:18:51 +03:00
Alexey Sedunov
1a60995ea9 Move: Forbid refactoring if target file is the same as the original one 2015-05-18 21:18:50 +03:00
Alexey Sedunov
35bdf9c261 Minor: Code cleanup 2015-05-18 21:18:49 +03:00
Alexey Sedunov
38ae9349fc Move: Move entire file if all declarations are selected ("Move to Package" mode) 2015-05-18 21:18:48 +03:00
Alexey Sedunov
7cf7a14d9b Move: Warn about moving to the existing file in "Move to Package" mode 2015-05-18 21:18:47 +03:00
Alexey Sedunov
870c9c4668 Move: Allow the user to choose target file name when moving declarations to package 2015-05-18 21:18:47 +03:00
Alexey Sedunov
2bd21b0f37 Move: Allow moving several files represented by their top-level declarations in the Project View (provided there is only one declaration per file) 2015-05-18 21:18:46 +03:00
Alexey Sedunov
f08438c53c Move: Fix dialog layout (member selection panel should take as much space as possible)
#KT-7696 In Progress
2015-05-18 21:18:45 +03:00
Alexey Sedunov
d88d7a0ac5 Move: Do not use existing file name when moving its top-level declaration(s)
#KT-7697 Fixed
2015-05-18 21:18:44 +03:00
Sergey Mashkov
72238c4d39 Maven: maven annotations is required in compile time in some cases 2015-05-18 19:59:55 +03:00
Mikhail Glukhikh
0d7f649cc2 Implementation of exhaustive whens in control flow analysis.
Now control flow analyzer knows when is exhaustive.
If despite of this all conditions are accidentally false, jump to error is generated.
A set of tests (diagnostic, control flow). #KT-5113 Fixed. #KT-6046 Fixed. #KT-1882 Fixed.
2015-05-18 19:44:29 +03:00
Mikhail Glukhikh
c4aa6d01a9 Exhaustive when on boolean argument. A set of tests.
Compile-time constants are taken into account. #KT-3743 Fixed.
2015-05-18 19:44:22 +03:00
Mikhail Glukhikh
633b252ff5 Unnecessary comment removed 2015-05-18 19:43:02 +03:00
Sergey Mashkov
42662d7349 JS: example project to produce full artifacts set: production+test sources jar, production+test binary jar 2015-05-18 19:36:19 +03:00
Sergey Mashkov
d04ec74217 Maven: use maven-annotations in kotlin-maven-plugin 2015-05-18 19:36:19 +03:00
Sergey Mashkov
35ed682714 Maven: Introduce test-js goal
#KT-7757 Fixed Maven K2JS should be able to build tests too
2015-05-18 19:36:18 +03:00
Sergey Mashkov
b25ae3d7dd JS stdlib-gen shouldn't call outdated codegen 2015-05-18 19:35:48 +03:00
Sergey Mashkov
606ea7bb70 Do not pass non-existing source roots to the compiler
#KT-3679 Fixed Maven build fails when some source directories don't exist
2015-05-18 19:27:35 +03:00
Sergey Mashkov
0578f44fd0 Maven: don't scan target directories for annotations in multimodule project
#KT-7187 Fixed Maven K2JVM compiler scanning for annotations
2015-05-18 19:27:35 +03:00
Andrey Breslav
df6c20efa4 KT-7689 Wrong error message format for type of ... doesn't match to the type of overridden var-property
#KT-7689 Fixed
2015-05-18 19:26:29 +03:00
Mikhail Glukhikh
fdf0ea5546 Enum warnings fixed: deprecated delimiters, short super constructors, both in project and in libraries 2015-05-18 16:08:16 +03:00
Pavel V. Talanov
5c3d8c1616 Update api usages in NoInternalVisibilityInStdLibTest
Broken by 01efbb1502
2015-05-18 16:01:31 +03:00
Michael Bogdanov
58183731f5 Test for obsolete KT-5448: VerifyError with mismatched stack types
#KT-5448 Obsolete
2015-05-18 15:28:58 +03:00
Michael Bogdanov
5cb9671803 Support inlining in scripts and outer expression capturing
#KT-7744 Fixed
2015-05-18 14:47:57 +03:00
Michael Bogdanov
226350b4ba Test data fixed: replace trait with interface 2015-05-18 11:57:39 +03:00
Pavel V. Talanov
119ffd2347 Minor: replace obsolete trait keyword in newly added test 2015-05-17 18:24:50 +03:00
Pavel V. Talanov
268d43d14a Change ModuleContext#module type to ModuleDescriptor instead of ModuleDescriptorImpl 2015-05-17 18:24:50 +03:00
Pavel V. Talanov
01efbb1502 Introduce ModuleContext, ProjectContext and use it some of the APIs 2015-05-17 18:24:49 +03:00
Pavel V. Talanov
9d22a39924 Refactor: TopDownAnalysisParameters -> TopDownAnalysisMode
No longer implements TypeLazinessToken (was unused)
2015-05-17 18:24:49 +03:00
Pavel V. Talanov
d9c70b5927 Drop TopDownAnalysisParameters#isAnalyzingBootstrapLibrary() 2015-05-17 18:24:48 +03:00
Pavel V. Talanov
f9b6c25498 Refactor: TopDownAnalysisParameters doesn't implement GlobalContext 2015-05-17 18:24:47 +03:00
Ilya Gorbunov
f18b9caa8d JS: Provide MIN_VALUE and MAX_VALUE member constants for Int, Long, Short and Byte companion objects.
JVM: Make MIN_VALUE and MAX_VALUE not an extension but member constant properties of Int, Long, Short and Byte companion objects.
2015-05-17 17:26:25 +03:00
Valentin Kipyatkov
c4b881c458 Fixed test data 2015-05-17 12:32:11 +03:00
Valentin Kipyatkov
617fe9b49d No duplicate "Expecting ')'" when parsing accessor 2015-05-16 17:15:16 +03:00
Valentin Kipyatkov
00fbf41bd8 More correct recovery after '.' in user type 2015-05-16 17:15:15 +03:00
Valentin Kipyatkov
e4cf12f93e Corrected test data to not use obsolete syntax 2015-05-16 17:15:15 +03:00
Valentin Kipyatkov
a05ffafc84 Added a test 2015-05-16 17:15:14 +03:00
Valentin Kipyatkov
c94dc6d5f7 Better parsing of block after missing "->" after "else" in when 2015-05-16 17:15:14 +03:00
Valentin Kipyatkov
56c3f7b7db Minor code corrections on code review 2015-05-16 17:15:13 +03:00
Valentin Kipyatkov
cdf6229fff KT-7486 Auto import inserts qualified name in companion object
#KT-7486 Fixed
2015-05-16 17:15:13 +03:00
Valentin Kipyatkov
60b0236101 Corrected parser: incomplete code should never cause brace disbalance
Fixed KT-7539 fq name inserted when completing nested traits name

 #KT-7539
2015-05-16 17:15:12 +03:00
Valentin Kipyatkov
c8b1dd6425 Minor code refactoring 2015-05-16 17:15:12 +03:00
Valentin Kipyatkov
7641c3cb84 Moved classes into separate files 2015-05-16 17:15:11 +03:00
Valentin Kipyatkov
858adfb2db KT-7731 Completion: replacement of call with no parameters with property by Tab
#KT-7731 Fixed
2015-05-16 17:15:11 +03:00
Valentin Kipyatkov
8ea0441348 KT-7349 Replace keyword "companion" in completion with "companion object" 2015-05-16 17:15:10 +03:00
Valentin Kipyatkov
db40f1ee5a More reliable testing of keyword completion (introduced directive "NOTHING_ELSE" instead of "NUMBER") 2015-05-16 17:15:10 +03:00
Valentin Kipyatkov
5807d03a52 Keyword completion: "reified" keyword is now supported 2015-05-16 17:15:09 +03:00
Valentin Kipyatkov
5ecf33c88e KT-6330 When completion for boolean method/property is finished by typing '!' symbol it should insert selected item with negation
#KT-6330 Fixed
2015-05-16 17:15:09 +03:00
Valentin Kipyatkov
892b2b0f83 KT-7195 Smart completion after "return ": the function itself should get smaller priority + declarations in the same file to have higher priority than default-imported
#KT-7195 Fixed
2015-05-16 17:15:08 +03:00
Valentin Kipyatkov
09f478fc0f Fixed duplication of some generic functions in code completion 2015-05-16 17:15:08 +03:00
Valentin Kipyatkov
ce3492f270 KT-6393 Smart completion of anonymous object inserts type with "!" for type parameter
#KT-6393 Fixed
2015-05-16 17:09:51 +03:00
Valentin Kipyatkov
833d474876 Smart completion when only named argument possible 2015-05-16 17:09:51 +03:00
Valentin Kipyatkov
67cfd9d516 KT-4909 Smart completion does not work for named arguments
KT-7668 Named argument completion does not work after vararg

 #KT-4909 Fixed
 #KT-7668 Fixed
2015-05-16 17:09:51 +03:00
Valentin Kipyatkov
58ac497bd7 KT-5041 Smart completion for last argument lambda outside parenthesis
#KT-5041 Fixed
2015-05-16 17:09:51 +03:00
Valentin Kipyatkov
023c5eabf4 KT-6780 Completion inserts incorrect comma in end of parameter list when lambda parameter exists
#KT-6780 Fixed
2015-05-16 17:09:51 +03:00
Valentin Kipyatkov
a036a6435b Fixed not working item in completion list for infix call 2015-05-16 17:09:51 +03:00
Valentin Kipyatkov
2adf0a3e9a KT-4908 Smart completion does not work for arguments of function with vararg
#KT-4908 Fixed
2015-05-16 17:09:50 +03:00
Valentin Kipyatkov
4c315b6219 KT-7452 Code completion does not honor smart casts for 'this'
#KT-7452 Fixed
2015-05-16 17:09:50 +03:00
Dmitry Jemerov
dc9523016a report 'trait' keyword as deprecated, provide quickfix for replacing with 'interface' 2015-05-15 18:20:39 +02:00
Michael Nedzelsky
3dce96e01c JS: add tests for two libraries and js-file with two modules 2015-05-15 18:50:01 +03:00
Michael Bogdanov
5daf79d2de Tests for obsolete KT-5232: vfy error with default parameter in method of trait
#KT-5232 Obsolete
2015-05-15 18:06:52 +03:00
Michael Bogdanov
f1eb68c55a Test for obsolete KT-3579: UsupportedOperationException while trying to compile recursive trait
#KT-3579 Obsolete
2015-05-15 18:06:52 +03:00
Michael Bogdanov
eb8d2d695c Test for non-general case of KT-4174 2015-05-15 18:06:51 +03:00
Michael Bogdanov
576ead2afe Test for obsolete KT-3698: Static fields of primitive types and String must be compile-time constants
#KT-3698 Obsolete
2015-05-15 18:06:51 +03:00
Mikhail Glukhikh
4e1a90ee61 Diagnostics for incorrect enum members order, when enum entry follows enum member. A few diagnostic tests.
Now incorrect enum members order is treated as a warning.
2015-05-15 16:13:46 +03:00
Mikhail Glukhikh
983339e1c9 Detection of semicolon between enum entries together with the correct delimiter quick fix for this case.
Error message reported directly on semicolon.
2015-05-15 16:13:41 +03:00
Mikhail Glukhikh
edd269f5ff Quick fix for enum entry delimiter syntax fix, together with a set of tests.
Possible NPE in getNextSiblingIgnoringWhitespace fixed. Some warnings also removed.
Last comma is replaced by semicolon. Comments are taken into account.
2015-05-15 16:13:39 +03:00
Mikhail Glukhikh
da3d083dc0 Quick fix for enum entry super constructor syntax fix, together with a set of tests 2015-05-15 16:13:36 +03:00
Mikhail Glukhikh
147bca3d22 Enum deprecated syntax detection implemented and integrated into DeclarationsChecker.
A lot of tests was changed to refactor deprecated syntax. Six new tests were added to check deprecated syntax detection.
Diagnostic for "enum entry uses deprecated super constructor": constructor is highlighted
Diagnostic for "enum entry uses deprecated or no delimiter".
One warning removed.
2015-05-15 16:13:34 +03:00
Mikhail Glukhikh
1a312140e9 New enum syntax: Short constructor syntax introduced for entries, optional commas between entries, semicolon after entries. #KT-7605 Fixed.
Grammar changed accordingly.
Semicolons prohibited after an entry except the last one.
Only one initializer is allowed per entry.
EnumReferenceExpression AST node introduced.
Some tests fixed, a pair of new tests written. Kotlin code inside project fixed.
Formatter and intendation tests fixed accordingly.
Stub version is incremented.
2015-05-15 16:13:32 +03:00
Mikhail Glukhikh
67cce57aeb Decompiler & stub builder fixed accordingly with new enum syntax.
Companion object now directly follows enum entries to avoid having them at the middle.
Some decompiler & stub builder tests fixed accordingly.
2015-05-15 16:13:29 +03:00
Mikhail Glukhikh
cf741cb868 Enum parsing changed: first entries, then members. Grammar fixed accordingly.
A set of compiler tests and some plugin tests changed accordingly.
Compiler Kotlin code changed accordingly.
2015-05-15 16:13:27 +03:00
Mikhail Glukhikh
7a4dee44b8 Final decision about enum new syntax (specification) 2015-05-15 16:13:25 +03:00
Andrey Breslav
629513e532 Options for new syntax 2015-05-15 16:13:23 +03:00
Andrey Breslav
457aa24f27 Create enums.md 2015-05-15 16:13:21 +03:00
Nikolay Krasko
6b64ae77f3 Test light classes from sources have priority over decompiled light classes 2015-05-15 15:29:31 +03:00
Nikolay Krasko
04cb2bc66f Update to 141.1010.3 2015-05-15 15:29:30 +03:00
Natalia Ukhorskaya
b6e885ba84 Minor: rename 2015-05-15 13:22:50 +03:00
Natalia Ukhorskaya
b9a45172c8 refactoring: do not create dialog in ChangeSignatureTests 2015-05-15 13:09:17 +03:00
Ilya Gorbunov
1fc5c39c22 Remove overload of joinToString with 5 parameters and it's usage from java code. 2015-05-15 03:02:48 +03:00
Ilya Gorbunov
7ffc1e13d9 Char.isLetter and Char.isLetterOrDigit (JVM). 2015-05-15 03:02:33 +03:00
Ilya Gorbunov
7721efad8a Restore isNotEmpty and isNotBlank methods for non-nullable String receiver.
#KT-7234 Fixed
2015-05-15 02:59:22 +03:00
Sergey Mashkov
771af78b06 JS fix gradle example 2015-05-14 23:51:46 +03:00
Evgeny Gerashchenko
a93cc083d6 Don't try to find local descriptors in decompiled classes. 2015-05-14 21:51:08 +03:00
Evgeny Gerashchenko
0498bd7739 KT-7587 Overloads are not generated during partial compilation of package
#KT-7587 fixed
2015-05-14 21:51:08 +03:00
Evgeny Gerashchenko
ca883d8117 Green code. 2015-05-14 21:51:08 +03:00
Evgeny Gerashchenko
533935f2c0 KT-7472 function of anonymous class is never used
#KT-7472 fixed
2015-05-14 21:51:07 +03:00
Evgeny Gerashchenko
f00d96d67a Merge pull request #669 from JetBrains/rr/nik
use API class instead of impl to create Java SDK
2015-05-14 21:50:10 +04:00
Alexander Udalov
2fe05c6f11 Parse and resolve annotations on supertypes 2015-05-14 18:58:08 +03:00
Alexander Udalov
5539444aa2 Minor, fix runtime for compiler in CompilerSmokeTest 2015-05-14 18:40:50 +03:00
Alexander Udalov
a267beb5aa Fix order of dependencies for module 'descriptors'
'util.runtime' exports Kotlin Runtime which has reflection classes which
override their newer copies from 'deserialization'
2015-05-14 18:40:49 +03:00
Alexander Udalov
62d0d5c77f Minor, fix error message when renaming package facade 2015-05-14 18:40:49 +03:00
Alexander Udalov
b881827b74 Use descriptors instead of PSI in ImplementationBodyCodegen 2015-05-14 18:40:48 +03:00
Sergey Mashkov
13a55ae72e JS use wholeText instead of replaceWholeText() in example 2015-05-14 17:30:34 +03:00
nik
cefc704af0 use API class instead of impl to create Java SDK 2015-05-14 15:51:12 +03:00
Alexey Sedunov
e7748e2700 Convert Parameter to Receiver: Replace parameter references with labeled this-expressions (before shortening them). Report conflict when this-label is ambiguous
#KT-7681 Fixed
2015-05-14 15:47:56 +03:00
Alexey Sedunov
2dac70a4f7 Inline Val: Do not highlight usages if some are not located in the same file as the declaration itself
#KT-7655 Fixed
2015-05-14 15:47:55 +03:00
Alexey Sedunov
7f05b35332 Minor: Fix checkox mnemonic 2015-05-14 15:47:54 +03:00
Alexey Sedunov
3e620dbbbb Find Usages: Show class-specific dialog for all Kotlin classes (including bultins)
#KT-7048 Fixed
2015-05-14 15:47:53 +03:00
Alexey Sedunov
02006126f5 Introduce Property: Forbid extension properties with initializers and lazy
ones
2015-05-14 15:47:51 +03:00
Alexey Sedunov
b69b66feab Extraction Engine: Do not extract type parameter if it's resolved in the target scope
#KT-7246 Fixed
2015-05-14 15:47:50 +03:00
Sergey Mashkov
7045140d11 JS make NodeListAsList field private 2015-05-14 14:33:37 +03:00
Sergey Mashkov
425efa3ae1 JS IDL2K move Event, EventListener and EventTarget to org.w3c.events 2015-05-14 14:19:08 +03:00
Natalia Ukhorskaya
f20e76c185 Improve assert message.
#KT-6625 In Progress
2015-05-14 14:08:16 +03:00
Natalia Ukhorskaya
37cca22538 JetPositionManager: return kotlin package class for JetClsFile with linenumber -1 2015-05-14 14:08:14 +03:00
Sergey Mashkov
f0c55c98f2 JS fix failed test caused by strings API change 2015-05-14 13:39:33 +03:00
Sergey Mashkov
e9c2b33d2d JS IDL2K use Any? type for "any" but callback functions return types that returns dynamic instead of Any? 2015-05-14 09:17:01 +03:00
Sergey Mashkov
42f1f9df03 JS Union type members should have inherit corresponding marker interface 2015-05-14 09:17:00 +03:00
Sergey Mashkov
002b26e4ed JS IDL2K spaces in functional types 2015-05-14 09:16:59 +03:00
Sergey Mashkov
b34da5713d JS update IDL definitions, append source URL to downloaded file 2015-05-14 09:16:59 +03:00
Sergey Mashkov
7033b27ea8 JS Changes according to review 2015-05-14 09:16:58 +03:00
Sergey Mashkov
e3ae12ed62 JS Fix build failure due to missing splitWithRegex 2015-05-14 09:16:57 +03:00
Sergey Mashkov
0ce1edd417 JS IDL2K better callbacks support + bugfixes according to review 2015-05-14 09:16:57 +03:00
Sergey Mashkov
a11e0a84b5 JS tests for addClass, removeClass, removeFromParent 2015-05-14 09:16:56 +03:00
Sergey Mashkov
bcbfa3c240 JS CSS style declarations 2015-05-14 09:16:56 +03:00
Sergey Mashkov
d24bdf5ad0 JS Introduce SVG DOM support 2015-05-14 09:16:55 +03:00
Sergey Mashkov
6366f966b7 JS Introduce typed arrays 2015-05-14 09:16:54 +03:00
Sergey Mashkov
a6bed4f623 JS Fix marker interface filtering 2015-05-14 09:16:54 +03:00
Sergey Mashkov
2e687fde6b JS Generate DOM stubs from IDLs 2015-05-14 09:16:53 +03:00
Sergey Mashkov
236ec54c2a JS download DOM IDLs 2015-05-14 09:16:52 +03:00
Sergey Mashkov
47cf73d089 JS IDL2K fix bugs regarding union types and unknown types, any and so on
JS IDL2K better support for functional types and callback handlers
2015-05-14 09:16:52 +03:00
Sergey Mashkov
6e09100877 JS IDL2K refactoring according to review discussion 2015-05-14 09:16:51 +03:00
Sergey Mashkov
4ee780ef07 JS move document/window/storage to kotlin.browser 2015-05-14 09:16:51 +03:00
Sergey Mashkov
33c1d5d2cf JS fix tests failed due to api change 2015-05-14 09:16:50 +03:00
Sergey Mashkov
4bc91ba652 JS fix stdlib API to conform to new DOM3 2015-05-14 09:16:49 +03:00
Sergey Mashkov
374dcd56f2 JS better typedefs and union-types support 2015-05-14 09:16:49 +03:00
Sergey Mashkov
e487825237 JS deprecate old declarations 2015-05-14 09:16:48 +03:00
Sergey Mashkov
e84aa78ac6 JS introduce marker annotation 2015-05-14 09:16:48 +03:00
Sergey Mashkov
e2d663b288 JS Introduce utility functions for DOM3 2015-05-14 09:16:47 +03:00
Sergey Mashkov
53495fa989 JS Implement IDL2K tool and import DOM3 IDLs
JS Introduce required utility functions for DOM3
2015-05-14 09:16:46 +03:00
Valentin Kipyatkov
dc7f81a904 Code corrections after code review 2015-05-14 01:10:14 +03:00
Valentin Kipyatkov
1ad5ea4f7e Corrected test data 2015-05-14 01:10:13 +03:00
Valentin Kipyatkov
841d07f1aa More correct fix of getEnclosingElementForLocalDeclaration( 2015-05-14 01:10:13 +03:00
Valentin Kipyatkov
d67b678a65 Minor changes after review 2015-05-14 01:10:12 +03:00
Valentin Kipyatkov
d09c1e7c5b "Invert if" - handling some more cases 2015-05-14 01:10:12 +03:00
Valentin Kipyatkov
279b406bca "Invert if condition" intention works better for non-symmetric if's
#KT-5009 Fixed
2015-05-14 01:10:11 +03:00
Valentin Kipyatkov
181af17315 KT-7704 Intention actions on visibility modifier for quick changing it
#KT-7704 Fixed
2015-05-14 01:10:11 +03:00
Valentin Kipyatkov
ad91d2cd9e Removed unused deprecated constructors 2015-05-14 01:10:10 +03:00
Valentin Kipyatkov
d95b198da7 Refactored (and more correct) getOutermostLastBlockElement and its usages 2015-05-14 01:10:10 +03:00
Valentin Kipyatkov
38ac420057 Fixed bug in MergeWhenIntention 2015-05-14 01:10:10 +03:00
Valentin Kipyatkov
6456729973 Better intention text 2015-05-14 01:10:09 +03:00
Valentin Kipyatkov
462074df8c MergeWhenIntention code refactoring + smaller range 2015-05-14 01:10:09 +03:00
Valentin Kipyatkov
102aa661ee Moved intention based inspection classes to their intention classes + some renames 2015-05-14 01:10:08 +03:00
Valentin Kipyatkov
9a97818b82 Smaller range for SimplifyNegatedBinaryExpressionIntention 2015-05-14 01:10:08 +03:00
Valentin Kipyatkov
fc3609d403 SimplifyNegatedBinaryExpressionIntention - no i18n + code simplification 2015-05-14 01:10:08 +03:00
Valentin Kipyatkov
0422cf402d RemoveExplicitTypeArguments - no i18n + minor 2015-05-14 01:10:07 +03:00
Valentin Kipyatkov
54051c40dc Moved 2 intentions from idea-analysis to idea 2015-05-14 01:10:07 +03:00
Valentin Kipyatkov
addcadeddf Replace "contains" with "in" intention handles negation 2015-05-14 01:10:06 +03:00
Valentin Kipyatkov
e601057e93 Smaller ranges for intentions 2015-05-14 01:10:06 +03:00
Valentin Kipyatkov
11812a9ece Renamed some intentions + test data dirs 2015-05-14 01:10:05 +03:00
Valentin Kipyatkov
096df91972 Renamed intentions package 2015-05-14 01:10:05 +03:00
Valentin Kipyatkov
8095aabd42 Refactored intentions to replace special name calls with operators 2015-05-14 01:10:04 +03:00
Valentin Kipyatkov
fbc3fa2b09 KT-7212 Convert member function to extension intenton positions caret improperly
#KT-7212 Fixed
2015-05-14 01:10:04 +03:00
Valentin Kipyatkov
3222486dba Changed intention text to less confusing 2015-05-14 01:10:03 +03:00
Valentin Kipyatkov
5491523f05 Renamed intention class 2015-05-14 01:10:03 +03:00
Valentin Kipyatkov
48ac89dca4 Refactored ConvertMemberToExtension to re-use original declaration instead of regenerating it by text
#KT-4920 Fixed
2015-05-14 01:10:02 +03:00
Valentin Kipyatkov
ac9d75b45e KT-6632 "Convert to extension" intention should not be available on methods that override or implement a superclass method
#KT-6632 Fixed
2015-05-14 01:10:02 +03:00
Valentin Kipyatkov
a23c6a2cdc Smaller range + refactoring of ConvertMemberToExtension 2015-05-14 01:10:02 +03:00
Valentin Kipyatkov
04ec19cb4a Converted ConvertMemberToExtension to Kotlin 2015-05-14 01:10:01 +03:00
Valentin Kipyatkov
518ea85c87 Renames 2015-05-14 01:10:01 +03:00
Valentin Kipyatkov
a3bd6ca017 Introduced shortcut properties + getArrowNode -> getArrow 2015-05-14 01:10:00 +03:00
Valentin Kipyatkov
d86e142366 Smaller range for SplitPropertyDeclarationIntention 2015-05-14 01:10:00 +03:00
Valentin Kipyatkov
cb320bc0ac Moved function 2015-05-14 01:09:59 +03:00
Valentin Kipyatkov
4488a6719d Refactored DeclarationUtils 2015-05-14 01:09:59 +03:00
Valentin Kipyatkov
345076c11e Converted DeclarationUtils to Kotlin 2015-05-14 01:09:59 +03:00
Valentin Kipyatkov
269074b399 Smaller range fro SafeAccessToIfThenIntention 2015-05-14 01:09:58 +03:00
Valentin Kipyatkov
776e653421 Refactored SafeAccessToIfThenIntention 2015-05-14 01:09:58 +03:00
Valentin Kipyatkov
8a30d2d664 Avoid creation expressions by texts 2015-05-14 01:09:57 +03:00
Valentin Kipyatkov
749416434f Smaller range for IfThenToDoubleBangIntention 2015-05-14 01:09:57 +03:00
Valentin Kipyatkov
2b77fe2ff1 Refactored IfThenToDoubleBangIntention 2015-05-14 01:09:56 +03:00
Valentin Kipyatkov
b94d6306a7 Minor 2015-05-14 01:09:56 +03:00
Valentin Kipyatkov
ea168b0f6b Smaller ranges for intentions 2015-05-14 01:09:56 +03:00
Valentin Kipyatkov
4c275cb4ea Code refactoring 2015-05-14 01:09:55 +03:00
Valentin Kipyatkov
a3360df424 Moved intentions from UnfoldBranchedExpressionIntention.kt into own files 2015-05-14 01:09:55 +03:00
Valentin Kipyatkov
3743e9f508 Refactored UnfoldBranchedExpressionIntention's getting rid of UnfoldableKind 2015-05-14 01:09:54 +03:00
Valentin Kipyatkov
2ea2be01cd Minor code refactorings 2015-05-14 01:09:54 +03:00
Valentin Kipyatkov
a81f445190 Converted file to Kotlin 2015-05-14 01:09:53 +03:00
Valentin Kipyatkov
224e73e4f0 Inlined JetPsiFactory.createReturn 2015-05-14 01:09:53 +03:00
Valentin Kipyatkov
ceb9b3d663 Fixed test data 2015-05-14 01:09:53 +03:00
Valentin Kipyatkov
71d9c4726b No more usages of createReturn(text) 2015-05-14 01:09:52 +03:00
Valentin Kipyatkov
67a5e8a69d Fixed bug in DeprecatedLambdaSyntaxFix 2015-05-14 01:09:52 +03:00
Valentin Kipyatkov
ed595aab27 Fixed formatting problem + other way of creating returns 2015-05-14 01:09:51 +03:00
Valentin Kipyatkov
386be4bd10 Fixed formatting problem 2015-05-14 01:09:51 +03:00
Valentin Kipyatkov
8e2d381b85 Code simplifications 2015-05-14 01:09:51 +03:00
Valentin Kipyatkov
089267deee Refactored branched folding intentions into separate files and inlining methods from util 2015-05-14 01:09:50 +03:00
Valentin Kipyatkov
832b4fb8d8 Refactored FoldBranchedExpressionIntention removing common subclass and FoldableKind 2015-05-14 01:09:50 +03:00
Valentin Kipyatkov
d77b77809c Code corrections after conversion 2015-05-14 01:09:49 +03:00
Valentin Kipyatkov
b1ef08c9a1 Conversion to Kotlin (not compilable yet) 2015-05-14 01:09:49 +03:00
Valentin Kipyatkov
b9486846e1 ElvisToIfThenIntention - smaller range + minor code improvements 2015-05-14 01:09:48 +03:00
Valentin Kipyatkov
3b7bb81141 Renamed methods so that tests for parsing do not fail 2015-05-14 01:09:48 +03:00
Valentin Kipyatkov
37ab41ac52 Added parameter info + isAvailable 2015-05-14 01:09:47 +03:00
Valentin Kipyatkov
43ccdf1036 Changed order of quickfixes 2015-05-14 01:09:47 +03:00
Valentin Kipyatkov
21eb2acd31 Shorter quickfix names 2015-05-14 01:09:47 +03:00
Valentin Kipyatkov
e31f0ed829 Add constructor parameters quickfix reuses existing parameters 2015-05-14 01:09:46 +03:00
Valentin Kipyatkov
0952e9a63a Add constructor parameters quickfix works for multiple constructors 2015-05-14 01:09:46 +03:00
Valentin Kipyatkov
4ac2e29d28 Fixed error type case 2015-05-14 01:09:45 +03:00
Valentin Kipyatkov
c6ebc50e6c Renaming test data files 2015-05-14 01:09:45 +03:00
Valentin Kipyatkov
381049d13e Fix for non-accessible constructor case 2015-05-14 01:09:44 +03:00
Valentin Kipyatkov
a5dabac296 Refactored "Change to constructor invocation" and new "Add constructor parameters and use them" quickfixes into one factory, making the first one always available 2015-05-14 01:09:44 +03:00
Valentin Kipyatkov
cd419c2ddf Moved test data 2015-05-14 01:09:44 +03:00
Valentin Kipyatkov
00dcbd4d93 Initial implementation of KT-4046 Support 'Create constructor matching superclass'
#KT-4046 Fixed
2015-05-14 01:09:21 +03:00
Valentin Kipyatkov
734b502ad6 Fixed test data 2015-05-14 01:00:30 +03:00
Valentin Kipyatkov
df25adcb15 Smaller range for IfNullToElvisIntention and inspection 2015-05-14 01:00:29 +03:00
Valentin Kipyatkov
40f52f0216 Minor changes on code review 2015-05-14 01:00:29 +03:00
Valentin Kipyatkov
69c787dded Fixed resolveToDescriptor for parameter of catch block 2015-05-14 01:00:29 +03:00
Valentin Kipyatkov
830e3ba073 Better code in j2k 2015-05-14 01:00:29 +03:00
Valentin Kipyatkov
709573db69 Fix in SpecifyTypeExplicitlyIntention 2015-05-14 01:00:29 +03:00
Valentin Kipyatkov
07a89b38e1 Intention based intentions: added ability to highlight partial range, used it in new inspection based on IntroduceWhenSubjectIntention + added missing description 2015-05-14 01:00:29 +03:00
Valentin Kipyatkov
45c5454e39 Refactored IntroduceWhenSubjectIntention 2015-05-14 01:00:29 +03:00
Valentin Kipyatkov
ada11ca5e9 Use of expressions instead of plain text when converting when's 2015-05-14 01:00:28 +03:00
Valentin Kipyatkov
66a90916fe JetPsiFactory.createExpressionByPattern supports JetTypeReference's as arguments 2015-05-14 01:00:28 +03:00
Valentin Kipyatkov
6317ecc870 No use of CallChainBuilder anymore 2015-05-14 01:00:28 +03:00
Valentin Kipyatkov
ea6b632cea WhenToIfIntention - smaller range and refactoring 2015-05-14 01:00:28 +03:00
Valentin Kipyatkov
76fc0c1418 FlattenWhenIntention - smaller range and refactoring 2015-05-14 01:00:28 +03:00
Valentin Kipyatkov
428bcbbc8a No use of WhenBuilder at all 2015-05-14 01:00:28 +03:00
Valentin Kipyatkov
4f96965310 No use of WhenBuilder in introduceSubject 2015-05-14 01:00:28 +03:00
Valentin Kipyatkov
b200324a86 EliminateWhenSubjectIntention - no use of WhenBuilder 2015-05-14 01:00:27 +03:00
Valentin Kipyatkov
b1d0365c2f IfToWhenIntention - no use of WhenBuilder 2015-05-14 01:00:27 +03:00
Valentin Kipyatkov
47c613c477 IfToWhenIntention - smaller range and code refactoring 2015-05-14 01:00:27 +03:00
Valentin Kipyatkov
50f2c13cac EliminateWhenSubjectIntention - smaller range and code refactoring 2015-05-14 01:00:27 +03:00
Valentin Kipyatkov
3702add034 Refactored IfThenToSafeAccessIntention 2015-05-14 01:00:27 +03:00
Valentin Kipyatkov
f2cced4384 Code improvements in IfThenToElvisIntention 2015-05-14 01:00:27 +03:00
Valentin Kipyatkov
345f9217ae DoubleBangToIfThenIntention - smaller range + minor code improvements 2015-05-14 01:00:27 +03:00
Valentin Kipyatkov
f892e17d6b Refactored ConvertIfWithThrowToAssertIntention 2015-05-14 01:00:26 +03:00
Valentin Kipyatkov
392a1f52eb Fixed JetTypeLookupExpression 2015-05-14 01:00:26 +03:00
Valentin Kipyatkov
74cdd39ac9 Renamed test data dirs 2015-05-14 01:00:26 +03:00
Valentin Kipyatkov
f73c4b296e Converted to Kotlin 2015-05-14 01:00:26 +03:00
Valentin Kipyatkov
0ca492464b Refactored SimplifyBooleanWithConstantsIntention 2015-05-14 01:00:26 +03:00
Valentin Kipyatkov
1fa14af02f Converted to Kotlin 2015-05-14 01:00:26 +03:00
Valentin Kipyatkov
0c7a366ddf No i18n 2015-05-14 01:00:26 +03:00
Valentin Kipyatkov
b0ce16eada Remove explicit type intention should not be available on public 2015-05-14 01:00:25 +03:00
Valentin Kipyatkov
2d90ee5cad Split SpecifyTypeExplicitly intention into two + refactored them completely 2015-05-14 01:00:25 +03:00
Valentin Kipyatkov
d956d31012 Minor code editings after conversion 2015-05-14 01:00:25 +03:00
Valentin Kipyatkov
899a28f5ec Converted to Kotlin (step 2) 2015-05-14 01:00:25 +03:00
Valentin Kipyatkov
1251663099 Converted to Kotlin (step 1) 2015-05-14 01:00:25 +03:00
Valentin Kipyatkov
7499c4bc19 Refactored SplitIfIntention + JetPsiFactory.createIf uses createExpressionByPattern and does not reformat its arguments 2015-05-14 01:00:25 +03:00
Valentin Kipyatkov
de8601bb5d Got rid of JetPsiFactory.createBinaryExpression 2015-05-14 01:00:24 +03:00
Valentin Kipyatkov
b0aca040d8 "JetPsiFactory.createExpressionByPattern" and some usages of it 2015-05-14 01:00:24 +03:00
Valentin Kipyatkov
0a5951fcb9 Minor 2015-05-14 01:00:24 +03:00
Valentin Kipyatkov
05b6181d20 Renamed intention 2015-05-14 01:00:24 +03:00
Valentin Kipyatkov
c617d5256e ReplaceWithTraditionalAssignmentIntention - smaller range 2015-05-14 01:00:24 +03:00
Valentin Kipyatkov
8fc799322b Refactored ReplaceWithTraditionalAssignmentIntention 2015-05-14 01:00:24 +03:00
Valentin Kipyatkov
475a361b32 Renamed intention 2015-05-14 01:00:24 +03:00
Valentin Kipyatkov
435e9fed3f Added inspection based on ReplaceWithOperatorAssignIntention 2015-05-14 01:00:23 +03:00
Valentin Kipyatkov
bab4ae3879 Refactored ReplaceWithOperatorAssignIntention 2015-05-14 01:00:23 +03:00
Dmitry Jemerov
95f42ac050 fix test: redundant parentheses are no longer generated 2015-05-13 21:19:36 +02:00
Nikolay Krasko
3c7e7ffda6 Place light classes finder before standard PsiElementFinderImpl
Source elements should have priority over libraries.
2015-05-13 21:32:09 +03:00
Dmitry Jemerov
6f4cae03fe Quickfix to add a loop label when 'break' or 'continue' is used in a loop inside 'when'
#KT-7202 Fixed
2015-05-13 17:26:18 +02:00
Dmitry Jemerov
625096466e IDE testdata: s/trait/interface 2015-05-13 16:13:13 +02:00
Michael Bogdanov
99cad4b43f Support default method invocation via super
#KT-5970 Fixed
2015-05-13 14:52:18 +03:00
Michael Bogdanov
3fbdf05921 Added some new test for java8 2015-05-13 14:52:18 +03:00
Alexey Tsvetkov
37dfa58cd3 JS: expand calls, generated to curry reified is checks 2015-05-13 12:15:29 +03:00
Alexey Tsvetkov
818b197169 JS: support reified usage in extension functions 2015-05-13 12:15:29 +03:00
Alexey Tsvetkov
79ab47d374 JS: support reified type references in closures 2015-05-13 12:15:29 +03:00
Alexey Tsvetkov
85dc7a1ac4 JS: always translate reified type parameters 2015-05-13 12:15:29 +03:00
Alexey Tsvetkov
2f786efebf JS: support is-check on reified parameter 2015-05-13 12:15:29 +03:00
Alexey Tsvetkov
2c99484066 Minor in JS: use toTypedArray in JS tests 2015-05-13 12:15:29 +03:00
Alexey Tsvetkov
8cdff2439b JS: added reified is-check test cases 2015-05-13 12:15:29 +03:00
Alexey Tsvetkov
0a3ed7f12e JS: small fixes after conversion 2015-05-13 12:15:29 +03:00
Alexey Tsvetkov
f0c2aa9eb2 JS: converted CallArgumentTranslator to Kotlin 2015-05-13 12:15:29 +03:00
Alexey Tsvetkov
cdfd88cc2f JS: changed file extension of CallArgumentTranslator.java -> .kt 2015-05-13 12:15:29 +03:00
Ilya Gorbunov
f7aa997003 Provide fast path for negative index values in elementAt.
Minor: kdoc wording.
2015-05-12 21:07:24 +03:00
Dmitry Jemerov
4bdf598bfe compiler testdata: s/trait/interface 2015-05-12 19:43:17 +02:00
Ilya Gorbunov
a5ed5d4269 Generate elementAtOrNull and elementAtOrElse extension methods for iterables, collections, sequences, etc.
#KT-6952 Fixed
2015-05-12 20:08:20 +03:00
Michael Nedzelsky
c420e0f010 JS: eliminate direct usage of builtins serialization for js 2015-05-12 19:30:29 +03:00
Michael Nedzelsky
6dc7c4bc29 add SerializedResourcePaths, extract base code from builtins package fragment, data finder 2015-05-12 19:30:26 +03:00
Michael Nedzelsky
d8ca5be29d JS: KotlinJavascriptMetadataUtils: ABI 1 -> 2 2015-05-12 19:30:23 +03:00
Michael Nedzelsky
de3a31b07c JS: add import from descriptors to js.proto 2015-05-12 19:30:20 +03:00
Dmitry Jemerov
2a99f757c4 replace 'trait' keyword with 'interface' in library code 2015-05-12 17:07:46 +02:00
Dmitry Jemerov
b1c4a5670a provide element type name for multi-declaration entries; enable in-place rename for those; show local properties as "variable"
#KT-7627 Fixed
2015-05-12 16:18:03 +02:00
Dmitry Jemerov
0582d1947d JetRefactoringSupportProvider: J2K 2015-05-12 16:18:01 +02:00
Dmitry Jemerov
d990bbffdc JetRefactoringSupportProvider: rename to .kt 2015-05-12 16:18:01 +02:00
Dmitry Jemerov
9975bb8935 replace 'trait' keyword with 'interface' in user-visible messages and code generation tools 2015-05-12 11:49:37 +02:00
Dmitry Jemerov
25959fefdc J2K: generate 'interface' keyword instead of 'trait' 2015-05-12 11:49:37 +02:00
Ilya Gorbunov
69a58d1f0e Minor: correct kdoc comment. 2015-05-12 12:25:27 +03:00
Michael Bogdanov
d6964525b2 Fix for KT-7490: Bad bytecode generated by delegates and lambdas
#KT-7490 Fixed
2015-05-12 12:06:11 +03:00
Alexey Sedunov
aed6ed0f9b Introduce Parameter: Fix occurrence replacement when parameter name/type is changed by the user 2015-05-12 01:01:43 +03:00
Alexey Sedunov
ca54fe0883 Introduce Property: Fix primary occurrence replacement
#KT-7610 Fixed
2015-05-11 20:58:02 +03:00
Alexey Sedunov
339383b5b1 Extract Function: Add test for ===
#KT-7663 Fixed
2015-05-11 20:57:59 +03:00
Alexey Sedunov
c4e20b5cc1 Control-Flow: Generate mark instruction before the call/unresolved call instruction
#KT-7663 In Progress
2015-05-11 20:57:56 +03:00
Ilya Gorbunov
34526005d0 Provide a way to construct an empty typed array without init lambda. 2015-05-09 11:45:43 +03:00
Ilya Gorbunov
31b9ee65e0 Change the expected output after joinToString signature was changed. 2015-05-09 01:11:51 +03:00
Ilya Gorbunov
16d20ff009 Temporary add jvm.overloads annotation for generated joinToString() method.
Stdlib generator: allow to specify arbitrary annotations for all or some of generic function expansions.
2015-05-09 01:11:49 +03:00
Ilya Gorbunov
d531d7130f Add an optional parameter to joinToString() and joinTo() functions: lambda function which maps the element to string.
#KT-5468 Fixed
2015-05-09 01:11:47 +03:00
Ilya Gorbunov
c8a76f6344 Merge overloads String.compareToIgnoreCase and String.compareTo with an optional parameter. Provide CASE_INSENSITIVE_ORDER comparer in String.Companion. 2015-05-09 01:11:45 +03:00
Ilya Gorbunov
64b23054a6 Specify abbreviated code for each general Unicode category. 2015-05-09 01:11:43 +03:00
Ilya Gorbunov
1eed3675fe Add Char.isTitleCase, Char.toTitleCase methods (JVM). 2015-05-09 01:11:40 +03:00
Ilya Gorbunov
efe6bee106 Add Char.isSurrogate function and Char.MIN_SURROGATE, Char.MAX_SURROGATE constants. 2015-05-09 01:11:38 +03:00
Ilya Gorbunov
062d080e80 CharCategory and CharDirectionality enums for JVM. 2015-05-09 01:11:36 +03:00
Ilya Gorbunov
fb5a3a771c String.split(Pattern, limit) now treats limit differently: 0 means no limit is specified, but trailing empty elements are not stripped; -1 and other negative values are not allowed. 2015-05-09 01:11:34 +03:00
Ilya Gorbunov
b1255cf95b 2nd stage of split semantics change: remove deprecated String.split(String), rename splitBy back to split. 2015-05-09 01:11:32 +03:00
Ilya Gorbunov
aa6bdb039b Take caution when advancing to the next match after an empty string was matched not to stuck at the same position. 2015-05-09 01:11:30 +03:00
Ilya Gorbunov
260553d516 Temporary workaround due to KT-7502.
Correct usage of joinToString.
Test for passing multiple options.
2015-05-09 01:11:28 +03:00
Ilya Gorbunov
81325208be Remove Regex() and toRegex() overloads with vararg options. Now only zero, one or set of options are allowed. 2015-05-09 01:11:26 +03:00
Ilya Gorbunov
44d7f768c7 Visibility of Regex primary constructor. Provide adapting methods Pattern.toRegex and Regex.toPattern. 2015-05-09 01:11:24 +03:00
Ilya Gorbunov
6c9ca39286 Implement CharSequence.isEmpty method in stdlib.js. Remove corresponding intrinsic. 2015-05-09 01:11:22 +03:00
Ilya Gorbunov
7a51123d26 Make native* methods internal in stdlib.js as it was intended.
They are not checked with stdlib-validator, so it is possible.
2015-05-09 01:11:20 +03:00
Ilya Gorbunov
ae13359adc Change package of extensions and other top-level declarations from kotlin.js to kotlin to match corresponding ones in stdlib for JVM. 2015-05-09 01:11:18 +03:00
Ilya Gorbunov
908864b0c0 Move native RegExp to kotlin.text.js package 2015-05-09 01:11:16 +03:00
Ilya Gorbunov
a5177b785d Add String.replaceFirst methods.
String.replaceFirst(String, String) temporary named as replaceFirstLiteral.
2015-05-09 01:11:14 +03:00
Ilya Gorbunov
157c86b9c6 Empty string is supported as a delimiter in split and as an oldValue in replace. 2015-05-09 01:11:12 +03:00
Ilya Gorbunov
43dd23bd4b Remove some conflicting declarations from test, convert code to new Regex API 2015-05-09 01:11:10 +03:00
Ilya Gorbunov
2ae767a049 Add deprecated matcher() method to Regex to fix build. 2015-05-09 01:11:08 +03:00
Ilya Gorbunov
5f4e3ae6af Documentation and visibility of members.
Add hasMatch method to check whether there is at least one match exists.
IGNORE_CASE always includes UNICODE_CASE on JVM.
2015-05-09 01:11:07 +03:00
Ilya Gorbunov
db13705506 Tests for match and replace. 2015-05-09 01:11:04 +03:00
Ilya Gorbunov
0b03caf3e7 Uniform implementation of String.replace and String.matches(Regex) across JVM and JS.
Deprecated String.matches(String) and String.replaceAll methods.
2015-05-09 01:11:03 +03:00
Ilya Gorbunov
01ace84070 Regex implementation: split, replace and replaceFirst. 2015-05-09 01:11:00 +03:00
Ilya Gorbunov
559c1604d7 Rename Pattern to Regex.
toRegex now converts string to our regex, and toPattern converts to JVM Pattern.
2015-05-09 01:10:59 +03:00
Ilya Gorbunov
a4784dfa78 Pattern implementation for JS. 2015-05-09 01:10:57 +03:00
Ilya Gorbunov
da1641e0f8 Pattern implementation: JVM and partially JS.
Common tests.
2015-05-09 01:10:55 +03:00
Ilya Gorbunov
459e95d1d9 Pattern (Regex) API. 2015-05-09 01:10:53 +03:00
Ilya Gorbunov
370a67e753 js.stdlib: native replace made private. 2015-05-09 01:10:51 +03:00
Ilya Gorbunov
69a5d27c74 js.stdlib: Native RegExp. 2015-05-09 01:10:49 +03:00
Ilya Gorbunov
18f3018ce7 js.stdlib: js-only tests now included in kotlin-js-tests module. 2015-05-09 01:10:47 +03:00
Valentin Kipyatkov
837e46a9b8 Big change in quickfix tests: no stupid test data format with "before" and "after" file prefixes 2015-05-08 22:29:42 +03:00
Yan Zhulanow
a1acc60ed3 Update Gradle API and Android Gradle plugin dependency versions in kotlin-android-extensions 2015-05-08 18:19:26 +03:00
Yan Zhulanow
7639ab4f41 Separate support and normal properties 2015-05-08 18:19:26 +03:00
Yan Zhulanow
1ae2719d34 Visit children nodes even if layout XML tag is ignored 2015-05-08 18:19:25 +03:00
Yan Zhulanow
c774eac0e3 IDEA dependency version check for main IDEA and Android Extensions IDEA plugins 2015-05-08 18:19:25 +03:00
Yan Zhulanow
dbc0099e6e Fix usage printing for compiler plugins 2015-05-08 18:19:25 +03:00
Yan Zhulanow
fdc253b67f Bugfix: support several resource directories in AndroidPsiTreeChangePreprocessor 2015-05-08 18:19:24 +03:00
Yan Zhulanow
77be78b627 Support Android flavors 2015-05-08 18:19:24 +03:00
Yan Zhulanow
bf707ec3f7 Minor: code clean, remove obsolete functions 2015-05-08 18:19:24 +03:00
Yan Zhulanow
3645dfc5af Support several res/ directories 2015-05-08 18:19:23 +03:00
Yan Zhulanow
7a685b8c56 Support Fragment synthetic properties 2015-05-08 18:19:23 +03:00
Yan Zhulanow
d7488023d2 Add compiler tests for support.v4.app.Fragment 2015-05-08 18:19:22 +03:00
Yan Zhulanow
514bc74e9c Support android.support.v4.Fragment classes 2015-05-08 18:19:22 +03:00
Yan Zhulanow
cc697d2c1a Minor: remove isResourceDeclarationOrUsage 2015-05-08 18:19:22 +03:00
Yan Zhulanow
bc4a342a38 Refactoring: handle base AndroidResource class (in order to support <fragment>) 2015-05-08 18:19:21 +03:00
Zalim Bashorov
2cf478c864 Update to IDEA 14.1 EAP (141.1009.5) 2015-05-08 17:21:13 +03:00
Ilya Gorbunov
02b8394cb2 Change JetCodeFragment.IMPORT_SEPARATOR back to String 2015-05-08 16:48:11 +03:00
Alexey Sedunov
f13eb038e1 Introduce Parameter: Java -> Kotlin Interoperability 2015-05-08 11:43:00 +03:00
Denis Zharkov
93861e16c8 Prohibit non-constant default values for annotation parameter
#KT-7449 Fixed
2015-05-07 22:36:17 +03:00
Denis Zharkov
585a437b2e Parse '@' annotations on enum entries
Just drop truncating builder's creation as we parse only escaped annotations
and will not `eat` entry identifier
2015-05-07 22:36:17 +03:00
Denis Zharkov
e2cd983d49 Add quickfix for replacing deprecated annotations 2015-05-07 22:36:17 +03:00
Denis Zharkov
e59a0dd0c6 Adjust KotlinSuppressIntentionAction to syntax with '@' 2015-05-07 22:36:16 +03:00
Denis Zharkov
849b8acbf8 Replace annotations with brackets in testData
Just in tests that changed after deprecation
2015-05-07 22:36:16 +03:00
Denis Zharkov
5bc7c9600f Deprecate annotations in brackets 2015-05-07 22:36:16 +03:00
Denis Zharkov
1d77f50903 Refine highlighting of '@'
- Do not highlight '@' as separate token.

- Highlight '@' the same way as element where it's located: annotation, label or modifier.

- Extend text range when positioning unresolved reference in annotation with '@'.

Note that currently '@' is collapsed with modifiers tokens
2015-05-07 22:36:16 +03:00
Denis Zharkov
aa7bae213d Introduce ++ operator into grammar 2015-05-07 22:36:16 +03:00
Denis Zharkov
b924f35ed3 Resolve annotations on multi-declaration for parameter 2015-05-07 22:36:16 +03:00
Denis Zharkov
3d810ffe61 Parse modifier list of multi-declaration and for parameters 2015-05-07 22:36:16 +03:00
Denis Zharkov
e236d04957 Minor, drop unused method createConstructorModifierList 2015-05-07 22:36:16 +03:00
Denis Zharkov
9e23698fe3 Unwrap annotated expression in deparenthesize
It's needed to complete resolved call with annotated function literal
2015-05-07 22:36:15 +03:00
Denis Zharkov
9101505eca Rework deparenthesize-like methods
- Extract private `deparenthesizeOnce` and repeat it until get the same expression

- Drop redundant parameter `deparenthesizeRecursively`

- Drop some usages of `safeDeparenthesize` in `deparenthesize`
  because even if `deparenthesize` returns null (i.e. something was not parsed)
  there is no sense in working with such expressions

Note, that `deparenthesize` now unwraps nested labels' declaration (see changes in testData),
but it seems to be reasonable
2015-05-07 22:36:15 +03:00
Denis Zharkov
b72a3de86e Parse annotations on lambda-argument 2015-05-07 22:36:15 +03:00
Denis Zharkov
c5af4b42b4 Extract common logic for annotation entries collection
Before this change annotation entries starting with '@' within expressions hadn't been resolved

Note that order of annotation entries in result may change according to order of children in PSI (see changed testData)
2015-05-07 22:36:15 +03:00
Denis Zharkov
7d8351abc6 Implement parsing annotations and modifiers starting with '@' 2015-05-07 22:36:15 +03:00
Denis Zharkov
b13e932c3c Parse label reference with spaces before '@'
But still report error
2015-05-07 22:36:15 +03:00
Denis Zharkov
3528762e2d Minor, drop constant parameters and rename method 2015-05-07 22:36:15 +03:00
Denis Zharkov
5ce1fc6fbb Minor, rename AnnotationParsingMode's entries 2015-05-07 22:36:15 +03:00
Nikolay Krasko
0fa93d59c5 Get context for partial resolve if we have result for full analyze already 2015-05-07 20:14:12 +03:00
Natalia Ukhorskaya
9108d87a57 Add warning for division by zero:
#KT-5529 fixed
2015-05-07 15:41:37 +03:00
Nikolay Krasko
cb9c28e73f Update to Idea 141.914.3 EAP 2015-05-07 15:12:02 +03:00
Natalia Ukhorskaya
16b17b9e94 Minor: rename 2015-05-07 13:23:59 +03:00
Natalia Ukhorskaya
d7a301d698 Evaluate Expression: support local functions 2015-05-07 13:23:15 +03:00
Natalia Ukhorskaya
8c99183970 Write local functions to localVariables table 2015-05-07 13:23:03 +03:00
Natalia Ukhorskaya
35f9cb5405 Extract function: capture only local functions, not from local declarations 2015-05-07 13:22:10 +03:00
Natalia Ukhorskaya
35bacb4ac7 Refactoring: extract FrameVisitor class 2015-05-07 13:22:08 +03:00
Natalia Ukhorskaya
4848af5ef6 Minor: fix warnings 2015-05-07 13:22:06 +03:00
Alexey Tsvetkov
68603d188b JS: ExpressionDecomposer should always visit JsInvocation qualifier 2015-05-06 18:19:21 +03:00
Alexey Tsvetkov
8db104ef36 JS: decomposition should preserve 'this' context with invocations
#KT-7502 fixed
2015-05-06 18:19:21 +03:00
Nikolay Krasko
2d8dcaddd0 Compile modules with circular dependency as one module 2015-05-06 14:19:20 +03:00
Nikolay Krasko
3b18a44340 Allow to use Kotlin reflection in all modules with Kotlin 2015-05-06 14:18:27 +03:00
Nikolay Krasko
9d986d077c Move kotlin runtime library to end of classpath and remove duplicates with 'util' package 2015-05-06 14:18:24 +03:00
Nikolay Krasko
62a8174072 Fix compatibility issue 2015-05-05 16:43:24 +03:00
Michael Bogdanov
49f063522c Inline util functions renaming 2015-05-05 12:47:57 +03:00
Michael Bogdanov
fe23f23664 Support inlined functional expressions in debugger 2015-05-05 12:47:56 +03:00
Michael Bogdanov
e0aa64b8d2 Support functional expression in non-local returns 2015-05-05 12:47:56 +03:00
Valentin Kipyatkov
3a6e5ac78c Corrected test data 2015-05-02 14:03:26 +03:00
Valentin Kipyatkov
73f764abd0 Minor changes on code review 2015-05-02 14:03:26 +03:00
Valentin Kipyatkov
d1afff1612 Renamed intention 2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
2de466970d ReplaceWithInfixFunctionCallIntention - refactored 2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
9dd67cfc4d InfixCallToOrdinaryIntention - smaller range + minor code improvements 2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
1b7ac6bb02 Renamed intention to more clear name 2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
7d6145e105 J2K converter applies IfNullToElvisIntention automatically 2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
38f735dcac IfNullToElvisIntention - better behavior for var's + slightly refactored utility functions 2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
186dd5454d Added inspection based on IfNullToElvisIntention + moved intention based inspections into one file 2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
8d887f8780 In progress: KT-7442 Inspection + intention to replace "if (xxx == null) return ..' with elvis 2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
c52f69538d Fixed test data 2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
1daf12cf70 ReplaceItWithExplicitFunctionLiteralParamIntention - better caret position 2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
01a8ff0860 Refactored ReplaceItWithExplicitFunctionLiteralParamIntention 2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
c7937f181b Refactored ReplaceExplicitFunctionLiteralParamWithItIntention 2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
65d59467a8 Renamed intention 2015-05-02 14:03:23 +03:00
Valentin Kipyatkov
175806a902 "Make types implicit in lambda" intention - adapted to new lambda syntax + do not work on closing brace 2015-05-02 14:03:23 +03:00
Valentin Kipyatkov
c6b18efb15 "Remove unnecessary parentheses" intention - smaller range & refactoring 2015-05-02 14:03:23 +03:00
Valentin Kipyatkov
444da656e6 RemoveCurlyBracesFromTemplateIntention - shorter text 2015-05-02 14:03:23 +03:00
Valentin Kipyatkov
6467b07245 RemoveCurlyBracesFromTemplateIntention - minor refactoring 2015-05-02 14:03:23 +03:00
Valentin Kipyatkov
9996afbde3 Minor 2015-05-02 14:03:23 +03:00
Valentin Kipyatkov
3b87869bf7 ReconstructTypeInCastOrIsIntention - refactored 2015-05-02 14:03:22 +03:00
Valentin Kipyatkov
1780d469d5 Converted to Kotlin (step 2) 2015-05-02 14:03:22 +03:00
Valentin Kipyatkov
ea62fafa69 Converted to Kotlin (step 1) 2015-05-02 14:03:22 +03:00
Valentin Kipyatkov
995b82ae62 Renamed test data directory 2015-05-02 14:03:22 +03:00
Valentin Kipyatkov
b959c7f2c0 "Move lambda argument out of parentheses" intention - smaller range 2015-05-02 14:03:22 +03:00
Valentin Kipyatkov
077307b518 "Move lambda argument into parentheses" intention - slightly wider range 2015-05-02 14:03:22 +03:00
Valentin Kipyatkov
f631f97a22 "Move lambda function into parentheses" -> "Move lambda argument into parentheses" 2015-05-02 14:03:21 +03:00
Valentin Kipyatkov
5ace57bc5f "Move lambda function into parentheses" intention - smaller availability range 2015-05-02 14:03:21 +03:00
Valentin Kipyatkov
f1fa33548a "Make types explicit in lambda" intention renamed to "Specify explicit lambda signature" 2015-05-02 14:03:21 +03:00
Valentin Kipyatkov
f9d690db21 "Make types explicit in lambda" intention: not available on right brace + adapted to new lambda syntax + refactored 2015-05-02 14:03:21 +03:00
Valentin Kipyatkov
252399b9a9 "Invert if condition" intention - smaller availability range + refactored 2015-05-02 14:03:21 +03:00
Valentin Kipyatkov
cda3344250 ForEach to for-loop intention: smaller range + refactoring 2015-05-02 14:03:21 +03:00
Alexey Sedunov
ad9317d047 Specify Type Explicitly: Reuse injected instance of TemplateManager 2015-05-01 18:58:15 +03:00
Alexey Sedunov
ee83435830 Move: Implement member selection UI 2015-05-01 18:58:12 +03:00
Alexey Sedunov
d096e74c10 Move: Implement inspection which reports mismatch between package directive and containing directory 2015-05-01 18:58:09 +03:00
Alexey Sedunov
fe96a8563a Inspections: Implement multi-file test class 2015-05-01 17:17:00 +03:00
Alexey Sedunov
6c28380be0 Intentions: Implement multi-file test class 2015-05-01 17:16:59 +03:00
Alexey Sedunov
8879166f53 Move: Add intention to change file package without moving it physically 2015-05-01 17:16:57 +03:00
Svetlana Isakova
6ee59a06dd Removed obsolete cache for object literals 2015-04-30 21:24:51 +03:00
Svetlana Isakova
02301a0d70 KT-7597 ErrorType leaked into backend
#KT-7597 Fixed
2015-04-30 21:24:51 +03:00
Mikhail Glukhikh
f4dd685bbe Fix for a problem with smart cast impossible in a situation when it's not needed. A test for KT-3572. #KT-3572 Fixed. 2015-04-30 16:48:15 +03:00
Dmitry Jemerov
093878bd06 correctly implement JetSimpleNameReference.getTextRange() so that it doesn't include the @ character for references in labels
#KT-7560 Fixed
2015-04-30 16:12:03 +03:00
Denis Zharkov
ca8fb53ccd Fix old labels syntax in testData 2015-04-30 10:22:17 +03:00
Denis Zharkov
bcee052302 Revert "Temporary parse label definitions with both syntax versions"
This reverts commit 3e3535f8cf.
2015-04-30 10:16:42 +03:00
Denis Zharkov
02659ca22d Adjust project code to new labels syntax 2015-04-30 10:16:42 +03:00
Dmitry Jemerov
1d8786dabf allow renaming functions which are members of anonymous objects
#KT-5857 Fixed
2015-04-29 20:09:17 +02:00
Dmitry Jemerov
46841ef447 fix expected testdata for StubBuilderTestGenerated 2015-04-29 19:19:40 +02:00
Dmitry Jemerov
8cc9ea1c8a fix compilation 2015-04-29 18:06:29 +02:00
Dmitry Jemerov
f0b7830521 use new API for indexing identifiers and TODO items in Kotlin files that allows reusing the lexer for building both indices; index TODO items in KDoc comments
#KT-5677 Fixed
2015-04-29 18:38:10 +03:00
Dmitry Jemerov
09a7e87102 fix text navigation offset for secondary constructors; add some missing element types to FindUsagesProvider
#KT-7607 Fixed
2015-04-29 18:34:53 +03:00
Dmitry Jemerov
8574c38998 fix usages of ClassKind.TRAIT in kdoc 2015-04-29 16:50:30 +02:00
Dmitry Jemerov
3b8167a8c3 rename "Kotlin Trait" file template to "Kotlin Interface" 2015-04-29 16:50:29 +02:00
Dmitry Jemerov
702188bbe2 regenerate JS reserved words test 2015-04-29 16:50:22 +02:00
Dmitry Jemerov
b7b5333cb9 keyword completion test: trait -> interface 2015-04-29 16:50:21 +02:00
Zalim Bashorov
9b49221c74 Fix test case generator: escape modifiers when they used for declaration enum entry 2015-04-29 16:50:21 +02:00
Dmitry Jemerov
9701a8fc7e regenerate keyword strings; add testcase for 'interface' keyword 2015-04-29 16:50:20 +02:00
Dmitry Jemerov
f61a4a15cc rename "isTrait" to "isInterface": update test data 2015-04-29 16:50:20 +02:00
Dmitry Jemerov
cce1be3892 rename JetClass.isTrait() to isInterface(); rename ClassKind.TRAIT to INTERACE 2015-04-29 16:50:19 +02:00
Dmitry Jemerov
ee60ce8369 understand "interface" keyword as synonym for "trait" 2015-04-29 16:50:14 +02:00
Dmitry Jemerov
55cfd3b0c7 fix QuickFixTestGenerated$Expressions.testRemoveUselessCast 2015-04-29 16:33:39 +02:00
Dmitry Jemerov
94071550e3 fix JetPsiCheckerTest 2015-04-29 16:33:38 +02:00
Dmitry Jemerov
8258d72e23 don't report USELESS_CAST in case of casting to superype using 'as' 2015-04-29 16:33:32 +02:00
Dmitry Jemerov
f374eec8f1 deprecating types after colon 2015-04-29 16:33:24 +02:00
Nikolay Krasko
b7a4b3c17d Fix build 2015-04-29 16:44:41 +03:00
Alexander Udalov
c860f54461 Rewrite codegen tests which check time in deterministic way
Delete one useless test

 #KT-7621 Fixed
2015-04-29 15:28:10 +03:00
Nikolay Krasko
90cdb19324 Add origin for generated jvm overloads and tweak equals methods to distinguish them
- KT-7586 Strange navigation issue

 #KT-7586 Fixed
2015-04-29 15:20:31 +03:00
Nikolay Krasko
536b30af20 Refactoring: extract test method 2015-04-29 15:20:30 +03:00
Nikolay Krasko
b82f7d5c33 Refactoring: extract method for configuring runtime without sdk change 2015-04-29 15:20:29 +03:00
Nikolay Krasko
dbe6d2743d Drop deprecated API 2015-04-29 15:20:28 +03:00
Dmitry Jemerov
ed83385099 delete function which is now unused 2015-04-29 14:07:06 +02:00
Dmitry Jemerov
b98e2513f2 fix Common.testInSecondaryConstructorDelegationCall completion test: don't insert $ which breaks parsing of argument list and causes the block to be detached from the constructor itself 2015-04-29 14:07:06 +02:00
Dmitry Jemerov
d00b4ca27a update for modern constructor syntax 2015-04-29 14:07:06 +02:00
Dmitry Jemerov
f93eeeb563 fix tests by adding missing 'init' keywords to testdata 2015-04-29 14:07:05 +02:00
Dmitry Jemerov
98b8784ab0 drop deprecated syntax for anonymous initializer blocks 2015-04-29 14:07:04 +02:00
Ilya Ryzhenkov
35e82d4574 Propagate annotations when performing substitution on constructors #KT-7608 Fixed
Tests for deprecated warning on generic constructor.
2015-04-29 14:53:40 +03:00
Denis Zharkov
1fc742ffeb Add quickfix for java.lang.Class as annotation parameter 2015-04-29 14:03:11 +03:00
Denis Zharkov
fc5236244b Deprecate java.lang.Class as annotation parameter 2015-04-29 14:03:11 +03:00
Denis Zharkov
fa2af69942 Drop obsolete token in KDOC 2015-04-29 14:03:11 +03:00
Denis Zharkov
74bf4a3a7f Refine findElementOfClassAtRange to make it find labels 2015-04-29 14:03:11 +03:00
Denis Zharkov
ffa9b0aa7c Remove whitespaces before labels in project code
Whitespaces are not allowed after lates syntax changes
2015-04-29 14:03:11 +03:00
Denis Zharkov
3e3535f8cf Temporary parse label definitions with both syntax versions
Should be reverted after bootstrap
2015-04-29 14:03:11 +03:00
Denis Zharkov
44a55e5bf6 Adjust testData to new labels syntax 2015-04-29 14:03:11 +03:00
Denis Zharkov
5977302465 Adjust J2K to new labels syntax 2015-04-29 14:03:11 +03:00
Denis Zharkov
89c72d9400 Adjust PSI usages to new labels syntax 2015-04-29 14:03:11 +03:00
Denis Zharkov
241860d510 JetExpressionWithLabel: Convert to kotlin 2015-04-29 14:03:11 +03:00
Denis Zharkov
18bd8fa6ab JetExpressionWithLabel: .java -> .kt 2015-04-29 14:03:10 +03:00
Denis Zharkov
7d5a035aaf Regenerate lexers for new labels parsing rules 2015-04-29 14:03:10 +03:00
Denis Zharkov
507eefcaa5 Implement new parsing rules for labels
See changes in expressions.grm
2015-04-29 14:03:10 +03:00
Alexander Udalov
0d76634f6b Support SKIP_TXT directive in diagnostic tests
Don't render the whole 'kotlin' package in some tests, because test data will
change every time something is updated in built-ins
2015-04-29 01:36:20 +03:00
Alexander Udalov
43ac20e88a Move builtins dependency to the top in compiler-tests
When running tests locally, serialized built-ins located in dist/builtins
should have a higher priority than the ones in the bootstrap runtime, on which
almost every module depends by default. Also make it a 'runtime' dependency
because the binary files there can't really change anything at compile time
2015-04-29 01:36:20 +03:00
Alexander Udalov
890d18e7be Support external annotations in IDE when approximating flexible types 2015-04-29 01:09:36 +03:00
Alexander Udalov
2271ca1e81 Further simplify Java annotation resolution
Filter annotations by FQ name, get rid of unneeded properties, lazy values,
static import some stuff
2015-04-29 01:09:36 +03:00
Alexander Udalov
d7c810a4d0 Copy only nullability/mutability annotations to types
Also don't render copied annotations
2015-04-29 01:09:35 +03:00
Alexander Udalov
3369da94e4 Rename annotationUtils.kt -> LazyJavaAnnotations.kt 2015-04-29 01:03:57 +03:00
Alexander Udalov
24bad39e76 Don't use external annotations in compiler
External annotations will be re-enabled in the IDE later.

This fixes LazyJavaAnnotations which was breaking the contract of Annotations:
findAnnotation(FqName) was looking for external annotations, while iterator()
did not. This resulted in some inconsistencies in the compiler and IDE tests.

The other way, i.e. making iterator() look up external annotations, would have
been too costly for the compiler and with no clear benefit at the moment.
2015-04-29 01:03:57 +03:00
Alexander Udalov
fe602d34ce Support type annotations in cls stub builder
Also add test on decompiler
2015-04-29 01:03:56 +03:00
Alexander Udalov
0732b78853 Serialize/deserialize annotations on types 2015-04-29 01:03:55 +03:00
Alexander Udalov
88abcdbde5 Minor, remove workarounds for the fixed KT-5786 2015-04-29 01:03:55 +03:00
Alexander Udalov
b860f2c9d5 Minor, remove temporary bootstrapping workaround 2015-04-29 01:03:54 +03:00
Mikhail Glukhikh
054e85338d Fix for EA-68153 (incorrect nullability) 2015-04-28 17:37:56 +03:00
Mikhail Glukhikh
fd789cb68e Correct behaviour for break / continue inside function call arguments, including multiple ones. Additional tests. 2015-04-28 17:37:53 +03:00
Pavel V. Talanov
3702089396 Minor: Do not throw on getContainingDeclaration() in test
Fix build
2015-04-28 16:45:44 +03:00
Pavel V. Talanov
032846aba0 Remove a couple of usages of KotlinBuiltIns.getInstance() 2015-04-28 16:45:43 +03:00
asedunov
7d28f8d2cf Merge pull request #656 from JetBrains/rr/yole/kt7483
fix JetPsiUtil.deleteClass() so that it no longer tries to delete the en...
2015-04-28 15:49:42 +03:00
asedunov
e701f8878d Merge pull request #657 from JetBrains/rr/yole/kt5207
support custom folding regions for Kotlin
2015-04-28 15:46:24 +03:00
Mikhail Glukhikh
8f2a3e9d5f Fixed DFA for the last assignment / initialization in block. A relevant test. #KT-7599 Fixed. 2015-04-28 15:16:39 +03:00
Mikhail Glukhikh
60fdfb8441 Bug fix: DataFlowInfo.getCompleteTypeInfo (with a test) 2015-04-28 15:16:36 +03:00
Pavel V. Talanov
17c3bf6502 Minor: improve DescriptorUtils#getContainingModule()
Correctly handle the case when descriptor is a child of PackageViewDescriptor
2015-04-28 12:49:39 +03:00
Pavel V. Talanov
ac2cb9af74 Remove some usages of KotlinBuiltIns.getInstance()
Introduce DeclarationDescriptor.builtIns extension to get builtins where descriptors are available
Introduce various utilities in KotlinBuiltIns to check for primitive types and get fq names of builtins
2015-04-28 12:49:34 +03:00
Alexander Udalov
21d9c272c9 Minor, improve error messages when serializing error types 2015-04-28 00:54:31 +03:00
Alexander Udalov
95c4fb16f4 Minor, add toString() to PackageFragmentDescriptorImpl 2015-04-28 00:54:23 +03:00
Alexander Udalov
244f37aa74 Use preloader for JS compilation in build.xml
Similar to "new-kotlinc" macro. Before this change bootstrap-runtime appeared
earlier on the classpath than the newly built compiler, and so everything was
breaking when e.g. built-ins metadata had been updated (old version in the old
runtime was found earlier than the newer version in the compiler)
2015-04-28 00:52:03 +03:00
Alexander Udalov
167942f4bb Add constant "invoke" to OperatorConventions 2015-04-28 00:51:50 +03:00
Alexander Udalov
94eac98500 Reformat some code, optimize imports, remove unused
Mostly in JVM codegen intrinsics
2015-04-28 00:35:53 +03:00
Alexey Sedunov
7831e75955 Change Signature: Introduce variable for expression which can't be safely copied in the course of argument substitution 2015-04-27 23:02:39 +03:00
Alexey Sedunov
14f63cdce5 Change Signature: Substitute parameter references in default values of call expression arguments 2015-04-27 23:02:38 +03:00
Alexey Sedunov
cbbeec3790 Change Signature: Keep base function descriptor in JetParameterInfo 2015-04-27 23:02:36 +03:00
Alexey Sedunov
bd6031fea1 Change Signature: Initialize JetFunctionCallUsage delegate early to ensure consistent analysis results 2015-04-27 23:02:35 +03:00
Alexey Sedunov
720e696f6b Refactoring: Represent call-site default value of JetParameterInfo as JetExpression 2015-04-27 23:02:34 +03:00
Alexey Sedunov
8918ddbb0a Refactoring: Move jetRefactoringUtil.kt to idea module. Move compareDescriptors() and comparePossiblyOverridingDescriptors() to descriptorUtils.kt 2015-04-27 23:02:32 +03:00
Alexey Sedunov
d07fc878e7 Minor: Add default values to parameters of JetChangeInfo constructor 2015-04-27 23:02:31 +03:00
Dmitry Jemerov
3af20b5d45 support custom folding regions for Kotlin
#KT-5207 Fixed
2015-04-27 19:22:37 +02:00
Dmitry Jemerov
c2944181be fix JetPsiUtil.deleteClass() so that it no longer tries to delete the entire file when deleting a nested class or object
#KT-7483 Fixed
2015-04-27 18:37:43 +02:00
Natalia Ukhorskaya
47bc89775d Minor: add message for assert EA-64788 2015-04-27 18:43:48 +03:00
Natalia Ukhorskaya
328013a351 Evaluate Expression: box and unbox arguments before running JDIEval 2015-04-27 18:43:47 +03:00
Natalia Ukhorskaya
7e245e97ad JDIEval: add box and unbox methods 2015-04-27 18:43:47 +03:00
Natalia Ukhorskaya
7723a9f434 Fix evaluate expression on properties with getter 2015-04-27 18:43:46 +03:00
Dmitry Jemerov
cb553bc952 split string literal if Enter is pressed in the middle
#KT-6308 Fixed
2015-04-27 17:39:12 +02:00
Dmitry Jemerov
22aa8599c9 KotlinQuoteHandler: J2K 2015-04-27 17:39:11 +02:00
Dmitry Jemerov
e60ea6449a KotlinQuoteHandler: rename .java to .kt 2015-04-27 17:39:10 +02:00
Natalia Ukhorskaya
1ae3e9bbfe Subplugin-example: change scope for gradle-api library 2015-04-27 16:24:52 +03:00
Natalia Ukhorskaya
4d896b47e7 kotlin-android plugin: check minimal version of android plugin 2015-04-27 16:24:51 +03:00
Natalia Ukhorskaya
88e9439d25 kotlin-android plugin: use VariantDataList instead of list of Variant.
Support junit tests
Fix sourceRoot dependencies for productFlavors
#KT-7065 Fixed
#KT-7506 Fixed
2015-04-27 16:24:51 +03:00
Natalia Ukhorskaya
cb85da3162 Gradle: update kotlin-gradle-plugin dependencies 2015-04-27 16:24:50 +03:00
Natalia Ukhorskaya
2bccfa99e1 Gradle: update android test to use gradle 2.3 and android-plugin 1.1.0 2015-04-27 16:24:49 +03:00
Natalia Ukhorskaya
4265994118 Update gradle-api to 2.3 2015-04-27 16:24:49 +03:00
Natalia Ukhorskaya
8ed628cef5 Update README: how to update gradle-api.jar 2015-04-27 16:24:48 +03:00
Natalia Ukhorskaya
f0e93d2df5 Gradle: Include java sources to sources, not to classpath
#KT-7503 Fixed
2015-04-27 16:24:47 +03:00
asedunov
3da49df471 Merge pull request #650 from JetBrains/rr/yole/kt7531
override hierarchy: convert some more code to Kotlin, sort out nullabili...
2015-04-27 16:21:37 +03:00
Dmitry Jemerov
478b18e376 remove two final occurrences of 'class object' from testdata 2015-04-27 15:14:34 +02:00
Dmitry Jemerov
fd5c3e3b9d remove obsolete test for completing 'object' after 'class' 2015-04-27 15:14:33 +02:00
Dmitry Jemerov
cbbb2fcd48 fix JetParsingTestGenerated 2015-04-27 15:14:33 +02:00
Dmitry Jemerov
683d727c72 drop deprecated syntax for class objects 2015-04-27 15:14:33 +02:00
Dmitry Jemerov
61a02a9d5a convert isOverrideHierarchyElement() to extension function 2015-04-27 14:59:15 +02:00
Pavel V. Talanov
2bc4dde959 Minor: do not set default value in QualifiedExpressionResolver 2015-04-27 15:57:35 +03:00
Pavel V. Talanov
430b20cb74 Minor: missed copyright 2015-04-27 15:57:10 +03:00
Pavel V. Talanov
1a5efacbf3 Refactor frontend components
Make dependencies more explicit
Move components out of ExpressionTypingServices
Make ExpressionTypingUtils a true utility class, refactor stuff out
Extract new components: FakeCallResolver, MultiDeclarationResolver, ValueParameterResolver
2015-04-27 15:56:59 +03:00
Pavel V. Talanov
50ae8182b8 Refactor ExpressionTypingVisitorDispatcher to make it more "componentlike" 2015-04-27 15:56:43 +03:00
Pavel V. Talanov
1e5108a2ab Drop unused InjectorForLazyTopDownAnalyzerBasic 2015-04-27 15:56:36 +03:00
asedunov
c39dd59703 Merge pull request #649 from JetBrains/rr/yole/override-varargas
Override/Implement: J2K; correctly generate call to super method with varargs
2015-04-27 15:48:53 +03:00
Svetlana Isakova
4f0d541493 Resolve function references independently of target type
KT-7564 AbstractDiagnosticsTest.checkAllResolvedCallsAreCompleted() fails on tests with function references
 #KT-7564 Fixed
2015-04-27 13:32:47 +03:00
Ilya Gorbunov
5ee17c0c26 Remove deprecated split usages in build-protobuf-lite script. 2015-04-24 20:50:29 +03:00
Ilya Gorbunov
d734dad4b8 Replace deprecated methods in FormatHtmlUtil. 2015-04-24 20:50:28 +03:00
Michael Bogdanov
39fabda611 New diagnostic for Java default method call via super in trait 2015-04-24 18:54:09 +03:00
Michael Bogdanov
0854c601b4 Fix non local returns to functional expressions 2015-04-24 18:54:09 +03:00
Alexey Tsvetkov
012bc8f1db Revert "Simple workaround for problem described in KT-6437"
This reverts commit 34d408eb7b.
2015-04-24 18:19:34 +03:00
Alexey Tsvetkov
764c506aaa JS: do not generate break for top level return during inline 2015-04-24 18:19:34 +03:00
Alexey Tsvetkov
cbdfaeb998 Minor in JS: store js test directives in a list 2015-04-24 18:19:34 +03:00
Alexey Tsvetkov
bced28ee41 Minor in JS: simplify count vars directive 2015-04-24 18:19:34 +03:00
Alexey Tsvetkov
900147385d JS: do not alias 'this' literal in a receiver position 2015-04-24 18:19:34 +03:00
Alexey Tsvetkov
6b09b4c2b6 JS: do not create variable for result, if inline call is only return subexpression 2015-04-24 18:19:34 +03:00
Alexey Tsvetkov
ea41bc4231 JS: do not create variable for result, if inline function has one top level return 2015-04-24 18:19:34 +03:00
Alexey Tsvetkov
c9b24510bb JS: do not create var for result if statement is 'someVar = inlineCall()' 2015-04-24 18:19:33 +03:00
Alexey Tsvetkov
fd09d4d837 Minor in JS: moved test for additional vars during inline to separate directory 2015-04-24 18:19:33 +03:00
Alexey Tsvetkov
7a0787bc25 JS: converted FunctionInlineMutator to Kotlin 2015-04-24 18:19:33 +03:00
Alexey Tsvetkov
3bad62840e JS: changed file extension FunctionInlineMutator.kt->.java 2015-04-24 18:19:33 +03:00
Dmitry Jemerov
d013221942 override hierarchy: convert some more code to Kotlin, sort out nullability
#KT-7531 Fixed
2015-04-24 15:27:00 +02:00
Dmitry Jemerov
0cf77dfb10 override/implement: correctly generate call to super method with vararg arguments
#KT-7580 FIxed
2015-04-24 14:59:46 +02:00
Ilya Ryzhenkov
bcb0b499f4 Workaround to allow QualifiedExpressionResolver to be created without an Injector. Should be fixed by code owner. 2015-04-24 15:44:44 +03:00
Ilya Ryzhenkov
79388d0dbf Update test data for highlighter tests on deprecations. 2015-04-24 15:44:43 +03:00
Ilya Ryzhenkov
879b6a0a3f Implement deprecated validator. 2015-04-24 15:44:42 +03:00
Ilya Ryzhenkov
288e1baa87 Tests, messages and infra for deprecated symbol reporting 2015-04-24 15:44:32 +03:00
Ilya Ryzhenkov
c8920b8158 Include arrayOf() into list of constant values for annotations 2015-04-24 15:44:30 +03:00
Ilya Ryzhenkov
aec37a35dc Add renderAccessors flag to DescriptorRenderer to render property accessors as "setter for …" 2015-04-24 15:44:29 +03:00
Ilya Ryzhenkov
c2b3bcc95f SymbolUsageValidator infrastructure 2015-04-24 15:44:28 +03:00
Dmitry Jemerov
f5019371bd OverrideImplementMethodsHandler: cleanup after conversion 2015-04-24 14:16:00 +02:00
Dmitry Jemerov
e9c669c841 OverrideImplementMethodsHandler: J2K 2015-04-24 14:05:58 +02:00
Dmitry Jemerov
5ba89206b7 OverrideImplementMethodsHandler: rename to .kt 2015-04-24 14:00:37 +02:00
Stanislav Erokhin
b3aadfd5e0 Performance workaround for assert call. 2015-04-24 09:02:47 +03:00
Stanislav Erokhin
8582f4ab47 Fixed memory leak 2015-04-24 09:02:47 +03:00
Alexander Udalov
d1f94e8468 Get rid of confusing javaToKotlinCovariant map 2015-04-24 02:09:34 +03:00
Alexander Udalov
d2cd7b00bb Map intrinsic companion objects in JavaToKotlinClassMap
Get rid of multiple usages of IntrinsicObjects where JavaToKotlinClassMap was
already used, simplify code, and support loading of *CompanionObject as Kotlin
built-in companions from Java code.

Also fix a small bug where Boolean was considered a class with an intrinsic
companion in IntrinsicObjects, although it was not
2015-04-24 02:09:26 +03:00
Alexander Udalov
987206bf95 Merge JavaToKotlinClassMap and JavaToKotlinClassMapBuilder 2015-04-24 02:09:05 +03:00
Alexander Udalov
43c11b2925 Merge CollectionClassMapping into JavaToKotlinClassMap 2015-04-24 02:09:05 +03:00
Alexander Udalov
a59fa5015e Merge KotlinToJavaTypesMap into JavaToKotlinClassMap
Also use this new Kotlin->Java mapping in RuntimeTypeMapper instead of
inheriting directly from JavaToKotlinClassMapBuilder
2015-04-24 02:09:05 +03:00
Alexander Udalov
b956fb5eb0 Pull Java<->Kotlin primitive type mapping up to JavaToKotlinClassMapBuilder 2015-04-24 02:09:04 +03:00
Alexander Udalov
4b07ec11ea Change Class<?> parameter to ClassId in JavaToKotlinClassMap implementations 2015-04-24 02:09:04 +03:00
Alexander Udalov
0dec1eaaad Refactor RuntimeTypeMapper, extract IntrinsicObjects-related behavior
Make it similar to other JavaToKotlinClassMapBuilder implementations to be able
to get rid of that inheritance
2015-04-24 02:09:04 +03:00
Alexander Udalov
ad02706294 Get rid of unnecessary map in RuntimeTypeMapper 2015-04-24 02:09:04 +03:00
Alexander Udalov
73de54f557 Get rid of unneeded additional map in JavaToKotlinClassMap 2015-04-24 02:09:03 +03:00
Alexander Udalov
deff3968db Simplify KotlinToJavaTypesMap, use only one map 2015-04-24 02:09:03 +03:00
Alexander Udalov
23a792aa44 Somewhat simplify mapping of JVM primitive types 2015-04-24 02:09:03 +03:00
Alexander Udalov
0a66c78449 Disperse primitive type mapping in JavaToKotlinClassMap 2015-04-24 02:09:02 +03:00
Alexander Udalov
d86b9c8f54 Drop unused primitive wrapper mapping in JavaToKotlinClassMap 2015-04-24 02:08:37 +03:00
Alexander Udalov
6a158c2b16 Remove unused method from PlatformToKotlinClassMap 2015-04-24 02:08:37 +03:00
Alexander Udalov
3014238189 Drop unused MutablePackageFragmentProvider 2015-04-24 02:08:36 +03:00
Alexander Udalov
34fa61675d Replace more eager asserts in project with lazy 2015-04-24 02:08:22 +03:00
Alexander Udalov
1a48b5750e Minor, remove unnecessary unwrapping of VariableAsFunctionResolvedCall
Almost all of its methods delegate to functionCall already
2015-04-23 22:09:02 +03:00
Alexander Udalov
07c2442405 Make $default methods non-private, avoid generating accessors for them
#KT-5786 Fixed
2015-04-23 22:09:02 +03:00
Pavel V. Talanov
dc05596ce0 Create FqName safely in KotlinCliJavaFileManagerImpl#findPackage
#KT-7501 Fixed
2015-04-23 21:10:58 +03:00
Mikhail Glukhikh
525b9e63ae Refactoring: checkType && checkImplicitCast returned to DataFlowUtils, PROCESSED unboxing returned, StringTemplateVisitor made local 2015-04-23 18:25:52 +03:00
Mikhail Glukhikh
8b241b8c05 Dead block removed (function literal inside do...while) 2015-04-23 18:25:50 +03:00
Mikhail Glukhikh
b40fe9d5ba Refactoring: TypeInfoFactory.createTypeInfo() without type -> noTypeInfo(), getNotNullType -> getTypeNotNull, nullability refined, style fixes 2015-04-23 18:25:47 +03:00
Nikolay Krasko
3e1c3e9dfe Don't search for NonClasspathClassFinder classes and package during Kotlin resolve 2015-04-23 17:38:07 +03:00
Nikolay Krasko
f972e12331 Use constant for empty resolve result 2015-04-23 17:38:05 +03:00
Michael Bogdanov
df2900c4e4 Introduced ParameterDescriptor type 2015-04-23 15:41:59 +03:00
Michael Bogdanov
53b8a1d56e Fix for KT-7544: Backend fails when inlining nested calls with reified type parameter and default value parameter
#KT-7544 Fixed
2015-04-23 15:41:59 +03:00
Dmitry Jemerov
72648d305e better folding for function literals
#KT-4090 Fixed
2015-04-23 13:37:35 +02:00
Dmitry Jemerov
048bb79946 JetFoldingBuilder: J2K and some cleanup 2015-04-23 13:37:34 +02:00
Dmitry Jemerov
185e3b8135 JetFoldingBuilder: rename .java to .kt 2015-04-23 13:37:34 +02:00
Ilya Gorbunov
526348b207 Implement toTypedArray as non-intrinsic.
Remove unused intrinsic method.
2015-04-23 14:10:42 +03:00
Stanislav Erokhin
c3f825a711 Update to idea 141.713.2 2015-04-23 13:50:47 +03:00
Denis Zharkov
470ad93328 Do not report inspection "no reflection" in annotation entries
Annotation codegen shouldn't use something from reflection.jar
2015-04-23 11:22:39 +03:00
Denis Zharkov
14df5b72b7 Minor, uncomment throws with class literal in code 2015-04-23 11:22:39 +03:00
Denis Zharkov
99fffc1b4b Optimize migrational intentions
- Run read/write action just once for all files
- Ignore file if no task is found
2015-04-23 11:22:39 +03:00
Denis Zharkov
3cb6b61a47 Add quickfix for migrating Java annotation method calls 2015-04-23 11:22:39 +03:00
Denis Zharkov
634b1a9568 Add workaround for KT-7544
Inlining lambdas into objects or non-inlineable lambdas does not work well.

Should be reverted after issue will be fixed
2015-04-23 11:22:39 +03:00
Denis Zharkov
fef568dbf0 Refactor migrational intentions
- Make them independent on element
- Extract common parts into JetWholeProjectModalByTaskCollectionAction class
2015-04-23 11:22:38 +03:00
Denis Zharkov
ef79b260f4 Extract common pattern in simple intention factories 2015-04-23 08:27:44 +03:00
Denis Zharkov
1b42e2fdcc Deprecate calls of annotations' methods 2015-04-23 08:27:43 +03:00
Denis Zharkov
29bf24b7d3 Use properties of Java annotations in codegen tests
Retain obsolete versions until support for methods in Java annotations is dropped
2015-04-23 08:27:42 +03:00
Denis Zharkov
6ca7d2aad7 Regenerate test data
Add properties for Java annotations
2015-04-23 08:27:41 +03:00
Denis Zharkov
93bbd2cbbc Java: load annotations methods as properties 2015-04-23 08:10:31 +03:00
Alexander Udalov
a0502d99f4 Minor, use substringBeforeLast instead of hand-written code 2015-04-23 03:20:11 +03:00
Michael Nedzelsky
7e69c414d4 JS: support new names for built-in metadata files starting with dot 2015-04-23 03:17:31 +03:00
Alexander Udalov
20cd360b07 Rename built-in metadata files starting with dot
Files starting with dot are considered as hidden on Unix systems, and sometimes
are ignored by the tools. For example, Android build tools do not package such
files to the resulting application, which causes Kotlin reflection to fail
there

 #KT-7088 Fixed
2015-04-23 03:17:29 +03:00
Alexey Sedunov
40864a554b Introduce Parameter: Add "Introduce default value" checkbox to the dialog 2015-04-22 23:56:48 +03:00
Alexey Sedunov
298dfa545f Introduce Parameter: Implement "Introduce lambda parameter" 2015-04-22 23:56:47 +03:00
Alexey Sedunov
2cc39995bb Extraction Engine: Simplify helper API 2015-04-22 23:56:46 +03:00
Zalim Bashorov
9dd527b76c Fix printing file size for TeamCity statistics 2015-04-22 19:52:00 +03:00
Ilya Gorbunov
7fba979372 Generate to[Primitive]Array() methods for generic arrays and collections.
#KT-4180 Fixed
2015-04-22 18:21:37 +03:00
Ilya Gorbunov
d18b086113 Refactor stdlib generator engine.
Introduce special class to hold generic function properties.
2015-04-22 18:21:35 +03:00
Ilya Gorbunov
343edcf8d0 Specify explicitly when to generate platformName annotation. 2015-04-22 18:21:33 +03:00
Ilya Gorbunov
592e6582b3 Provide isInfinite() and isFinite() functions for Double and Float.
#KT-7126 Fixed
2015-04-22 18:21:31 +03:00
Ilya Gorbunov
5dacb5a745 Provide average() method for iterables, sequences and arrays.
#KT-3843 Fixed
2015-04-22 18:21:29 +03:00
Ilya Gorbunov
f402ae8540 Ensure families and primitives have stable order, so that the code is generated in the same order each time. 2015-04-22 18:21:26 +03:00
Ilya Gorbunov
9759be5493 Generate sum() methods for arrays, iterables and sequences of Byte and Short. These overloads got explicit platformName.
Heuristics to decide when to set platformName.
#KT-3714
2015-04-22 18:21:24 +03:00
Ilya Gorbunov
ccc3646bb8 Generate coerceAtLeast, coerceAtMost and coerceIn extension functions for numbers and other Comparables. 2015-04-22 18:20:47 +03:00
Ilya Gorbunov
ade69ec0e9 Provide the emptySequence() method.
sequenceOf() with no arguments is equivalent to emptySequence().
#KT-7233 Fixed
2015-04-22 17:57:26 +03:00
Ilya Gorbunov
ae28379493 Provide Enumeration<T>.asSequence() method to make Enumeration usable in chained operations
#KT-6828 Fixed
2015-04-22 17:57:24 +03:00
Ilya Gorbunov
899a01e8c2 Rename sequence() extension to asSequence() 2015-04-22 17:57:20 +03:00
Zalim Bashorov
60347e87aa Print size of some kotlin2js artifacts for TeamCity statistics 2015-04-22 16:37:55 +03:00
Zalim Bashorov
5ec8d72949 Minor: download Rhino as dependency instead of store it in the repository 2015-04-22 15:46:02 +03:00
Nikolay Krasko
06fd6c4ba2 Allow to override teamcity bootstrap compiler for "bootstrap.build.no.tests" 2015-04-22 14:13:21 +03:00
Nikolay Krasko
0be99c8efc Add parameters to control what kotlin dependencies to download 2015-04-22 14:13:20 +03:00
Evgeny Gerashchenko
f5677d8424 Converted JetPsiUtil.getElementTextWithContext() to Kotlin extension function. 2015-04-22 14:10:00 +03:00
Zalim Bashorov
f59506c5e0 Minor: update rhino to 1.7.6 2015-04-22 12:48:22 +03:00
Zalim Bashorov
1ef9b9db1f JS backend: add the support function expression
#KT-7242 Fixed
2015-04-22 12:48:22 +03:00
Zalim Bashorov
02071c5bdd Minor: move function expression tests to separate directory 2015-04-22 12:48:21 +03:00
Zalim Bashorov
6e60a31b73 JS backend: don't translate labels on expression
#KT-7487 Fixed
2015-04-22 12:48:20 +03:00
Zalim Bashorov
1fe93c302a Minor in JS tests: move dummy abstract classes into one file 2015-04-22 12:48:20 +03:00
Evgeny Gerashchenko
9a4fbd35bd Supported Kotlin usages of Java class in automatic variable renamer. 2015-04-22 11:33:28 +03:00
Evgeny Gerashchenko
a9f9ca4ccb Supported Java usages in automatic variable renamer. 2015-04-22 11:33:27 +03:00
Evgeny Gerashchenko
3897548204 Minor. More post-conversion code cleanup. 2015-04-22 11:33:27 +03:00
Evgeny Gerashchenko
f7f90c8592 Minor. Renamed misleading function. 2015-04-22 11:33:27 +03:00
Evgeny Gerashchenko
5eadf4db17 Minor. Moved stuff from companion object to top-level. 2015-04-22 11:33:26 +03:00
Evgeny Gerashchenko
11020cacfd Renamed JetLineMarkerProvider to KotlinLineMarkerProvider. 2015-04-22 11:33:26 +03:00
Evgeny Gerashchenko
04e438f4f8 Post-conversion code cleanup. 2015-04-22 11:33:26 +03:00
Evgeny Gerashchenko
94311f262b Moved JetLineMarkerProvider. 2015-04-22 11:33:26 +03:00
Evgeny Gerashchenko
de9b26ac77 Convert JetLineMakerProvider to Kotlin. Auto-convert. 2015-04-22 11:33:25 +03:00
Evgeny Gerashchenko
09cff44207 Automatic renaming overloads in class or object.
#KT-4642 fixed
2015-04-22 11:33:25 +03:00
Evgeny Gerashchenko
d383e03a81 Automatic renaming top-level overloads.
#KT-4642 in progress
2015-04-22 11:33:25 +03:00
Evgeny Gerashchenko
8fe3a1d366 Added test for inheritor renamer (Kotlin subclasses of Java class). 2015-04-22 11:33:25 +03:00
Evgeny Gerashchenko
e1f6dfa52d EA-67458 - assert: UnusedSymbolInspection.hasNonTrivialUsages 2015-04-22 11:32:17 +03:00
Natalia Ukhorskaya
74e68950f9 Evaluate expression: support inline functions from source code 2015-04-22 10:56:39 +03:00
Natalia Ukhorskaya
9f2955c434 Minor: move methods 2015-04-22 10:35:22 +03:00
Natalia Ukhorskaya
50ad0af399 KotlinBytecodeToolWindow: analyze inline functions from multi declarations and from iterator call in for 2015-04-22 10:35:21 +03:00
Natalia Ukhorskaya
6a7bf4808d Minor: extract function 2015-04-22 10:35:20 +03:00
Natalia Ukhorskaya
715b9ad859 Collect inline functions using visitor 2015-04-22 10:35:20 +03:00
Natalia Ukhorskaya
f936689db3 Add test for KotlinBytecodeToolWindow 2015-04-22 10:35:19 +03:00
Natalia Ukhorskaya
907f0db7be Do not include files that contains only top level classes or objects to LightClassForPackage 2015-04-22 10:35:18 +03:00
Natalia Ukhorskaya
f575890732 Change J2K API for Web Demo 2015-04-22 10:35:17 +03:00
Ilya Gorbunov
9ed2cb3858 Provide zip() and merge() overloads for primitive arrays with themselves.
Better predicting size of resulting list of plus() operation.
#KT-4968 Fixed
2015-04-22 03:19:30 +03:00
Ilya Gorbunov
be11394adf Rename copyToArray() to toTypedArray(). 2015-04-21 21:27:28 +03:00
Ilya Gorbunov
5eb3c0bb5e Rename *array() factory methods to *arrayOf(). 2015-04-21 21:27:26 +03:00
Ilya Gorbunov
58310d172f Deprecate sequence implementations in favor of sequence operations. 2015-04-21 21:27:24 +03:00
Ilya Gorbunov
b2b98502e9 Deprecate Int.latch and Int.indices extensions. 2015-04-21 21:27:22 +03:00
asedunov
e9fe91ad2e Merge pull request #646 from JetBrains/rr/yole/kt2016
Find Usages: Provide element description for HighlightUsagesDescriptionLocation
2015-04-21 20:10:45 +03:00
Dmitry Jemerov
05c17a11c6 provide element description for HighlightUsagesDescriptionLocation
#KT-2016 Fixed
2015-04-21 18:45:33 +02:00
Alexey Sedunov
d815634233 Control-Flow: Assign pseudo-values to local functions (except those
declared directly in the block)
2015-04-21 17:10:46 +03:00
Alexey Sedunov
5b1906fb13 Control-Flow: Add tests for pseudo-values of labeled expressions 2015-04-21 17:10:45 +03:00
asedunov
417611e2be Merge pull request #644 from JetBrains/rr/yole/kt6669
Override/Implement Members: Escape identifiers in generated super method call
2015-04-21 16:42:23 +03:00
Dmitry Jemerov
3e8f163f1e don't complete KDoc tag names if we have a non-empty prefix which is not a tag name
#KT-7476 Fixed
2015-04-21 15:37:32 +02:00
Dmitry Jemerov
efa41bfb2a support quick doc for completion items
#KT-4346 Fixed
2015-04-21 15:36:38 +02:00
Dmitry Jemerov
eeb2728b7e show "defined in" for declarations in quick doc popup
#KT-7320 Fixed
2015-04-21 15:36:37 +02:00
Dmitry Jemerov
0c6cd3b422 KotlinQuickDocumentationProvider: cleanup after J2K done 2015-04-21 15:36:36 +02:00
Dmitry Jemerov
a13e38578a KotlinQuickDocumentationProvider: cleanup after conversion 2015-04-21 15:36:36 +02:00
Dmitry Jemerov
b1b138b424 KotlinQuickDocumentationProvider: J2K 2015-04-21 15:36:35 +02:00
Dmitry Jemerov
3d21824929 JetQuickDocumentationProvider: rename to .kt 2015-04-21 15:36:35 +02:00
Mikhail Glukhikh
e64dab0ae9 Review fixes after automatic code analysis 2015-04-21 15:29:34 +03:00
Mikhail Glukhikh
27625b04e1 Refactoring of JetTypeInfo / BindingContext. Loop data flow analysis corrected.
Now BindingContext includes expression type info instead of jump out possible, data flow info and expression type.
getType() was added into BindingContext, getType() and recordType() were added into BindingTrace.
JetTypeInfo now includes also jump possible flag and jump point data flow info.
Old TypeInfoWithJumpInfo deleted.
TypeInfoFactory introduced to create JetTypeInfo instances.
A pack of extra tests for break / continue in loops added.
2015-04-21 15:29:07 +03:00
Dmitry Jemerov
14b92404cd add test for private-to-this visibility in traits 2015-04-21 14:13:30 +02:00
Dmitry Jemerov
8d922dda4d private members of traits are not open by default
#KT-4171 Fixed
2015-04-21 14:13:29 +02:00
Denis Zharkov
036f31f36b j2k: Generate class literals in throws 2015-04-21 08:08:32 +03:00
Denis Zharkov
5ce4f4cad1 Temporary comment out throws usage in code
Until new `throws` will be in bootstrap
2015-04-21 08:08:31 +03:00
Denis Zharkov
6ef2340eb5 Migrate type of throws parameter to KClass
Change declaration, testData and codegen parts for `throws`
2015-04-21 08:08:31 +03:00
Denis Zharkov
e1dfdc582d Minor. Drop trivial override 2015-04-21 08:08:31 +03:00
Denis Zharkov
8d7aa3fdcd Drop throws usages with changes in Java code 2015-04-21 08:08:31 +03:00
Denis Zharkov
5b9aff12d0 Drop throws usages that looks redundant
Probably appeared after j2k-conversion
2015-04-21 08:08:31 +03:00
Alexander Udalov
6f8694976d Fix test data 2015-04-20 23:30:05 +03:00
Michael Nedzelsky
d0616ed8bd fix KT-7512 JS: project with external library lead to deadlock and IDEA freeze due to wrong storage manager configured
#KT-7512 Fixed
2015-04-20 21:02:01 +03:00
Alexander Udalov
ba927318d9 Minor, add PackageFragmentProvider.Empty 2015-04-20 19:09:36 +03:00
Alexander Udalov
3d928a0842 Refactor deserialization initialization in built-ins and JS
BuiltinsPackageFragment was only designed to work with a single instance alive.
Because of this, it was creating deserialization subsystem upon initialization.
This was not working perfectly in JS where it was used, because multiple
storage managers, class caches and other components were created for each
package, leading to different concurrency errors and performance hits. Also in
the near future another package fragment will be needed to represent the
built-in package "kotlin.reflect"
2015-04-20 19:09:35 +03:00
Alexander Udalov
19ddb4b510 Minor, remove unused stuff from MutableClassDescriptor 2015-04-20 19:09:35 +03:00
Alexander Udalov
2a3f658ea7 Minor, add missing space to error message 2015-04-20 18:57:31 +03:00
Alexander Udalov
02f05a1d9a Don't use private Sun API in JsContext 2015-04-20 18:57:30 +03:00
Michael Bogdanov
d34f103652 Rollback 'java8-test' module sdk to project one 2015-04-20 16:31:14 +03:00
Michael Bogdanov
f821f5a491 Fix source level 2015-04-20 15:51:41 +03:00
Andrey Breslav
c95eca10ef Avoid wrapping AssertionError over and over again, see KT-7501 2015-04-20 15:48:43 +03:00
Michael Bogdanov
ef17ac6c0f Use jdk8 for java8-test module 2015-04-20 13:36:42 +03:00
Mikhail Glukhikh
853483cf38 DataFlowInfo.getPossibleTypes() with two arguments rolled back 2015-04-20 12:01:46 +03:00
Michael Bogdanov
2f88f830b8 Test for KT-5969: Codegen overrides all java 8 default methods with delegation to unexisting Timpl
#KT-5969 Fixed
2015-04-18 14:45:16 +03:00
Michael Bogdanov
115c4b78c0 Added sam test on java8 interface with default method 2015-04-18 14:45:16 +03:00
Michael Bogdanov
5c18cfebd1 Support several java file compiling 2015-04-18 14:45:15 +03:00
Michael Bogdanov
7e3403f602 Add java8 test module and run configuration with initial test 2015-04-18 14:45:15 +03:00
Denis Zharkov
cc9322fbdd Add quickfix for usages of javaClass<T>() in annotations loaded from Java 2015-04-17 18:52:17 +03:00
Denis Zharkov
7325a459e5 Ignore diagnostic on tests supposed to be dropped soon 2015-04-17 18:52:16 +03:00
Denis Zharkov
f53baebf89 Show warning on usages of javaClass<T>() in annotations loaded from Java 2015-04-17 18:50:37 +03:00
Denis Zharkov
482b4e3688 Minor, split and clean tests
Tests that are using javaClass supposed to be deleted soon
while other ones just check that annotation loaded correctly
and shold use class literals
2015-04-17 17:40:41 +03:00
Alexey Sedunov
7a02bdae23 Extraction Engine: Fix implicit "this" analysis under smart-casts 2015-04-17 16:30:29 +03:00
Alexey Sedunov
bf13f7e637 Introduce Parameter: Do not remove unused parameters if new parameter is extracted with default value 2015-04-17 16:30:28 +03:00
Alexey Sedunov
6e2076d602 Change Signature: Process Kotlin-side calls of Java methods overriding Kotlin declarations 2015-04-17 16:30:27 +03:00
Alexey Sedunov
58bee8c57f Change Signature: Fix element bound to UsageInfo 2015-04-17 16:30:26 +03:00
Alexey Sedunov
8a04a604ce Usages Search: Introduce extension for usages of methods overriding Kotlin functions/properties 2015-04-17 16:30:25 +03:00
Michael Bogdanov
4775858e1c Analyze inline function with reified type parameters in ByteCodeToolWindow when inlinie disabled 2015-04-17 14:24:36 +03:00
Michael Bogdanov
48aef1eb28 Fix for KT-6895: Compile error on Android (EXCEPTION FROM SIMULATION) when declaring locals in an inline function
#KT-6895 Fixed
2015-04-17 14:24:35 +03:00
Michael Bogdanov
0080ebd386 Fix for KT-7273: Bad local variable type when using non-local return
#KT-7273 Fixed
2015-04-17 14:24:34 +03:00
Michael Bogdanov
51d5b52f69 refactorings 2015-04-17 14:24:34 +03:00
Michael Bogdanov
6465c6b680 Refactoring: extracted split method into intervals 2015-04-17 14:24:33 +03:00
Michael Bogdanov
2f88baf641 Refactoring: added Interval abstraction to represent TryCatchBlock and LocalVar nodes 2015-04-17 14:24:33 +03:00
Alexey Sedunov
45428895ad Change Signature: Always put last lambda argument outside of value argument list 2015-04-17 13:04:57 +03:00
Alexey Sedunov
daebf569ab Extract Function: Allow capturing local function references as lambda parameters 2015-04-17 13:04:56 +03:00
Mikhail Glukhikh
86bb0d5bc5 Build fix. The second version of DataFlowInfo.getPossibleTypes returning also the original type added and used. 2015-04-17 11:49:44 +03:00
Valentin Kipyatkov
6421f48c07 Further code improvements during review 2015-04-16 22:00:54 +03:00
Valentin Kipyatkov
1aa123dadb InsertExplicitTypeArguments - minor code improvements 2015-04-16 22:00:54 +03:00
Valentin Kipyatkov
2466aa64fe InsertCurlyBracesToTemplateIntention - no i18n 2015-04-16 22:00:54 +03:00
Valentin Kipyatkov
7ccb20977d ConvertToStringTemplateIntention - minor code improvements 2015-04-16 22:00:54 +03:00
Valentin Kipyatkov
a8d629f609 ConvertToForEachLoopIntention - renamed 2015-04-16 22:00:54 +03:00
Valentin Kipyatkov
a155b0c860 ConvertToForEachLoopIntention - smaller range + refactored 2015-04-16 22:00:54 +03:00
Valentin Kipyatkov
fc8b046694 ConvertToForEachFunctionCallIntention - smaller availability range + code refactoring 2015-04-16 22:00:53 +03:00
Valentin Kipyatkov
c2335790b5 ConvertToExpressionBodyIntention - refactoring 2015-04-16 22:00:53 +03:00
Valentin Kipyatkov
94480e3d5c Renamed in test data 2015-04-16 22:00:53 +03:00
Valentin Kipyatkov
0334ad1152 ConvertToConcatenatedStringIntention - minor code improvements + fixed bug 2015-04-16 22:00:53 +03:00
Valentin Kipyatkov
b980d98af6 ConvertToBlockBodyAction - refactoring 2015-04-16 22:00:53 +03:00
Valentin Kipyatkov
b201e60081 ConvertReceiverToParameterIntention - no i18n 2015-04-16 22:00:53 +03:00
Valentin Kipyatkov
24203a8a31 ConvertPropertyToFunctionIntention - no i18n + a bit better range 2015-04-16 22:00:52 +03:00
Valentin Kipyatkov
0698bb3866 ConvertParameterToReceiverIntention - made available on parameter name only + minor 2015-04-16 22:00:52 +03:00
Valentin Kipyatkov
960a45e4cc Code simplifications 2015-04-16 22:00:52 +03:00
Valentin Kipyatkov
ff44f1fa32 ConvertFunctionToPropertyIntention minor code improvements + to work in the end of name 2015-04-16 22:00:52 +03:00
Valentin Kipyatkov
636f80ee48 ConvertAssertToIfWithThrowIntention: smaller availability range + minor code refactorings 2015-04-16 22:00:52 +03:00
Valentin Kipyatkov
1268684ced Smaller availability range for RemoveBracesIntention + refactored it and AddBracesIntention 2015-04-16 22:00:52 +03:00
Valentin Kipyatkov
dc6c6f13d5 OperatorToFunctionIntention and SwapBinaryExpressionIntention: more narrow availability range + no i18n 2015-04-16 22:00:52 +03:00
Valentin Kipyatkov
00a4beae1d Refactoring of JetSelfTargetingInspection 2015-04-16 22:00:51 +03:00
Valentin Kipyatkov
894bf000e1 JetSelfTargetingInspection - deprecated i18n usage 2015-04-16 22:00:51 +03:00
Alexey Tsvetkov
8c01298930 JS: generated tests 2015-04-16 21:17:12 +03:00
Alexey Tsvetkov
ff5090136c JS: do not extract expressions, when inline call can be expression 2015-04-16 21:17:12 +03:00
Alexey Tsvetkov
bf5300a849 JS: fixed tryCatchFinally test because of KT-7328 bug 2015-04-16 21:17:12 +03:00
Alexey Tsvetkov
78a6b95f5a JS: added test case, where inline call in "for" is used 2015-04-16 21:17:12 +03:00
Alexey Tsvetkov
27a1861263 JS: lambda constructor cannot have sideEffect 2015-04-16 21:17:12 +03:00
Alexey Tsvetkov
97a1a13235 JS: inline componentN functions
#KT-7294 fixed
2015-04-16 21:17:12 +03:00
Alexey Tsvetkov
a9d38e8d22 JS: decomposition of vars 2015-04-16 21:17:11 +03:00
Alexey Tsvetkov
e80059e4a2 JS: decomposition of "while" and "do while" 2015-04-16 21:17:11 +03:00
Alexey Tsvetkov
71ea487828 JS: decomposition of "if" 2015-04-16 21:17:11 +03:00
Alexey Tsvetkov
c0111d6e33 JS: decomposition of binary operator
#KT-6437 fixed
 #KT-7359 fixed
2015-04-16 21:17:11 +03:00
Alexey Tsvetkov
fd844ad6e3 JS: decomposition of ternary operator 2015-04-16 21:17:11 +03:00
Alexey Tsvetkov
3782b9d382 JS: decomposition of array access 2015-04-16 21:17:11 +03:00
Alexey Tsvetkov
8b68f6d9ab JS: decomposition of array literal 2015-04-16 21:17:11 +03:00
Alexey Tsvetkov
92942fd1c5 JS: decomposition of invocation/"new" 2015-04-16 21:17:11 +03:00
Alexey Tsvetkov
b7e26c3bf7 JS: extract expressions preceding inline call 2015-04-16 21:17:11 +03:00
Alexey Tsvetkov
f900cb36c5 JS: added inline evaluation order tests generation 2015-04-16 21:17:10 +03:00
Alexey Tsvetkov
616872558c Minor in JS: made JsNew qualifier mutable 2015-04-16 21:17:10 +03:00
Alexey Tsvetkov
5eadac9750 Minor in JS: use acceptStatement where appropriate 2015-04-16 21:17:10 +03:00
Alexey Tsvetkov
fafd4ef805 Minor in JS: deleted unused function 2015-04-16 21:17:10 +03:00
Alexey Tsvetkov
a356847006 JS: added @NotNull annotation to JsVisitorWithContext 2015-04-16 21:17:10 +03:00
Alexey Tsvetkov
be5e73a5bc JS: make qualifier mutable 2015-04-16 21:17:10 +03:00
Alexey Tsvetkov
6ff4785cb0 JS: turn off inline call extraction at translation 2015-04-16 21:17:10 +03:00
Alexey Tsvetkov
24aa19bd49 JS: fixed nullability issues after conversion 2015-04-16 21:17:10 +03:00
Alexey Tsvetkov
1f705eb77a JS: converted JsVisitor to Kotlin 2015-04-16 21:17:10 +03:00
Alexey Tsvetkov
cd92e2de73 JS: changed file extension JsVisitor(.java->.kt) 2015-04-16 21:17:09 +03:00
Alexey Tsvetkov
05c44db80f JS: inline all calls in a statement in one pass 2015-04-16 21:17:09 +03:00
Alexey Tsvetkov
c8453ec0d9 JS: removed unused JsContext methods 2015-04-16 21:17:09 +03:00
Alexey Tsvetkov
add0aca746 JS: removed StatementContext, InsertionPoint 2015-04-16 21:17:09 +03:00
Alexey Tsvetkov
e94c79f838 JS: added type parameter to JsContext 2015-04-16 21:17:09 +03:00
Alexey Tsvetkov
efba2a2372 JS: make JsEmpty singleton 2015-04-16 21:17:09 +03:00
Alexey Tsvetkov
dd13e91883 JS: converted JsEmpty to kotlin 2015-04-16 21:17:09 +03:00
Alexey Tsvetkov
ba1eb5f848 JS: changed extension JsEmpty.java->.kt 2015-04-16 21:17:09 +03:00
Svetlana Isakova
d40fd440b0 KT-7433 Type inference pushes Unit inside generic function with lower bound constraint
#KT-7433 Fixed
 #KT-7351 Fixed
2015-04-16 21:02:42 +03:00
Mikhail Glukhikh
a37ae6ba6d Test fixed accordingly with KT-3175 2015-04-16 20:48:48 +03:00
Mikhail Glukhikh
109e0abb6d Review fixes for mutable variable smart casting (mostly refactoring).
DataFlowValue.isPredictable() introduced instead of isStableIdentifier().
Parenthesized assignments are treated correctly.
2015-04-16 20:11:03 +03:00
Mikhail Glukhikh
e97e792674 Review fixes for smart casts in / out loops.
LoopTypeInfo became TypeInfoWithJumpInfo rewritten in Kotlin.
Fixed a bug with break inside Elvis inside a loop, a pack of related tests added.
isTrueConstant moved to JetPsiUtil.
2015-04-16 20:11:01 +03:00
Mikhail Glukhikh
d5aed62410 Smart casts for local variables not captured in a closure and not changed in a loop, see #KT-3175.
isLocalVariable added. Assignment / initialization analysis.
Control whether a variable is changed in a loop at the beginning and at the end of the loop.
Control whether a variable is captured in a closure. #KT-3175  Fixed. #KT-2266  Fixed.
Tests for variable null safety and for variables is/as operations.
Loop / closure / variable property tests are included.
Old tests changed in accordance with KT-3175. In particular, all three of testSmartcastImpossible were fixed.
2015-04-16 20:10:58 +03:00
Mikhail Glukhikh
e4b1046a54 Minor bug fix: necessary !! added 2015-04-16 20:10:56 +03:00
Pavel V. Talanov
a21abeba33 Fix kotlin-gradle-plugin to correctly process java source files
Do not remove outdirectory from cp in maven: this is needed for gradle-plugin build to see files compiled by gmaven
    this may cause problems with running mvn install without clean for kotlin
Remove special magic with groovy-output in gradle-plugin pom.xml
2015-04-16 16:40:55 +03:00
Pavel V. Talanov
3329136c9c Fix test data for quickfix tests
Depending on Module and ModuleBuilder from runtime
2015-04-16 16:40:44 +03:00
Pavel V. Talanov
818a6b5c2e Fix various tests and test data
Since we now distinguish between binaries and java source roots
2015-04-16 16:40:37 +03:00
Pavel V. Talanov
d76f293dc9 Speed up finding kotlin binaries and java files in CLI
Change VirtualFileFinder api to accept ClassId and adjust usages
Introduce KotlinCoreProjectEnvironment to create special KotlinCliJavaFileManager which shares cache with CliVirtualFileFinder
Truly distinguish between java source roots and binary roots: don't search for source files in classpath and vica versa
Implement JvmDependenciesIndex
2015-04-16 16:40:28 +03:00
Pavel V. Talanov
94cc847c48 Drop module "ktm" scripts and support java source roots in "xml" modules
Drop kotlin.modules package from runtime
Move adapted classes into compiler
Unsupport files with "ktm" extension
Delete code for loading module scripts
Drop tests for module scripts
Separate section for java source roots in xml script generator/parser
2015-04-16 16:40:19 +03:00
Pavel V. Talanov
09947d8f58 Move dangerous ClassId.fromString() to test 2015-04-16 16:40:12 +03:00
Natalia Ukhorskaya
336886f115 Fix KotlinBytecodeToolWindow: show bytecode correctly when there is inline function from another module
#KT-7409 Fixed
2015-04-16 14:55:29 +03:00
Natalia Ukhorskaya
06eb749f5a Android tests: copy kotlin-reflect.jar to test android application 2015-04-16 14:48:54 +03:00
Alexander Udalov
ccae0311c3 Merge InlineDescriptorUtils to InlineUtil 2015-04-16 14:35:07 +03:00
Alexander Udalov
16e6bc347f Move inline-related stuff from 'descriptors' to 'frontend'
Move to package org.jetbrains.kotlin.resolve.inline
2015-04-16 14:35:06 +03:00
Alexander Udalov
d93a7a9547 Minor, simplify some checks in InlineUtil 2015-04-16 14:35:05 +03:00
Alexander Udalov
7cbbc5f98d Minor, rename InlineUtil.getInlineType -> getInlineStrategy 2015-04-16 13:55:07 +03:00
Alexander Udalov
4a2fac6f40 Add utility InlineUtil.isInline instead of interface method in SimpleFunctionDescriptor
Also fix some warnings and reformat along the way
2015-04-16 13:55:07 +03:00
Alexander Udalov
9ed8ad8dd4 Replace eager assert with lazy in PseudocodeVariableDataCollector
For some reason some IDE tests would fail after the simple change. Add explicit
toString() call on the descriptor, to be investigated later
2015-04-16 13:55:06 +03:00
Alexander Udalov
1b0a78077f Use assert with lazy message in project instead of eager one 2015-04-16 13:55:06 +03:00
Alexander Udalov
44e35cad29 Make 'sure' an inline function with a lazy parameter
Also replace some other non-lazy stdlib function usages with the new lazy
'sure'
2015-04-16 13:55:06 +03:00
Denis Zharkov
b2a2e4ae92 Add bytecodeText test for annotation with default value
It checks that no value is emitted if argument is not specified
2015-04-16 10:40:20 +03:00
Denis Zharkov
97e4a899cf Add specific warning when KClass literal expected 2015-04-16 10:40:20 +03:00
Denis Zharkov
98ffa3b475 Render Class-constant as javaClass<T>() 2015-04-16 10:40:20 +03:00
Denis Zharkov
2a03994ecb JVM: Write signature for annotation parameter 2015-04-16 10:40:20 +03:00
Denis Zharkov
294eb1dceb Load annotation parameter's type for ctr as contravariant
See comment in code
2015-04-16 10:40:20 +03:00
Denis Zharkov
8f0e290dec Create additional constructor for java annotation with Class-parameter
One of them with KClass<*> parameters and other with java.lang.Class<*>.

It's needed just for backward compatibility, and second one is deprecared.
2015-04-16 10:40:20 +03:00
Denis Zharkov
f5111180c3 Load Class<?> as KClass<*> for Java annotations parameters 2015-04-16 10:40:20 +03:00
Denis Zharkov
0abc63261d Inject reflectionTypes into LazyJavaResolverContext 2015-04-16 10:40:20 +03:00
Denis Zharkov
07a4e8a405 Minor, move module property to LazyJavaResolverContext
All usages of LazyJavaPackageFragmentProvider.module
got it through LazyJavaResolverContext
2015-04-16 10:40:19 +03:00
Denis Zharkov
f942f6ac8e Move ReflectionTypes to builtins 2015-04-16 10:40:19 +03:00
Denis Zharkov
cc17f7d82d JVM: Support using KClass as annotation parameter type 2015-04-16 10:40:19 +03:00
Denis Zharkov
82674e56b9 Frontend: Allow using KClass as annotation parameter type 2015-04-16 10:40:19 +03:00
Nikolay Krasko
c155b1a455 Set permissions for kotlin compiler on linux and mac even on teamcity 2015-04-16 02:27:50 +03:00
Nikolay Krasko
e9fcdec3b0 Always download bootstrap compiler to "dependencies\bootstrap-compiler" 2015-04-16 00:25:04 +03:00
Nikolay Krasko
1c4335ec25 Test background threads are stopped 2015-04-16 00:25:03 +03:00
Nikolay Krasko
e304ee0a29 Print project name and command line for debug 2015-04-16 00:25:03 +03:00
Nikolay Krasko
8ed54a6dba Additional stop for JobScheduler
Background threads prevents class loader collect

 #KT-7172 In Progress
2015-04-16 00:25:02 +03:00
Nikolay Krasko
ea47e29757 Update ZipFileCache and LowMemoryWatcher from new Idea 2015-04-16 00:25:01 +03:00
Alexey Sedunov
d036edb5c6 Extraction Engine: Respect smart casts applied to "this" references
#KT-7447
2015-04-15 23:20:54 +03:00
Alexey Sedunov
aa0930ea60 Change Signature: Skip secondary constructor calls when looking for primary constructor usages
#KT-7445 Fixed
2015-04-15 23:20:52 +03:00
Alexey Sedunov
02b0c4c7eb Name Suggester: Do not strip "get"/"is"/"set" prefixes if remaining sequence is not upper-cased
#KT-7399 Fixed
2015-04-15 23:20:51 +03:00
Valentin Kipyatkov
3842d71ee3 simplify code, fix test, use CompletionUtil.findIdentifierPrefix() 2015-04-15 19:59:59 +02:00
Valentin Kipyatkov
be92ad2f2d # This is a combination of 2 commits.
# The first commit's message is:

use more simple API

# This is the 2nd commit message:

More simple code
2015-04-15 19:53:16 +02:00
Dmitry Jemerov
7f5b1d489e KDoc typed handler: autoinsert pair brackets and parentheses
#KT-7347 fixed
2015-04-15 19:53:14 +02:00
Dmitry Jemerov
5bbbadeb37 add a token for inline Markdown links; add test for identifier links with labels 2015-04-15 19:48:46 +02:00
Dmitry Jemerov
2aba59cbec KDocCompletionContributor code review: use resolution facade instead of KotlinCodeAnalyzer; inherit CompletionSessionBase 2015-04-15 19:48:45 +02:00
Evgeny Gerashchenko
4f412f77d1 Updated some test data so it won't be affected by automatic renamers. 2015-04-15 20:13:51 +03:00
Evgeny Gerashchenko
260b8ae431 Automatic renaming subclasses.
#KT-4642 in progress
2015-04-15 19:15:18 +03:00
Evgeny Gerashchenko
e6e5e28e1d Automatic renaming properties, variables, parameters when renaming class.
#KT-4642 in progress
2015-04-15 19:14:20 +03:00
Ilya Gorbunov
a20f1bdb6e Change the expected diagnostic output after reduce signature has been changed. 2015-04-15 17:34:09 +03:00
Ilya Gorbunov
043b27bfe5 Make more generic signature for reduce and reduceRight methods.
Fixes #KT-2287
2015-04-15 17:34:08 +03:00
Michael Nedzelsky
08e92ac746 KT-7357 JS: extension functions from external KJS library couldn't be called in some cases
#KT-7357 Fixed
#KT-7382 Fixed
2015-04-15 17:00:08 +03:00
Michael Nedzelsky
6842c98285 JS: tests for KT-7357: extension functions from external KJS library couldn't be called in some cases 2015-04-15 17:00:06 +03:00
Dmitry Jemerov
d32ff50579 escape identifiers in generated super method call in Override/Implement
#KT-6669 Fixed
2015-04-15 15:44:11 +02:00
Dmitry Jemerov
66aa15f470 pull up "New Kotlin File" action next to "New Java class" 2015-04-15 15:29:26 +02:00
Alexander Udalov
4ad603ba12 Fix AssertionError in JsLibraryStdDetectionUtil
#KT-7462 Fixed
2015-04-15 15:23:08 +03:00
Alexander Udalov
aab5d1c3e3 Minor, update built-ins serializer message
.kotlin_class_names was deleted and .kotlin_name_table was renamed
2015-04-15 01:16:07 +03:00
Alexander Udalov
1b7ba320c7 Fix handling of paths with spaces in kotlinc script 2015-04-15 01:16:07 +03:00
Onorio Catenacci
84acaa9bf6 Changed the path for calling kotlinc-jvm.bat to use short (8.3) names so that this will work correctly with paths with spaces in them 2015-04-15 01:16:06 +03:00
Mikhail Glukhikh
1544755838 Test refactoring 2015-04-14 19:11:26 +03:00
Mikhail Glukhikh
8184bccda1 Extended loop data flow analysis was implemented. #KT-6283 Fixed. #KT-6284 Fixed.
A local descendant of JetTypeInfo added to save separately current data flow info and jump point data flow info together with jump opportunity.
Now data flow analysis know about loop bodies that must be executed at least once (do...while, while(true) until the first break/continue).
A set of tests for smart casts in and after loops.
Existing DoWhile and WhileTrue resolve tests corrected in accordance.
2015-04-14 19:11:22 +03:00
Valentin Kipyatkov
bb808b5620 Created module idea-test-framework and moved classes needed for idea tests there
Moved tests for completion and their test data into module idea-completion
2015-04-14 18:53:01 +03:00
Valentin Kipyatkov
63825c45dd First step: moved classes of test framework to another package 2015-04-14 18:53:00 +03:00
Ilya Gorbunov
409209ba3c Don't count on split removing trailing empty entries. 2015-04-14 15:45:04 +03:00
Evgeny Gerashchenko
7b77ce58a5 Added assertion. There should be either space symbol after prefix (e.g., //ABSENT: A) or no symbols at all (e.g. //RUNTIME). 2015-04-14 15:01:29 +03:00
Alexander Udalov
91bb789758 Fix builtins-serializer source root in compiler sources jar 2015-04-14 12:56:50 +03:00
Alexander Udalov
5d5d1b759d Minor, simplify jar inclusion in build.xml 2015-04-14 12:56:01 +03:00
Alexander Udalov
3a4659c074 Include resources/kotlinManifest.properties to kotlin-for-upsource.jar 2015-04-14 12:52:33 +03:00
Natalia Ukhorskaya
8bd7fe1464 Gradle: add kotlin outputDir to java classPath if kotlin files are up-to-date 2015-04-14 10:41:42 +03:00
Natalia Ukhorskaya
5e6250511b Gradle: support for 1.2.0-beta2 com.android.application plugin 2015-04-14 10:41:41 +03:00
Natalia Ukhorskaya
34205c3ff0 NPE in Surround with Action on empty line 2015-04-14 10:41:40 +03:00
Valentin Kipyatkov
38c154ace4 Fixed exception in conversion from Java 2015-04-13 18:14:57 +03:00
Dmitry Jemerov
9434e4bee9 mark wrapper methods that pass default values of parameters as synthetic
#KT-7314 Fixed
2015-04-13 15:26:20 +02:00
Dmitry Jemerov
900a16a315 deprecate required classes for traits 2015-04-13 16:22:22 +03:00
Michael Bogdanov
7b0f6018dc Fix nameless function inlining 2015-04-13 16:11:21 +03:00
Michael Bogdanov
7025a4f933 Test framewrk update: check lambda inlining 2015-04-13 16:11:21 +03:00
Michael Bogdanov
27c40edeb4 InlineTestUtil convertion 2015-04-13 16:11:21 +03:00
Michael Bogdanov
9c74b22262 Rename InlineTestUtil.java to *.kt 2015-04-13 16:11:21 +03:00
Michael Bogdanov
e200b97ca4 Inline callable references
#KT-6900 Fixed
2015-04-13 16:11:21 +03:00
Dmitry Jemerov
991db29731 drop covariant specialisation for supertypes 2015-04-13 15:28:50 +03:00
Evgeny Gerashchenko
9de5acf9a6 Removed indeterministic test. We have analogous test for diagnostics, so it is not a big problem. 2015-04-13 15:21:40 +03:00
Evgeny Gerashchenko
993ba6161f Fixed compilation. 2015-04-13 15:21:23 +03:00
Evgeny Gerashchenko
508c7a58b6 KT-7377 Throwable: Empty PSI elements should not be passed to createDescriptor from UnusedReceiverParameterInspection
#KT-7377 fixed
2015-04-13 15:04:00 +03:00
Valentin Kipyatkov
e3bdc18aea KT-7344 Completion of second type argument in class instantiation does not work
#KT-7344 Fixed
2015-04-13 14:30:03 +03:00
Valentin Kipyatkov
3fad68ad4c Completion: no "else" in first when entry 2015-04-13 14:30:03 +03:00
Valentin Kipyatkov
3faf6cc3e8 Correct value passed as containingDeclarationOrModule to SmartCastUtils 2015-04-13 14:30:02 +03:00
Valentin Kipyatkov
33f119a65a Renamed "containingDeclaration" parameters to "containingDeclarationOrModule" to make it more clear that we can pass ModuleDescriptor instead of precise containing declaration 2015-04-13 14:30:02 +03:00
Valentin Kipyatkov
f73a41aa15 Completion should not generate deprecated lambda syntax 2015-04-13 14:30:02 +03:00
Valentin Kipyatkov
723bf0ecf9 Minor 2015-04-13 14:30:02 +03:00
Valentin Kipyatkov
5954307147 Fixed KT-7308 Exception on completion inside anonymous object
#KT-7308 Fixed
2015-04-13 14:30:02 +03:00
Valentin Kipyatkov
8b5be4febc Minor 2015-04-13 13:41:44 +03:00
Valentin Kipyatkov
f02e2b3ed6 Corrected generated tests after rebase 2015-04-13 13:41:44 +03:00
Valentin Kipyatkov
03270af430 Added scrollbar 2015-04-13 13:41:43 +03:00
Valentin Kipyatkov
066a7c3002 Code style setting for packages to always use star imports and UI for it 2015-04-13 13:41:43 +03:00
Valentin Kipyatkov
1a54886720 Basic UI for import code style settings 2015-04-13 13:41:43 +03:00
Valentin Kipyatkov
a8d737bf87 One more test for import nested classes setting 2015-04-13 13:41:43 +03:00
Valentin Kipyatkov
04b2bdcc79 Added test for "import packages" code style setting 2015-04-13 13:41:43 +03:00
Valentin Kipyatkov
0f9858bb75 Code style setting to import nested classes 2015-04-13 13:41:43 +03:00
Nikolay Krasko
be896b7d8e Fix test data: non-inherited elements are shown in file structure popup 2015-04-13 13:03:02 +03:00
Nikolay Krasko
b359cd2af0 Update to idea 141.588.1 2015-04-13 13:03:00 +03:00
Valentin Kipyatkov
965f3da2b1 Fixed bug with bad conversion on paste when top-level java class copied 2015-04-13 11:05:31 +03:00
Alexey Sedunov
aff17a9fa1 Introduce Parameter: Implement dialog advertisement and switch 2015-04-10 21:57:10 +03:00
Alexey Sedunov
f038a2d1d8 In-place Introduce: Track active instance of KotlinInplaceVariableIntroducer 2015-04-10 21:57:09 +03:00
Alexey Sedunov
68a5b05af9 Introduce Parameter: Implement dialog UI 2015-04-10 21:57:08 +03:00
Alexey Sedunov
da14222c4a Introduce Parameter: Do not apply to expressions of type Unit or Nothing 2015-04-10 21:57:07 +03:00
Alexey Sedunov
54392e7064 Minor: Fix refactoring name 2015-04-10 21:57:06 +03:00
Alexander Udalov
92fa107471 Delete three diagnostic tests which rendered parts of JRE
- PackageLocalClassNotImportedWithDefaultImport.kt goes to codegen multi-file
  tests. File in java.lang moved to kotlin.jvm, which seems irrelevant to the
  test, because java.lang is prohibited by the VM
- MergePackagesWithJava.kt (KT-689, Java and Kotlin in the same package) and
  kt955.kt (Unable to import from default package) are considered too obsolete
  to even test and are thus deleted

Also check that there's no more than 1000 lines in the .txt file in diagnostic
tests.
2015-04-10 20:35:18 +03:00
Alexander Udalov
94df191f86 Regenerate tests 2015-04-10 20:26:34 +03:00
Alexander Udalov
69e7a25b08 Drop InnerTestClasses annotation, use Java reflection 2015-04-10 20:26:33 +03:00
Alexander Udalov
5c06204658 Move ExpectLoadError from tests to testData
To avoid loading all sources under "compiler/tests" in each test. Saves about
20-25% when running LoadJavaTestGenerated
2015-04-10 20:26:33 +03:00
Ilya Gorbunov
845d755fdd Make Char-related constants to be properties in Char companion object. 2015-04-10 15:22:02 +03:00
Alexander Udalov
646e81bc61 Regenerate tests 2015-04-10 12:34:31 +03:00
Alexander Udalov
b2e0eda953 Include protobuf to kotlin-for-upsource.jar 2015-04-10 12:32:46 +03:00
Michael Bogdanov
67c2f7105b Fix for KT-6863: Internal compiler error folding functions
#KT-6863 Fixed
2015-04-10 08:59:27 +03:00
Michael Bogdanov
a24d845bd0 Test for KT-7009: VerifyError: Bad type on operand stack in daload
#KT-7009 Obsolete
2015-04-10 08:59:27 +03:00
Michael Bogdanov
824d1ac556 Fix for KT-7306: Implicit array conversions cause ClassCastException at runtime
#KT-7306 Fixed
2015-04-10 08:59:26 +03:00
Alexander Udalov
405038b2d8 Change sources of kotlin-runtime project library
Use sources from the project instead of ones in kotlin-runtime-sources.jar.

This is not very accurate, but fixes the problem with debugging anything from
'core' in the project (sources from the project were clashing with the sources
from the library)
2015-04-09 19:46:49 +03:00
Alexander Udalov
6182b3ff5c Prohibit Array::class, require type arguments for reified parameters 2015-04-09 19:46:47 +03:00
Valentin Kipyatkov
a0d2b00287 Code corrections on code review 2015-04-09 19:09:09 +03:00
Valentin Kipyatkov
498f24b98b KT-7291 Copy/paste of java declaration with preceding comment omitted does not convert it to Kotlin propertly
#KT-7291 Fixed
2015-04-09 19:09:09 +03:00
Valentin Kipyatkov
bfadd489a3 Imports on paste tests: generate result if does not exist and use default target file text 2015-04-09 19:09:09 +03:00
Valentin Kipyatkov
c5a785577b Imports on paste: code refactoring 2015-04-09 19:09:09 +03:00
Valentin Kipyatkov
4a3592be50 Imports on paste: don't try to import symbols not visible from current module 2015-04-09 19:09:09 +03:00
Valentin Kipyatkov
ea7732883e Tests: use errors dump instead of ALLOW_UNRESOLVED_REFERENCE 2015-04-09 19:09:08 +03:00
Valentin Kipyatkov
84a6f72ab3 Imports on paste: fixed overloaded extensions import 2015-04-09 19:09:08 +03:00
Valentin Kipyatkov
8d31a5c3a6 Imports on paste: do not suggest to import already imported extensions 2015-04-09 19:09:08 +03:00
Valentin Kipyatkov
0abc912208 Test to generate expected output if absent 2015-04-09 19:09:08 +03:00
Valentin Kipyatkov
93f1210f25 Imports on paste: added checking of symbols to import into test + fixed bug on copy/paste import/package directive 2015-04-09 19:09:08 +03:00
Valentin Kipyatkov
11380358ee Converted to Kotlin 2015-04-09 19:09:08 +03:00
Valentin Kipyatkov
fe14107848 More simple code doing the same 2015-04-09 19:09:07 +03:00
Valentin Kipyatkov
f6e363abb8 J2K: replace overloads with optional parameters not only for constructors but for methods too 2015-04-09 19:09:07 +03:00
Valentin Kipyatkov
ff4ff78307 Use of Kotlin wrapper methods instead of Application.runReadAction/runWriteAction and CommandProcessor.executeCommand 2015-04-09 19:09:07 +03:00
Valentin Kipyatkov
00660bc59e No explicit runReadAction needed 2015-04-09 19:09:07 +03:00
Valentin Kipyatkov
2440371cd9 Refactored code 2015-04-09 19:09:07 +03:00
Valentin Kipyatkov
3efc6cd383 J2K: default parameter values generated for secondary constructors too 2015-04-09 19:09:07 +03:00
Valentin Kipyatkov
9b80d49bab Generated constructors with default parameter values are marked with kotlin.jvm.overloads annotation 2015-04-09 19:09:06 +03:00
Valentin Kipyatkov
1afbb961ee KT-7135 Java to Kotlin converter should update usages in Java and Koltin code in the rest of the project
#KT-7135 Fixed
2015-04-09 19:09:06 +03:00
Andrey Breslav
b810ebbb0e Report exceptions from analyzer in the editor
They are rendered as errors and positioned on those expressions that cause them
2015-04-09 18:15:08 +03:00
Alexey Sedunov
5b3ff187da Create from Usage: Do not search usages of non-local properties 2015-04-09 13:49:25 +03:00
Alexey Sedunov
918eda0c9b Introduce Parameter: Do not suggest containers of object and non-inner classes 2015-04-09 13:49:24 +03:00
Alexey Sedunov
80134b9b2b Introduce Parameter: Support parameters without default values 2015-04-09 13:49:23 +03:00
Alexey Sedunov
13776f5bbd Introduce Parameter: Duplicate search & replace 2015-04-09 13:49:22 +03:00
Alexey Sedunov
3bb86a63cc Introduce Parameter: Remove parameters which become unused after occurrence replacement 2015-04-09 13:49:21 +03:00
Alexey Sedunov
53a6827ad8 Introduce Parameter: Initial support 2015-04-09 13:49:20 +03:00
Alexey Sedunov
06960be3ad Minor: Extract findElementByComment() function 2015-04-09 13:49:18 +03:00
Alexey Sedunov
4af608ef84 Parser: Recovery for parameter with missing name 2015-04-09 13:49:17 +03:00
Alexey Sedunov
7d4d3e537c Minor: Change signature of JetParameterInfo constructor 2015-04-09 13:49:16 +03:00
Alexey Sedunov
95a8db458b Minor: Generify KotlinInplaceVariableIntroducer 2015-04-09 13:49:15 +03:00
Alexey Sedunov
ee8df94f19 Minor: Extract container selection logic 2015-04-09 13:49:14 +03:00
Alexey Sedunov
d3605a5352 Minor: Move getValueParameters() function to jetPsiUtil.kt 2015-04-09 13:49:13 +03:00
Alexey Sedunov
b47c700a27 Introduce Variable: Fix replacement of multiple occurrences when variable name is changed in the template editor
#KT-7244 Fixed
2015-04-09 13:49:12 +03:00
Michael Bogdanov
20653090d3 Test for KT-7338: Incorrect code is emitted for is-checks with array types, resulting in java.lang.VerifyError
#KT-7338 Obsolete
2015-04-09 11:10:33 +03:00
Michael Bogdanov
efd4a3ce84 Print bytecode on test fail 2015-04-09 09:25:26 +03:00
Michael Bogdanov
ce13b3a44a Optimization fix 2015-04-09 09:25:26 +03:00
Michael Bogdanov
99496f8f52 Update some test due smap generation 2015-04-09 09:25:26 +03:00
Michael Bogdanov
c582b1d9ce Generate linenumber if needed after inlining 2015-04-09 09:25:26 +03:00
Michael Bogdanov
8cd496556c Generate local var table 2015-04-09 09:25:26 +03:00
Evgeny Gerashchenko
5c0a81fae1 Minor. Renamed test data. default object -> companion object. 2015-04-08 21:15:28 +03:00
Evgeny Gerashchenko
8ef2718e30 Added assert clarification for EA-66572 2015-04-08 21:15:28 +03:00
Evgeny Gerashchenko
4ba0d2aba5 Updated quasi-indeterministic test data. After introducing new line marker provider, which invokes lazy resolution, diagnostic is reported on different element. 2015-04-08 21:15:28 +03:00
Michael Nedzelsky
c62b1fac69 JS: fix support auto import for class names 2015-04-08 16:50:48 +03:00
Michael Nedzelsky
15ebab4f7e JS: add tests for quickfix: autoimport for Kotlin/Javascript projects 2015-04-08 16:50:45 +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
01b8718ac7 Minor. More proper short-circuit check. 2015-04-08 15:33:49 +03:00
Evgeny Gerashchenko
eeeb741d42 Added test for obsolete bug and removed workaround in code. 2015-04-08 15:14:16 +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
d24d750d34 Added workaround for bug in IDEA test framework. Without it, tests didn't make much sense. 2015-04-08 15:14:14 +03:00
Evgeny Gerashchenko
33e34c759d KT-2190 Highlight usages invoked on "throw" or "return" should highlight all exit-points of function
#KT-2190 fixed
2015-04-08 15:14:13 +03:00
Evgeny Gerashchenko
86f91ade1a Minor. Fixed syntax error in test data. 2015-04-08 15:14:11 +03:00
Evgeny Gerashchenko
6041d566d9 Line markers for recursive calls. 2015-04-08 15:14:10 +03:00
Evgeny Gerashchenko
06c05193a6 Extracted method. 2015-04-08 14:38:04 +03:00
Evgeny Gerashchenko
85e9f2207e Minor. Moved test data to subdirectory. 2015-04-08 14:38:04 +03:00
Evgeny Gerashchenko
a2bc9cd7de Added optimization for isReferenceTo. It quickly says false for
references from non-source code to anywhere except same file.
2015-04-08 14:38:04 +03:00
Michael Nedzelsky
28f320498c remove AbstractNavigateToLibraryTest 2015-04-08 01:15:24 +03:00
Michael Nedzelsky
c09acf89e5 NavigateToLibrarySourceTestGenerated: add tests for projects with kotlin/jvm and kotlin/js modules 2015-04-08 01:15:21 +03:00
Michael Nedzelsky
054d905374 add NavigateToStdlibSourceTest 2015-04-08 01:15:18 +03:00
Michael Nedzelsky
7b17ae3b8b add testUtils 2015-04-08 01:15:15 +03:00
Michael Nedzelsky
c0e6fa62a0 NavigateToLibrarySourceTest -> NavigateToLibrarySourceTestGenerated 2015-04-08 01:15:13 +03:00
Michael Nedzelsky
039b9a8e16 JetCotoImplementationTest -> KotlinGotoImplementationTestGenerated 2015-04-08 01:15:09 +03:00
Alexander Udalov
4956b24810 Merge two DescriptorRenderer parameters about parameter name rendering
Also disable parameter name rendering completely in
AbstractJvmRuntimeDescriptorLoaderTest because they can't be obtained anyway in
reflection
2015-04-07 20:25:08 +03:00
Alexander Udalov
47e7235e64 Add different tests on class loaders in reflection 2015-04-07 20:25:07 +03:00
Alexander Udalov
87ef4ff7c5 Fix KClassImpl#toString to render Kotlin FQ name, not JVM one 2015-04-07 20:25:06 +03:00
Alexander Udalov
137ee53e85 Reflection test: only skip Java annotation constructors
The order of Kotlin annotation parameters is retained
2015-04-07 20:25:05 +03:00
Alexander Udalov
9c1e7f93d2 Reflection: refactor property construction and fix memory leak
Properties obtained by KClass.properties were having strong references to
descriptors (captured by closures, which are strongly retained by
DescriptorBasedProperty). Support initial value in lazy soft properties
2015-04-07 20:22:52 +03:00
Alexander Udalov
715641fb0d Call getMethod/getDeclaredMethod depending on visibility 2015-04-07 20:20:40 +03:00
Alexander Udalov
0202217135 Fix JVM signatures involving multi-dimensional array types
Apparently ASM's Type#getElementType returns the type of the array even if it's
multi-dimensional, so the loop was incorrect
2015-04-07 20:06:23 +03:00
Alexander Udalov
7e86d87133 Move built-in companion intrinsics to core to reuse in reflection 2015-04-07 20:06:23 +03:00
Denis Zharkov
ce51327509 Refine descriptor renderer test
Now it checks:
- Whether resolveToDescriptor on secondary constructors works well
- If there is explicit primary constructor declaration
  resolveToDescriptor should return it
- Renderer itself works well with constructors
2015-04-07 19:31:31 +03:00
Denis Zharkov
468233b624 Change default visiting behaviour of constructors to proper one
visitJetElement -> visitDeclaration
2015-04-07 19:31:31 +03:00
Denis Zharkov
f85e92a247 j2k: Adjust annotation converter to last changes
Only parameter named `value` can be marked vararg
2015-04-07 19:31:30 +03:00
Denis Zharkov
37d7327482 Implement visitPrimaryConstructor in LazyDeclarationResolver
It's need to prevent exception when trying to analyze each declaration
node within class

 #KT-7279 Fixed
 #KT-7315 Fixed
2015-04-07 19:31:30 +03:00
Denis Zharkov
1324667bc9 Prohibit use of positioned value arguments for java annotation 2015-04-07 19:31:30 +03:00
Denis Zharkov
a29c0ff9a3 Use default value if annotation vararg argument is empty 2015-04-07 19:31:30 +03:00
Denis Zharkov
9b1443954f Refine loading annotation parameters from java
- Parameter named `value` is always first
- Array parameter represented as vararg iff its name is `value` and all
  other parameters have default values

 #KT-2576 Fixed
 #KT-6641 Fixed
 #KT-6220 Fixed
 #KT-6652 Fixed
2015-04-07 19:31:29 +03:00
Andrey Breslav
84ed0e7255 Create annotation-arguments.md
(cherry picked from commit 202ea7c)
2015-04-07 19:31:29 +03:00
Mikhail Glukhikh
27b1f1ddad Test and implementation for KT-6819. Now when entry condition data flow information is used for subsequent conditions. #KT-6819 Fixed 2015-04-07 19:03:34 +03:00
Mikhail Glukhikh
cd206fc97b Test for KT-3711. Passes already in M11 or even earlier 2015-04-07 19:03:31 +03:00
Mikhail Glukhikh
221501c0d9 Tests for KT-2865. Passes already in M11 or even earlier 2015-04-07 19:03:29 +03:00
Mikhail Glukhikh
39e01f4df2 Tests for KT-3899. Passes already in M11 or even earlier 2015-04-07 19:03:27 +03:00
Mikhail Glukhikh
f49c79f4f0 Tests for KT-3224 and KT-3244. Both pass already in M11 or even earlier 2015-04-07 19:03:24 +03:00
Natalia Ukhorskaya
8f07960fd4 Debugger: do not use DelegatedPropertyRenderer for fields with name = delegate 2015-04-07 18:53:10 +03:00
Natalia Ukhorskaya
649654999f Debugger: add an option for computing delegated properties values in Variables View 2015-04-07 18:53:08 +03:00
Natalia Ukhorskaya
111f375fa6 Eval4j: disable object collection during evaluation 2015-04-07 18:10:23 +03:00
Michael Bogdanov
7abbf1ec12 Rename invokeWithout assertion to genInvokeInstruction 2015-04-07 17:28:02 +03:00
Michael Bogdanov
8b4886e3e0 Remove invokeWithAssertion function 2015-04-07 17:28:02 +03:00
Michael Bogdanov
3e953dbe24 Remove commented code 2015-04-07 17:28:01 +03:00
Michael Bogdanov
841b199d49 Optimize comparison with zero and null 2015-04-07 17:28:01 +03:00
Michael Bogdanov
ccfc613c31 Get rid of some genLazy 2015-04-07 17:28:01 +03:00
Michael Bogdanov
f551e90d7c Use callableMethod return type as function call result type 2015-04-07 17:27:25 +03:00
Michael Bogdanov
86e12f1f42 IntrinsicCallable clean 2015-04-07 16:05:43 +03:00
Michael Bogdanov
31c4aaac4d Rename thisType and receiverType to dispatch and extension ones 2015-04-07 16:05:43 +03:00
Michael Bogdanov
a201cb3258 IntrinsicCallable clean 2015-04-07 16:05:43 +03:00
Michael Bogdanov
c72bae5081 Clean intr 2015-04-07 16:05:43 +03:00
Michael Bogdanov
de11ecb9b4 Fix for KT-7288: VerifyError on accessing array element in 'is' block
#KT-7288 Fixed
2015-04-07 16:05:42 +03:00
Michael Bogdanov
a44def05cc Rollback hack for rangeTo safe call support 2015-04-07 16:05:42 +03:00
Michael Bogdanov
c7fe8e0b66 Branched value refactoring, And/Or support 2015-04-07 16:05:42 +03:00
Michael Bogdanov
c63ac3e30a Test for KT-7222 Redundant boxing on toString call
#KT-7222 Fixed
2015-04-07 16:05:42 +03:00
Michael Bogdanov
0efe8890b8 Added new string tests 2015-04-07 16:05:42 +03:00
Michael Bogdanov
a19c1ed476 ArrayIterator refactoring 2015-04-07 16:05:42 +03:00
Michael Bogdanov
69ddb6bfca Intrinsic.toCallable clean 2015-04-07 16:05:41 +03:00
Michael Bogdanov
d55c5fe0e4 Array get convertion 2015-04-07 16:05:41 +03:00
Michael Bogdanov
c8a4fa586c ArrayGet.java to kt 2015-04-07 16:05:41 +03:00
Michael Bogdanov
a1f365d17c Clean 2015-04-07 16:05:41 +03:00
Michael Bogdanov
47c838e62b Move some callable method impl to trait 2015-04-07 16:05:41 +03:00
Michael Bogdanov
05aa80e7f1 Callable methods to properties 2015-04-07 16:05:41 +03:00
Michael Bogdanov
45d5a86468 Clean Intrinsics 2015-04-07 16:05:40 +03:00
Michael Bogdanov
32d4845606 ExCallable to Callable renaming 2015-04-07 16:05:40 +03:00
Michael Bogdanov
6213d68553 Ex -> kt 2015-04-07 16:05:40 +03:00
Michael Bogdanov
8e0003c1a5 Callable Convertion 2015-04-07 16:05:40 +03:00
Michael Bogdanov
1d31b93c33 Callable*.java->Callable.kt 2015-04-07 16:05:40 +03:00
Michael Bogdanov
390c03d03f Concat conversion 2015-04-07 16:05:40 +03:00
Michael Bogdanov
81be7cd071 Concat.java->Concat.kt 2015-04-07 16:05:39 +03:00
Michael Bogdanov
6e13cef3c5 IdentEquals 2015-04-07 16:05:39 +03:00
Michael Bogdanov
8e4204408b Not conversion and hack for substitute param generation 2015-04-07 16:05:39 +03:00
Michael Bogdanov
b2fe44997a Remove intrinsics from CollectionElement 2015-04-07 16:05:39 +03:00
Michael Bogdanov
44582f76e3 Not restriction 2015-04-07 16:05:39 +03:00
Michael Bogdanov
0c8ee872f9 Increment convertion 2015-04-07 16:05:38 +03:00
Michael Bogdanov
8ec0cd18b7 CompareTo fix 2015-04-07 16:05:38 +03:00
Michael Bogdanov
8552dd60ae patch moveto stack 2015-04-07 16:05:38 +03:00
Michael Bogdanov
6e9d5ebe78 RenageTo convertion & before call 2015-04-07 16:05:38 +03:00
Michael Bogdanov
83f8dae9ac RangeTo.java->RangeTo.kt 2015-04-07 16:05:38 +03:00
Michael Bogdanov
b99ff5c7ae Intrinsic conversion 2015-04-07 16:05:37 +03:00
Michael Bogdanov
a5612ec4c0 intrinsics java->kt file renaming 2015-04-07 16:05:37 +03:00
Michael Bogdanov
c1ab7f06f7 Get rid of getAsmMethod 2015-04-07 16:05:37 +03:00
Michael Bogdanov
61a49f13e1 ExtendedCallable and some optimazation in CallableMethod 2015-04-07 16:05:37 +03:00
Michael Bogdanov
ce004a9181 Number/Object compare to branched one 2015-04-07 16:05:37 +03:00
Nikolay Krasko
2946c1d6a8 KT-7271 Accessing an extension property of Char.Companion leads to ClassNotFoundException in runtime
#KT-7271 Fixed
2015-04-07 15:59:05 +03:00
Nikolay Krasko
a77aae8789 KT-7245 HTML Markup in toolwindow caption
#KT-7245 Fixed
2015-04-07 15:59:04 +03:00
Ilya Gorbunov
fbb567c11a Iterator<T> can be converted to a sequence constrained to be one-time iterable. 2015-04-07 15:35:01 +03:00
Ilya Gorbunov
f2d865e836 Provide constrainOnce extension method for the Sequence.
Sequence created from the generator function without an initial value can be iterated only once.
The same is for BufferedReader.lines sequence.
2015-04-07 15:34:59 +03:00
Ilya Gorbunov
698ffa2807 A sequence constructed with initialValue can be iterated multiple times. 2015-04-07 15:31:00 +03:00
Stanislav Erokhin
3de0dff575 Migrate testdata to new lambda syntax 2015-04-07 13:08:53 +03:00
Stanislav Erokhin
b703f59e04 Migrate kotlin sources, maven projects and stdlib to new lambda syntax 2015-04-07 13:08:53 +03:00
Stanislav Erokhin
e0988de707 Minor: increase timeout 2015-04-07 13:08:52 +03:00
Stanislav Erokhin
4ef086ea57 Minor. Removed obsolete comment 2015-04-07 13:08:51 +03:00
Stanislav Erokhin
b152211096 Added init keyword to testdata 2015-04-07 13:08:51 +03:00
Stanislav Erokhin
6ab83c9b8c Added init keyword to builtins, maven projects and stdlib 2015-04-07 13:08:50 +03:00
Ilya Gorbunov
7cac6e3c5e Provide String.commonPrefixWith and String.commonSuffixWith methods.
Char.isHighSurrogate and Char.isLowSurrogate now available in js-stdlib too.
2015-04-07 03:15:03 +03:00
Ilya Gorbunov
70cc7fbf1f Remove never intentionally used String.hashCode extension. 2015-04-07 03:14:49 +03:00
Ilya Gorbunov
91decc9f33 Add String.contains with Char argument. Fixes #KT-7239. 2015-04-07 03:14:36 +03:00
Ilya Gorbunov
cb85d335ba Correct deprecated message for trim()
Correct documentation description.
2015-04-07 03:14:22 +03:00
Valentin Kipyatkov
8f01130e8e Minor code corrections after review 2015-04-07 00:00:29 +03:00
Valentin Kipyatkov
2efa851115 Used correct function for fetching elements in range instead of strange one from daemon.impl 2015-04-07 00:00:29 +03:00
Valentin Kipyatkov
0918d5ce79 Minor 2015-04-07 00:00:29 +03:00
Valentin Kipyatkov
bf0798ca86 Added test 2015-04-07 00:00:29 +03:00
Valentin Kipyatkov
bcbe10ad2a Removed unused method 2015-04-07 00:00:29 +03:00
Valentin Kipyatkov
506f84fb8a KT-5959 Imports should be inserted on paste from java with conversion to Kotlin
#KT-5959 Fixed
2015-04-07 00:00:29 +03:00
Valentin Kipyatkov
754567af07 Important fix: PsiFile.getParent() is PsiDirectory! 2015-04-07 00:00:29 +03:00
Valentin Kipyatkov
d0637ccaf4 Conversion from Java on paste: post processing of code really works 2015-04-07 00:00:28 +03:00
Valentin Kipyatkov
2227452e7a KT-5203 Do not offer to convert from java on paste if conversion is trivial
#KT-5203 Fixed
2015-04-07 00:00:28 +03:00
Valentin Kipyatkov
0ed7d228f6 Got rid of conversionScope parameter for JavaToKotlinConverter 2015-04-07 00:00:28 +03:00
Valentin Kipyatkov
751f952536 Code improvements 2015-04-07 00:00:28 +03:00
Valentin Kipyatkov
4b32db5c5e KT-5289 J2K: Should show progress when conversion takes time
#KT-5289 Fixed
2015-04-07 00:00:28 +03:00
Zalim Bashorov
b3ef334a0e Update to IDEA 14.1 EAP (141.498.1) 2015-04-06 22:20:44 +03:00
Mikhail Glukhikh
88441814b9 Test for KT-5502 (works after KT-4450 / KT-5907 fix) 2015-04-06 18:32:19 +03:00
Mikhail Glukhikh
d92ccad35d Implementation and tests for KT-5840 and newly created KT-7204. Now a safe call provides not-null receiver state *inside* argument list. It works also for ?. chains. #KT-5840 Fixed.
On the other hand, argument states do not propagate to successor statements for a safe call. #KT-7204 Fixed. A few additional comments.
2015-04-06 18:29:52 +03:00
Zalim Bashorov
79739b7090 Fix build. 2015-04-06 18:20:00 +03:00
Mikhail Glukhikh
1055c34474 Fix of when / break / continue problem 2015-04-06 17:57:48 +03:00
Natalia Ukhorskaya
20470e5c42 Merge pull request #635 from rusmonster/bugfix/fix-build-after-cleaning
Build fails after project cleaning
#KT-7277 Fixed
2015-04-06 16:35:18 +03:00
Mikhail Glukhikh
cdc2d0f542 Tests for when / break / continue fixed 2015-04-06 16:08:17 +03:00
Valentin Kipyatkov
412ab8f8b8 Split module idea into idea, idea-core and idea-completion 2015-04-06 14:28:40 +03:00
Dmitry Jemerov
203c8ea125 compilation fix 2015-04-06 13:03:56 +02:00
Dmitry Kalita
7c911e1f0a When you build the project for the first time after cleaning, you lose paths to internal_impl jars of support libraries such as
build/intermediates/exploded-aar/com.android.support/support-v4/21.0.2/libs/internal_impl-21.0.2.jar

They are absent in javaCompile.getClasspath() when javaCompile task starts.

This patch fixes it.
#KT-7277 Fixed
2015-04-05 13:11:41 +03:00
Dmitry Jemerov
5a0c98ca81 fix compilation now that 'break' inside 'when' is not allowed 2015-04-05 00:33:14 +03:00
Dmitry Jemerov
252c4118eb report 'break' and 'continue' inside 'when' as errors (even if 'when' is nested in a loop) 2015-04-05 00:33:14 +03:00
Valentin Kipyatkov
8ab12e217d KT-7267 Arguments are replaced by tab when old call was qualified
#KT-7267 Fixed
2015-04-04 22:15:45 +03:00
Valentin Kipyatkov
2c1a0a0c4b Smart completion: expected type instantiation made higher priority than static members 2015-04-04 22:15:45 +03:00
Valentin Kipyatkov
e2979614ad KT-7259 Space inserted before parenthesis in completion of call
#KT-7259 Fixed
2015-04-04 22:15:45 +03:00
Valentin Kipyatkov
93d9e78047 Minor 2015-04-04 22:15:45 +03:00
Valentin Kipyatkov
29149add09 KT-7247 PsiErrorElementImpl cannot be cast to org.jetbrains.kotlin.psi.JetElement
#KT-7247 Fixed
2015-04-04 22:15:45 +03:00
Yan Zhulanow
df12331173 Ignore fragment tag (it requires a different implementation) 2015-04-03 17:38:20 +03:00
Yan Zhulanow
b4cfacbac7 Name synthetic files after layout names 2015-04-03 17:37:24 +03:00
Yan Zhulanow
e6fa6e9a5d Escape layout names which are Kotlin keywords 2015-04-03 17:37:23 +03:00
Yan Zhulanow
3aa6edca7b Escape soft keywords as well 2015-04-03 17:37:23 +03:00
Yan Zhulanow
fae114f606 Cast findViewById() result to Views safely 2015-04-03 17:37:23 +03:00
Yan Zhulanow
1f16328070 Add imports for XML widget tags, support.v4 fake package files 2015-04-03 17:37:22 +03:00
Yan Zhulanow
d0e4f86790 Escape widget ids which are Kotlin keywords 2015-04-03 17:37:22 +03:00
Yan Zhulanow
2af538e854 Ignore some XML tags 2015-04-03 17:37:21 +03:00
Yan Zhulanow
938248bd29 Search for all properties in layout files corresponding to the given JetProperty 2015-04-03 17:37:21 +03:00
Yan Zhulanow
96074bc948 Fix Android byte code generation inside complex expressions 2015-04-03 17:37:21 +03:00
Yan Zhulanow
de06a0cbc2 Clear layout cache on layout XML file add/remove 2015-04-03 17:37:20 +03:00
Yan Zhulanow
b930f04ff4 Fix null-related warnings in AndroidRenameProcessor 2015-04-03 17:37:20 +03:00
Yan Zhulanow
638ec2ae92 Fix deprecated Kotlin constructs and remove unused code in Android plugins 2015-04-03 17:37:20 +03:00
Yan Zhulanow
dd083c64cc Simplify Module resolving in AndroidRenameProcessor 2015-04-03 17:37:19 +03:00
Yan Zhulanow
cbf68e8c6f Generate synthetic packages even for layouts without @+id/ attributes declared 2015-04-03 17:37:19 +03:00
Yan Zhulanow
0a96c2c148 Lookup XML attribute using the property (for a particular layout) 2015-04-03 17:37:19 +03:00
Yan Zhulanow
a4dc6870dc Fix Android layout widget redeclarations 2015-04-03 17:37:18 +03:00
Yan Zhulanow
c40598b3e9 Do not cast findViewById to View 2015-04-03 17:37:18 +03:00
Yan Zhulanow
2061e390b4 Support special Android layout XML tags: fragment, include, merge 2015-04-03 17:37:18 +03:00
Valentin Kipyatkov
37af12c4bf Code improvements after review 2015-04-03 17:16:22 +03:00
Valentin Kipyatkov
5dbd23088f Removed WritableScope.addClassifierAlias too 2015-04-03 17:16:22 +03:00
Valentin Kipyatkov
54ea6113d7 Replaced addTypeParameterDescriptor with addClassifierDescriptor - it does the same 2015-04-03 17:16:22 +03:00
Valentin Kipyatkov
ffc22e8b16 Removed unused methods 2015-04-03 17:16:21 +03:00
Valentin Kipyatkov
02b2fb000e Removed unused WriteThroughScope 2015-04-03 17:16:21 +03:00
Valentin Kipyatkov
0162980ff7 Refactored code in QualifiedExpressionResolver so that WritableScope.import* methods are not used anymore 2015-04-03 17:16:21 +03:00
Valentin Kipyatkov
21083b48ce Minor refactoring in imports resolve 2015-04-03 17:16:21 +03:00
Ilya Gorbunov
12bf8ca94f Replace deprecated split usage in kdoc. 2015-04-03 12:13:23 +03:00
Ilya Gorbunov
51321c8b36 Remove deprecated isNullOrEmpty declaration, fixed usage. 2015-04-03 12:13:11 +03:00
Michael Nedzelsky
61726fdcb7 JS: merge KotlinJavascriptSerializer into KotlinJavascriptSerializationUtil 2015-04-03 05:36:21 +03:00
Michael Nedzelsky
1c7e1ddf26 JS: remove LibrarySourcesConfigWithCaching, introduce LibrarySourceConfig.Builder 2015-04-03 05:36:18 +03:00
Michael Nedzelsky
6d8fc1e035 JS: load metadata optimization in KotlinJavascriptMetadataUtils 2015-04-03 05:36:15 +03:00
Michael Nedzelsky
563ab47502 JS: add jps build test for Kotlin/Javascript two-module project 2015-04-03 05:36:13 +03:00
Michael Nedzelsky
06aef3164c JS: use metadata in jps build process 2015-04-03 05:36:10 +03:00
Michael Nedzelsky
9a02db3e8b JpsJsModuleUtils.java -> JpsJsModuleUtils.kt 2015-04-03 05:36:07 +03:00
Michael Nedzelsky
e779c8a2ae JpsJsModuleUtils: convert to kotlin 2015-04-03 05:36:05 +03:00
Michael Nedzelsky
5a73bd19c5 JS: move processing metaInfo to TranslationResult 2015-04-03 05:36:02 +03:00
Michael Nedzelsky
dbe59190ed JS: add writeMetadataToString, serializeToString 2015-04-03 05:35:59 +03:00
Michael Nedzelsky
0951d69bdc JS: add metaInfo attribute to Config 2015-04-03 05:35:56 +03:00
Michael Nedzelsky
54df359134 JS: add default package name to DescriptorUtils.getPackageNames 2015-04-03 05:35:53 +03:00
Alexander Udalov
4474005183 Fix codegen tests and overloads diagnostic test 2015-04-03 01:38:31 +03:00
Alexander Udalov
6279421094 Minor, add test on Java enum with specialized entry 2015-04-02 21:57:53 +03:00
Alexander Udalov
3c1ead726b Minor, rename jdkFromIdeaHome -> mockJdk 2015-04-02 21:57:52 +03:00
Alexander Udalov
5b2ffd50d3 Use mock JDK instead of full in IDEA plugin tests 2015-04-02 21:57:51 +03:00
Alexander Udalov
72aa3d1465 Use mock JDK in compiler tests where full JDK is not needed
- move some of boxWithStdlib tests under fullJdk/ directory, where they will be
  compiled against the full JDK
- introduce FULL_JDK in-text directive for the reflection test as only 4 tests
  out of 654 needed the full JDK
2015-04-02 21:57:48 +03:00
Alexander Udalov
150e0a4ef2 Print runtime and reflection jar sizes for TeamCity statistics 2015-04-02 21:57:02 +03:00
Dmitry Jemerov
7b507276ed frontend diagnostics for kotlin.jvm.overloads
#KT-7203 Fixed
2015-04-02 20:30:36 +02:00
Dmitry Jemerov
39828bfd32 Implement kotlin.jvm.overloads annotation for generating all overloads of a method that has default parameter values.
#KT-2095 Fixed

fix backend-side issues with kotlin.jvm.overloads: support the annotation on constructors, generate nullablity annotations on parameters, generate generic signatures, add various tests
2015-04-02 20:30:26 +02:00
Dmitry Jemerov
e15b984232 Implement kotlin.jvm.overloads annotation for generating all overloads of a method that has default parameter values.
#KT-2095 Fixed
2015-04-02 20:30:01 +02:00
Dmitry Jemerov
c1c9d3b090 extract code for generating parameterless constructor into a separate class and rewrite it in Kotlin 2015-04-02 20:30:00 +02:00
Valentin Kipyatkov
d78573059e Fixed import insertion on paste broken sometime ago 2015-04-02 21:10:54 +03:00
Ilya Ryzhenkov
1fc1c025e9 Fix EA-67177: exception when analysing unfinished assignment expression without RHS. 2015-04-02 18:59:57 +03:00
Pavel V. Talanov
cb7617b3ca Refactor CompilerConfiguration: keys -> Content roots
Represent classpath roots and java source roots as separate entities
2015-04-02 16:13:06 +03:00
Valentin Kipyatkov
4e283fd62f Added a test 2015-04-02 10:17:01 +03:00
Valentin Kipyatkov
1df39ab82b Fixed code after rebase to SmartCastUtils requiring containingDeclaration 2015-04-02 10:17:01 +03:00
Valentin Kipyatkov
784b4a8aeb Minor code changes after code review 2015-04-02 10:17:00 +03:00
Valentin Kipyatkov
b45b462bdf Not imported extension functions are always listed in code completion 2015-04-02 10:17:00 +03:00
Valentin Kipyatkov
c54541b269 Functions returning Nothing are indexed even when alias import is used 2015-04-02 10:16:59 +03:00
Valentin Kipyatkov
1789907740 No hardcoded nothing callables needed anymore 2015-04-02 10:16:59 +03:00
Valentin Kipyatkov
6a2cc66eb1 Got rid of isProbablyNothing in stubs + fixed exception on some files on indexing stubs 2015-04-02 10:10:31 +03:00
Valentin Kipyatkov
0243280668 Extension callables index is built correctly when using alias imports 2015-04-02 10:09:26 +03:00
Valentin Kipyatkov
bff2b2f378 Fixed tests for stubs 2015-04-02 10:09:25 +03:00
Valentin Kipyatkov
5ba5618718 Extension callables index and its use in completion 2015-04-02 10:09:25 +03:00
Valentin Kipyatkov
546af84435 Renames 2015-04-02 10:09:25 +03:00
Valentin Kipyatkov
f92bc39323 Minor code improvements 2015-04-02 10:09:25 +03:00
Valentin Kipyatkov
4b383f35b4 Use of Sequence instead of Stream 2015-04-02 10:09:25 +03:00
Alexander Udalov
0b252505d9 Minor, add clarifying comment & inline useless property 2015-04-02 03:22:58 +03:00
Alexander Udalov
57be11a7e6 Minor, move common logic to ReflectJavaModifierListOwner 2015-04-02 03:22:22 +03:00
Alexander Udalov
4cea9ecca4 Minor, add reflection test on inherited Java property 2015-04-02 03:22:12 +03:00
Alexander Udalov
7fda4ef438 Don't show local/anonymous classes in libraries in Project view 2015-04-02 03:22:04 +03:00
Evgeny Gerashchenko
0d4d719156 Minor. Reverted optimized imports in generated test. 2015-04-02 02:28:49 +03:00
Valentin Kipyatkov
fea57ecd2c Fixed incorrect PARTIAL resolve inside code fragments 2015-04-01 23:21:24 +03:00
Valentin Kipyatkov
c99f3fd106 Refactoring code to be more Kotlin 2015-04-01 23:21:24 +03:00
Valentin Kipyatkov
3ff13ccf5d Converting ElementResolver to Kotlin (step 2) 2015-04-01 23:21:23 +03:00
Valentin Kipyatkov
2637bf608a Converting ElementResolver to Kotlin (step 1) 2015-04-01 23:21:23 +03:00
Valentin Kipyatkov
f7a147f236 PsiReference.resolve() uses partial body resolve 2015-04-01 23:21:23 +03:00
Valentin Kipyatkov
6dc943a739 JetReference.resolveToDescriptors() requires BindingContext 2015-04-01 23:21:23 +03:00
Valentin Kipyatkov
04a6ebf0d6 Dropped JetReference.resolveMap() 2015-04-01 23:21:23 +03:00
Valentin Kipyatkov
67de85aed1 More usages of partial body resolve 2015-04-01 23:21:23 +03:00
Valentin Kipyatkov
4d2a34cc4e "Surround with" uses partial body resolve 2015-04-01 23:21:22 +03:00
Valentin Kipyatkov
ff6853f300 Added BodyResolveMode parameter to JetElement.analyze() 2015-04-01 23:21:22 +03:00
Valentin Kipyatkov
a8bb0162f8 Minor code improvements 2015-04-01 23:21:22 +03:00
Valentin Kipyatkov
cd18b16407 Partial body resolve: fixed for ! and parenthesis in conditions 2015-04-01 23:21:22 +03:00
Valentin Kipyatkov
698d839eee Added a test 2015-04-01 23:21:22 +03:00
Valentin Kipyatkov
f3799a0ce7 Partial body resolve correctly handles elvis operator 2015-04-01 23:21:22 +03:00
Valentin Kipyatkov
176ba937ba Partial body resolve filter works more precisely for if-statements 2015-04-01 23:21:21 +03:00
Valentin Kipyatkov
7a414336c1 Do not run partial body resolve if full body resolve already cached 2015-04-01 23:21:21 +03:00
Ilya Gorbunov
6aad2b2d65 Add dependency of kotlin-js-tests to kotlin-js-tests-junit. 2015-04-01 23:10:15 +03:00
Ilya Gorbunov
cac058d5a3 Fix endsWith in JS always ignored character case, regardless of the ignoreCase parameter value.
startsWith, endsWith again use native implementation when possible.
2015-04-01 23:10:14 +03:00
Ilya Gorbunov
315badd5d1 Restore native js functions: startsWith, endsWith, contains.
startsWith and endsWith implementation taken from MDN.
2015-04-01 23:05:52 +03:00
Ilya Gorbunov
0717705f15 Add requireNotNull with lazy message. 2015-04-01 22:28:47 +03:00
Ilya Ryzhenkov
2f02024c24 checkLValue for array indexing expression should resolve set method #KT-7218 Fixed 2015-04-01 21:02:05 +03:00
Pavel V. Talanov
a986d913c3 Remove traces of class object constraints feature from parser, frontend, tests and psi 2015-04-01 20:09:34 +03:00
Pavel V. Talanov
5fe8bb4a92 Drop ClassifierDescriptor#getClassObjectType()
Introduce utility for ClassDescriptor to use where necessary
2015-04-01 20:09:32 +03:00
Ilya Gorbunov
b930f71b79 Fix split method usage in JS: split replaced with splitWithRegex or splitBy. 2015-04-01 18:17:08 +03:00
Ilya Gorbunov
95c2a4fb29 Fix split method usage: split temporary replaced with splitBy. 2015-04-01 18:17:06 +03:00
Natalia Ukhorskaya
907f402d30 Code fragments: getResolveScope should return scope for context element 2015-04-01 18:01:24 +03:00
Valentin Kipyatkov
36fb14a3fc KT-6923 Completion shouldn't show private symbols from compiled code
#KT-6923 Fixed
2015-04-01 17:46:10 +03:00
Valentin Kipyatkov
3b110f8ef8 KT-7194 No completion for member extension function inside itself
#KT-7194 Fixed
2015-04-01 17:46:10 +03:00
Valentin Kipyatkov
7e9314bd40 More accurate import conflict detection 2015-04-01 17:10:50 +03:00
Valentin Kipyatkov
e22f28c061 Fixed a fail in import insertion 2015-04-01 17:10:50 +03:00
Alexander Udalov
d6ceadf769 Revert erroneous change to .idea/compiler.xml 2015-04-01 16:44:44 +03:00
Dmitry Jemerov
6d56618d17 complete KDoc tag names after @, not only at line start
#KT-7139 Fixed

code review
2015-04-01 15:14:20 +02:00
Ilya Gorbunov
f87dcff723 Fixed #KT-6476. last(predicate) and lastOrNull(predicate) use reverse iteration when possible. 2015-04-01 15:51:08 +03:00
Ilya Gorbunov
d81895df77 Rename and deprecate ad-hoc IsNullOrEmpty. 2015-04-01 15:40:20 +03:00
Ilya Gorbunov
850d79e61a Remove negative variants of isEmpty and isBlank (may be included later). 2015-04-01 15:40:18 +03:00
Ilya Gorbunov
ac4b207413 Add isEmpty, isBlank methods and their nullable and negating couterparts. 2015-04-01 15:40:17 +03:00
Stanislav Erokhin
4efb0dbf9a Fixed CAPTURED_IN_CLOSURE marker for primary constructor argument
#KT-7131 Fixed
2015-04-01 15:28:09 +03:00
Alexey Sedunov
9247f4f096 Quick-Fixes: Fix type checking scope for type mismatch in call argument 2015-04-01 13:41:27 +03:00
Alexey Sedunov
eb594a2897 Extract Function: Approximate non-resolvable types with nearest resolvable supertype when possible
#KT-7120 Fixed
2015-04-01 13:41:26 +03:00
Alexey Sedunov
a90d020859 Extraction Engine: Fix extraction of labeled and non-local returns 2015-04-01 13:41:24 +03:00
Alexey Sedunov
3bea49eedd Change Signature: Fix processing of enum constructors
#KT-7170 Fixed
2015-04-01 13:41:23 +03:00
Alexey Sedunov
d65b55e147 Change Signature: Fix processing of lambda arguments 2015-04-01 13:41:22 +03:00
Svetlana Isakova
61d0bcdf76 KT-7068 None of the following functions can be called with two functions with extention function parameter
#KT-7068 Fixed
2015-04-01 11:57:15 +03:00
Nikolay Krasko
ca98b19aba Wrong package light file with package class 2015-04-01 02:02:07 +03:00
Nikolay Krasko
055be2850f Fix accept() in light methods elements to avoid treating them as ClsElements 2015-04-01 02:02:01 +03:00
Nikolay Krasko
9d151d2ce8 Add ability to configure set of tools with in file 2015-04-01 02:01:59 +03:00
Nikolay Krasko
4e04d9b887 Add more toString() methods and additional wrapping for Kotlin elements 2015-04-01 02:01:55 +03:00
Nikolay Krasko
ad23e9159c Refactoring: remove unnecessary subclassing PsiClass in marker interface 2015-04-01 02:01:53 +03:00
Nikolay Krasko
a109223a07 Minor: fix compile errors in java test data 2015-04-01 02:01:51 +03:00
Denis Zharkov
a4018d9eae Run "Add 'init' keyword in whole project" quickfix 2015-03-31 20:20:23 +03:00
Denis Zharkov
99f1ab333e Report illegal modifiers and annotations on primary constructor
#KT-7057 Fixed
 #KT-6772 Fixed
2015-03-31 20:20:22 +03:00
Denis Zharkov
717f850470 Setup spacing rules for primary ctor's parts 2015-03-31 20:20:22 +03:00
Denis Zharkov
8e69c06e5a Adjust stub-builder, decompiler and renderer to new PSI structure
of primary ctor
2015-03-31 20:20:22 +03:00
Denis Zharkov
741c9febe2 Modify various usages of old PSI structure of primary ctor 2015-03-31 20:20:22 +03:00
Denis Zharkov
cafa018066 Parsing: Drop redundant parameter as it always has the same value 2015-03-31 20:20:22 +03:00
Denis Zharkov
af2bcfb524 Parse primary constructor into separate PSI element 2015-03-31 20:20:22 +03:00
Evgeny Gerashchenko
59f939d9ef Do check isCheapEnoughToSearch for companion objects, but just ignore ZERO_OCCURENCES outcome. 2015-03-31 20:08:05 +03:00
Evgeny Gerashchenko
83f2a08708 Added test with moving file used in Java to other package. 2015-03-31 18:14:00 +03:00
Evgeny Gerashchenko
a4d2d6506c Removing import of removed package facade. 2015-03-31 18:13:21 +03:00
Evgeny Gerashchenko
f789933683 Fixed updating Java references on moved Kotlin top-level callables. 2015-03-31 18:13:20 +03:00
Evgeny Gerashchenko
5b05c60858 Minor. Code cleanup. 2015-03-31 18:13:20 +03:00
Mikhail Glukhikh
620b7954ac Tests for already working KT-3993 and KT-5427. These test cases pass at least since M11 2015-03-31 17:15:46 +03:00
Mikhail Glukhikh
9c1551bca9 Implementation of smart casts for public / protected immutable properties that are not open and used in the same module.
DataFlowValueFactory and its environment refactoring: containing declaration is added into factory functions
as an argument and used to determine identifier stability. A few minor fixes. #KT-5907 Fixed. #KT-4450 Fixed. #KT-4409 Fixed.

New tests for KT-4409, KT-4450, KT-5907 (public and protected value properties used from the same module or not,
open properties, variable properties, delegated properties, properties with non-default getter).
Public val test and KT-362 test changed accordingly.
2015-03-31 16:19:03 +03:00
Valentin Kipyatkov
0b27d9181a Minor code corrections after review 2015-03-31 16:10:24 +03:00
Valentin Kipyatkov
d5326031c4 J2k: for through range with != comparison is also recognized 2015-03-31 16:10:24 +03:00
Valentin Kipyatkov
11b4e66fd0 Better tests 2015-03-31 16:10:24 +03:00
Valentin Kipyatkov
c66b20b204 KT-6795 J2K: When converting to type with projections, omit redundant use-site projections
#KT-6795 Fixed
2015-03-31 16:10:24 +03:00
Valentin Kipyatkov
7e50f72d5b J2K: no call to super constructor in the header of class when there is no primary constructor 2015-03-31 16:10:23 +03:00
Valentin Kipyatkov
c57f2b10d6 J2K: use of emptyList, emptySet and emptyMap 2015-03-31 16:10:23 +03:00
Valentin Kipyatkov
1465418c2b KT-7151 Convert 'System.out.println()' to just 'println()'
#KT-7151 Fixed
2015-03-31 16:10:23 +03:00
Valentin Kipyatkov
39f94d7d45 KT-6044 J2K: Convert numeric float literals to 0.2f instead of 0.2.toFloat() + more fixes related to literals and type transformations
#KT-6044 Fixed
2015-03-31 16:10:23 +03:00
Valentin Kipyatkov
5454f7053f KT-6349 J2K: Static members of enums should be converted to class object members
#KT-6349 Fixed
2015-03-31 16:10:23 +03:00
Valentin Kipyatkov
f19eb20803 KT-5287 J2K: Convert class with private constructor and static functions to "object" instead of class with "class object"
#KT-5287 Fixed
2015-03-31 16:10:23 +03:00
Valentin Kipyatkov
6dbb13c32d KT-6798 J2K: Needless use of run {} function after converting for-loop
#KT-6798 Fixed
2015-03-31 16:10:22 +03:00
Valentin Kipyatkov
46193f3ef7 KT-5692 Java to Kotlin conversion: convert int range loops in reverse order + a few more improvements
#KT-5692 Fixed
2015-03-31 16:10:22 +03:00
Valentin Kipyatkov
16295b875b Removed methods not need anymore 2015-03-31 16:10:22 +03:00
Valentin Kipyatkov
fb4075cc2f J2K: inlining intermediate variable after removing type cast 2015-03-31 16:10:22 +03:00
Valentin Kipyatkov
e31648a4b6 KT-6476 Kotlin J2K converter fails with for-loops with continues
#KT-6476 Fixed
2015-03-31 16:10:22 +03:00
Valentin Kipyatkov
2d4055e921 J2K: generating of elvis operators instead of if's 2015-03-31 16:10:22 +03:00
Valentin Kipyatkov
0932cb4606 J2K: auto-replacing of if's with safe access 2015-03-31 16:10:22 +03:00
Valentin Kipyatkov
555ae1ebd3 J2K: no redundant type casts
#KT-6794 Fixed
2015-03-31 16:10:21 +03:00
Valentin Kipyatkov
7d92559d13 J2K: generating "!is" instead of !(.. is ..) 2015-03-31 16:10:21 +03:00
Valentin Kipyatkov
108a1f872c J2K: use of new syntax for class intialization blocks 2015-03-31 16:10:21 +03:00
Stanislav Erokhin
4bfdcae972 Fixed ideaSDK download logic. 2015-03-31 15:43:01 +03:00
Ilya Gorbunov
536a977f5c indexOfAny, lastIndexOfAny return an index value only (similar to indexOf, lastIndexOf).
findAnyOf, findLastAnyOf introduced to cover the case when an index and a matched string value is required.
2015-03-31 02:25:19 +03:00
Ilya Gorbunov
bb8df6be4b Restore startsWith and endsWith overloads taking single char to keep binary compatibility with markdown parser. 2015-03-31 02:25:04 +03:00
Ilya Gorbunov
b3165ac771 Rename split method to splitBy and revive old split implementation interpreting parameter as regex to provide the migration path. 2015-03-31 02:24:50 +03:00
Ilya Gorbunov
b10d869cd7 indexOf*, split, startsWith, endsWith: JS implementation 2015-03-31 02:24:35 +03:00
Ilya Gorbunov
d724ce3f7e Add code generation for asList methods in js.libraries. 2015-03-31 02:24:20 +03:00
Ilya Gorbunov
abdac27b61 Modify split(String) usages within stdlib. 2015-03-31 02:24:06 +03:00
Ilya Gorbunov
6f7a4d8429 Add methods for String: indexOfAny, lastIndexOfAny, indexOf, lastIndexOf, rangesDelimitedBy, splitToSequence, split, lineSequence, lines.
Add methods for Char: toUpperCase, toLowerCase.
Add an optional boolean parameter ignoreCase to the methods Char.equals, String.equals, String.startsWith, String.endsWith, String.contains.
2015-03-31 02:23:52 +03:00
Alexey Sedunov
e9e8be5b4e Create from Usage: Generate secondary constructors by delegator to super-calls 2015-03-30 21:10:29 +03:00
Alexey Sedunov
e8b4c43011 Create from Usage: Generate secondary constructors by delegation calls 2015-03-30 21:10:28 +03:00
Alexey Sedunov
9c0bcee9a3 Create from Usage: Generate secondary constructors by call expressions 2015-03-30 21:10:27 +03:00
Alexey Sedunov
15dddf362e Create from Usage: Secondary constructor support 2015-03-30 21:10:25 +03:00
Alexey Sedunov
11675322ee Find Usages: Fix exception in the search of class with default parameters in primary constructor 2015-03-30 21:10:24 +03:00
Alexander Udalov
0a93cfc9c0 build.xml: drop 'generate.assertions' option
It was error-prone, not very useful (only a couple seconds saved on a 3min
build), and in fact did not work since 5194310d, because <skip> element was
failing inside the default javac
2015-03-30 20:20:46 +03:00
Alexander Udalov
52292fc360 Fix build, add dependencies idea-analysis, idea -> deserialization 2015-03-30 20:15:12 +03:00
Alexander Udalov
7742fb52e6 Minor, move builtins-serializer sources to correct package 2015-03-30 19:44:21 +03:00
Alexander Udalov
d2ef040bcb Fix occasional reflection test failure
The cache in moduleByClassLoader.kt contains weak references to instances of
RuntimeModuleData. However, prior to this change no one else had any _strong_
reference to the corresponding RuntimeModuleData: KClassImpl depends on the
ModuleDescriptor almost directly. Therefore the weak references were sometimes
garbage collected and a new module was constructed for a new reflection object,
which resulted in broken equality between two reflection objects.

No test added because it was rather hard to come up with (and, more
importantly, to support) a test case.
2015-03-30 19:44:19 +03:00
Alexander Udalov
d59e1ad7ac Minor, add toString() to WeakClassLoaderBox for debug 2015-03-30 19:44:18 +03:00
Alexander Udalov
32c3bb8c7f Extract module 'deserialization' out of 'serialization'
'deserialization' stays in core because it's needed both in compiler and
reflection, but 'serialization' is used only in the compiler
2015-03-30 19:44:17 +03:00
Alexander Udalov
d09e0e73fa Rename NameSerializationUtil, move serialization-related code there 2015-03-30 17:22:07 +03:00
Alexander Udalov
085bc2197b Merge module 'serialization.jvm' into 'descriptor.loader.java'
It was very small and there proved to be no point in separation of loading Java
classes and deserializing Kotlin classes
2015-03-30 17:22:06 +03:00
Alexander Udalov
b57e15f3a4 Move utilities from NameSerializationUtil to meaningful places 2015-03-30 17:22:06 +03:00
Alexander Udalov
485dce987c Fix byte array memory leak from MemoryBasedClassLoader
40 Mb of bytes of preloaded compiler classes during the compilation become 16
Mb after this change

This is a slightly reworked version of 58b033d (reverted in 3f05419). The
problem in that commit was that URLClassLoader did not work in the fashion
MemoryBasedClassLoader was designed to work (child first, parent last). So some
resource was found in an incorrect jar which was causing the compiler to break
2015-03-30 17:12:10 +03:00
Alexander Udalov
45da9555de Fix minor bug in MemoryBasedClassLoader#getResources()
Own resources and those from the parent class loader were not combined
2015-03-30 17:12:10 +03:00
Pavel V. Talanov
d109facc6f Convert JetCoreEnvironment: migrate code in libraries 2015-03-30 15:13:05 +03:00
Pavel V. Talanov
b73bd697e6 Rename JetCoreEnvironment -> KotlinCoreEnvironemnt 2015-03-30 15:11:58 +03:00
Pavel V. Talanov
5cb431c5c4 Convert JetCoreEnvironment: migrate other code 2015-03-30 15:11:57 +03:00
Pavel V. Talanov
2dcf935b99 Convert JetCoreEnvironment: clean up code 2015-03-30 15:11:57 +03:00
Pavel V. Talanov
0209acceb1 Convert JetCoreEnvironment: autoconvert 2015-03-30 15:11:56 +03:00
Pavel V. Talanov
49a0da7750 Convert JetCoreEnvironment: rename file 2015-03-30 15:11:56 +03:00
Natalia Ukhorskaya
785f7e749f InlineCodegen: find virtual file using findVirtualFileWithHeader 2015-03-30 14:03:24 +03:00
Mikhail Glukhikh
ef6698bd52 Test fixed 2015-03-30 10:55:24 +03:00
Mikhail Glukhikh
5d7e388276 Fix of KT-7130 2015-03-30 10:55:21 +03:00
Dmitry Jemerov
1e536af87e correctly calculate the number of mask arguments required for a method with default arguments
#KT-6816 Fixed
2015-03-27 18:51:07 +01:00
Denis Zharkov
418034add3 Prohibit instance access before super call
- Before this change members just left unresolved as they were absent in the
  specific scope named scopeForSecondaryConstructorHeaderResolution that
  created just to prohibit such accesses.
- Now they are resolved the same way as other members, but diagnostic is
  repored by in-place injected CallChecker
- Drop obsolete type of class scope

 #KT-6995 Fixed
2015-03-27 20:15:00 +03:00
Denis Zharkov
b939530a5c Minor, Rename isEmpty -> isImplicit 2015-03-27 16:09:42 +03:00
Denis Zharkov
18e40d034e Change contract of getDelegationCall to @NotNull
Its existence guaranteed by parser
2015-03-27 16:09:42 +03:00
Denis Zharkov
8c048c3e43 Refine recovery for constructors 2015-03-27 16:09:41 +03:00
Denis Zharkov
b1de2066c7 Add quickfixes inserting explicit delegation calls
#KT-6963 Fixed
2015-03-27 16:09:41 +03:00
Denis Zharkov
d0c72c2c3d Mark value arguments in case of empty delegation call
It's useful for quickfixes for these diagnostics
2015-03-27 16:09:41 +03:00
Denis Zharkov
1a2167e062 Minor, always report diagnostics on callee expression
As these kinds of diagnostic always have non-empty callee expression
2015-03-27 16:09:41 +03:00
Denis Zharkov
555f9e7c06 Minor, move isEmpty, isCallToThis to JetConstructorDelegationCall 2015-03-27 16:09:41 +03:00
Denis Zharkov
023e1a13a9 Do not try to detect cycles if delegation call resolution is unsuccessful 2015-03-27 16:09:41 +03:00
Denis Zharkov
9da88bbd0f Check if element is valid before checking it's writable
Otherwise it may lead to exception
2015-03-27 16:09:41 +03:00
Denis Zharkov
7aa2642a2b Unify reporting resolution errors for empty delegation calls
- Always report "There is no applicable constructor for call without arguments in superclass"
  under `constructor` keyword by replacing default TracingStrategy
- Remove positioning strategy used for reporting non-applicable
  for empty delegation calls

 #KT-6971 Fixed
2015-03-27 16:09:41 +03:00
Denis Zharkov
683bc4709f Add test case: 'platformStatic' on constructors 2015-03-27 16:09:41 +03:00
Denis Zharkov
ce3bf423ad Prohibit 'native' annotation on constructors
Currently doesn't work for primary ones

 #KT-7000 Fixed
2015-03-27 16:09:41 +03:00
Denis Zharkov
29b03e8175 Report illegal modifiers on secondary constructors 2015-03-27 16:09:41 +03:00
Denis Zharkov
66023e6f31 Prohibit platformName on secondary constructor
#KT-6999 Fixed
2015-03-27 16:09:41 +03:00
Denis Zharkov
8aa4e9bd94 Report error for inappropriate modifiers usages 2015-03-27 16:09:40 +03:00
Denis Zharkov
01e5ee718f Allow secondary constructors without body
#KT-6967 Fixed
2015-03-27 16:09:40 +03:00
Alexander Udalov
3f0541924f Revert "Fix byte array memory leak from MemoryBasedClassLoader"
This reverts commit 58b033d9fb.
2015-03-27 15:28:52 +03:00
Alexey Sedunov
dcfefb0847 Extract Function: Do not extract extension function reference as parameter 2015-03-26 23:11:51 +03:00
Alexey Sedunov
4ec1b9971f Parser: Do not produce JetQualifiedExpression without receiver
#KT-7122 Fixed
2015-03-26 23:11:50 +03:00
Stanislav Erokhin
cbcd2c3cce Fixed formatter for function expression 2015-03-26 22:08:46 +03:00
Stanislav Erokhin
daa437b535 Fix JetTreeVisitor for file case 2015-03-26 22:08:46 +03:00
Stanislav Erokhin
faf7922884 Migrate AddInitKeywordFix & ClassObjectToDefaultObjectFix to JetWholeProjectModalAction 2015-03-26 22:08:46 +03:00
Stanislav Erokhin
f40b503454 Create DeprecatedLambdaSyntaxFix for whole project 2015-03-26 22:08:45 +03:00
Stanislav Erokhin
3fd8c5e980 Minor. Divide method moveInsideParenthesesAndReplaceWith 2015-03-26 22:08:45 +03:00
Alexander Udalov
58b033d9fb Fix byte array memory leak from MemoryBasedClassLoader
40 Mb of bytes of preloaded compiler classes during the compilation become 16
Mb after this change
2015-03-26 21:42:05 +03:00
Alexander Udalov
30916e37ce Move bootstrap runtime copying to 'prepare-dist' to fix dist-quick 2015-03-26 21:38:05 +03:00
Alexander Udalov
fd48b4dd04 Minor, drop unneeded code in findClassInJava
JavaClassFinderImpl already checks that it never finds light classes and
ReflectJavaClassFinder can't ever find them
2015-03-26 21:34:53 +03:00
Pavel V. Talanov
f3191a39a5 Do not store instances of Application in strong static references
Introduce ExtensionProvider which takes care of caching application using weak reference
Fixes a memory leak for scenarios with application being substituted (Jps build does that when compiling multiple modules)
2015-03-26 21:09:11 +03:00
Dmitry Jemerov
827d9d48c1 Correctly apply SAM conversions in superclass constructor calls
#KT-5452 Fixed
2015-03-26 19:03:42 +01:00
Evgeny Gerashchenko
da9fe7d9a9 Updated URL pattern for IDEA EAP page 2015-03-26 18:28:08 +03:00
Yan Zhulanow
1338e0cd0a Replicate IDEA plugin versions only on TeamCity build 2015-03-26 16:12:10 +03:00
Michael Nedzelsky
7b15f9c7c9 JS: add message to assert in JsLibraryStdDetectionUtil 2015-03-26 15:50:27 +03:00
Michael Nedzelsky
2f7ebf677f JS: allow js-file in library-files for cli compiler 2015-03-26 00:22:19 +03:00
Pavel V. Talanov
b2d0b2ebc9 Fix erroneous squash: isOnTeamcity check actually does something 2015-03-25 21:39:31 +03:00
Pavel V. Talanov
929d4644b5 Output compilation time as teamcity statistics in jps plugin 2015-03-25 20:01:23 +03:00
Dmitry Jemerov
bb1410b20a generate more correct bytecode for casting Unit to other types 2015-03-25 17:51:04 +01:00
Pavel V. Talanov
9d618ca767 Replace OBJECT$ usages in code and test data 2015-03-25 18:28:01 +03:00
Pavel V. Talanov
ed218c473a Get rid of 'class object' usages in code and builtins
Replace some comments and library usages as well
2015-03-25 18:28:00 +03:00
Natalia Ukhorskaya
67f84c0f76 Update to IDEA 14.1 (141.177.4) 2015-03-25 17:44:35 +03:00
Natalia Ukhorskaya
a92022edcd Minor: replace deprecated function calls 2015-03-25 17:44:05 +03:00
Dmitry Jemerov
a33162ba46 add build-docs.xml to ant.xml 2015-03-25 15:32:43 +01:00
Dmitry Jemerov
a19fadf454 add Module.md to docs build script 2015-03-25 15:32:42 +01:00
Dmitry Jemerov
389498eb91 Merge pull request #621 from JetBrains/rr/yole/kt4142
Regression tests for some more obsolete issues in the JVM backend
2015-03-25 13:28:38 +01:00
max-kammerer
c35dbb2746 Merge pull request #617 from JetBrains/rr/yole/number-toint
when generating coercion, take into account the original type of the exp...
2015-03-25 15:19:05 +03:00
Ilya Gorbunov
a34e15e157 Rename methods: trimLeft/Right -> trimStart/End, padLeft/Right -> padStart/End 2015-03-25 03:26:31 +03:00
Ilya Gorbunov
25cfd36e7c drop, take: combine implementations for Collections, Lists and Iterables.
slice: predict length of resulting list.
2015-03-25 03:26:18 +03:00
Ilya Gorbunov
4a7918b0a1 Add takeLast method for String, lists and arrays.
Check the parameter n in drop, take and takeLast methods.
2015-03-25 03:26:06 +03:00
Ilya Gorbunov
05b5afcb94 Add removePrefix, removeSuffix, removeEnclosing methods.
Deprecate trimLeading/trimTrailing/trim(String) methods in favor of new ones.
2015-03-25 03:25:53 +03:00
Ilya Gorbunov
0484d3bf2f Imperative trim implementation to prevent double lambda expansion in inline function. 2015-03-25 03:25:40 +03:00
Ilya Gorbunov
5b2a5c78ca Fix js-stdlib compilation and tests. 2015-03-25 03:25:27 +03:00
Ilya Gorbunov
4c58f4ec20 Add removeRange method.
Breaking change in replaceRange(IntRange, String) method: the end index of the range now is included in the part being replaced.
2015-03-25 03:25:14 +03:00
Ilya Gorbunov
ba15e5b295 Trimming and padding methods.
Kinda breaking change: Char.isWhitespace treats non-breaking spaces as whitespace too to match the Unicode definition of whitespace.
2015-03-25 03:25:01 +03:00
Ilya Gorbunov
0580039ded Provide additional string conversion methods to match missing java.lang.String constructors.
Fixes KT-5019
2015-03-25 03:24:48 +03:00
Dmitry Jemerov
0467bba7a6 regression test for KT-5953 2015-03-24 21:05:23 +01:00
Dmitry Jemerov
f6093274ab regression test for KT-5395 2015-03-24 20:59:56 +01:00
Dmitry Jemerov
9d229ad271 regression test for KT-4259 2015-03-24 20:49:53 +01:00
Dmitry Jemerov
4f0cf2f918 regression test for obsolete issue KT-4142 2015-03-24 19:14:18 +01:00
Dmitry Jemerov
843298883f shuffle some code around to avoid JVM crash in tests 2015-03-24 19:08:41 +01:00
Dmitry Jemerov
20fbb814e4 remove abstraction which is no longer needed 2015-03-24 20:21:23 +03:00
Dmitry Jemerov
d2634eb7eb remove obsolete module script generator from JPS 2015-03-24 20:21:22 +03:00
Dmitry Jemerov
2767e789fb when generating coercion, take into account the original type of the expression 2015-03-24 18:01:56 +01:00
Mikhail Glukhikh
2bc124fa3d IO second review: empty File.subPath() allowed, OutputStream.bufferedWriter() added,
normalize(), startsWith(), endsWith() rewritten, LinesStream --> LinesSequence,
File.replaceBytes() / replaceText() rolled back to writeBytes() / writeText(),
some exception messages formulated more clearly, refactorings, comments,
relativeTo() slightly optimized, additional tests
2015-03-24 19:52:19 +03:00
Mikhail Glukhikh
88733d34eb Additional fix of String.getRootName() for network names, relevant test fixes 2015-03-24 19:40:24 +03:00
Mikhail Glukhikh
5b636eef7b Kotlin I/O review/M11 fixes: Stream --> Sequence, recurse() returned back,
additional helpers like File.bufferedReader() and String.byteInputStream(),
copyRecursively / deleteRecursively were rewritten using FileTreeWalk,
FilePathComponents introduced as a replacement of FileIterator,
classes / methods / properties permissions fixed, Linux specific things,
resolveSibling rewritten using FilePathComponents
2015-03-24 19:40:21 +03:00
Denis Mekhanikov
f560677b15 Kotlin I/O new features: relativeTo, copyTo, copyRecursively, deleteRecursively, file tree walkers,
file component iterators, file roots, startsWith, endsWith, subPath, normalize, replaceBytes, replaceTest,
additional tests and comments
2015-03-24 19:40:19 +03:00
Michael Nedzelsky
dae42f7c76 fix EA-66819 - IOE: VirtualDirectoryImpl.contentsToByteArray
Changes: do not try to read content for virtual file in case it is really a directory
2015-03-24 18:58:42 +03:00
Dmitry Jemerov
5370073c05 parameters in KDoc take precedence over other identifiers 2015-03-24 16:05:40 +01:00
Yan Zhulanow
900c67de4e Replicate idea-version from the main plugin.xml to the android-idea-plugin plugin.xml 2015-03-24 16:43:45 +03:00
Alexey Sedunov
3e429c4b00 Change Signature: Fix behavior of "Receiver" checkbox 2015-03-24 16:41:10 +03:00
Alexey Sedunov
461ae25239 Find Usages: Properly select primary element for Find Usages Dialog. Avoid delegating handler when there is only one primary element
#KT-7048 Fixed
2015-03-24 16:41:09 +03:00
Alexey Sedunov
a57be6dcab Change Signature: Do not report conflict when parameter name clashes with suggested name of the receiver 2015-03-24 16:41:08 +03:00
Alexey Sedunov
0eda6c88b9 Quick-Fixes: Fix signature configuration for extension functions
#KT-7019 Fixed
2015-03-24 16:41:07 +03:00
Alexey Sedunov
93f00db871 Extraction Engine: Consider declarations when comparing descriptors
#KT-6960 Fixed
2015-03-24 16:41:05 +03:00
Alexey Sedunov
502b67ecc0 Extract Function: Support multi-file tests 2015-03-24 16:41:04 +03:00
Alexey Sedunov
16a4dbd692 Quick-Fixes: Do not add 'abstract' modifier to anonymous objects
#KT-6656 Fixed
2015-03-24 16:41:03 +03:00
Alexey Sedunov
1ed2c82008 Quick-Fixes: Approximate non-denotable type with nearest denotable supertype
#KT-5915 Fixed
2015-03-24 16:41:01 +03:00
Alexey Sedunov
a2162810ff Quick-Fixes: Drop unnecessary parentheses when simplifying cast expressions
#KT-6501 Fixed
2015-03-24 16:40:59 +03:00
Alexey Sedunov
71a5e09a0b Quick-Fixes: Support USELESS_CAST diagnostic in "Remove cast" quick-fix
#KT-6422 Fixed
2015-03-24 16:40:58 +03:00
Alexey Sedunov
f5107be315 Quick-Fixes: Support "Change function return type" quick-fix for non-local returns
#KT-6910 Fixed
2015-03-24 16:40:57 +03:00
Michael Nedzelsky
842eaa86a4 merge serialization.js module into js.serializer 2015-03-24 15:13:45 +03:00
Dmitry Jemerov
e550dba033 Merge remote-tracking branch 'origin/master' 2015-03-23 19:00:33 +01:00
Dmitry Jemerov
06ac8b89b8 Merge branch 'rr/yole/module-md-rewrite' 2015-03-23 19:00:17 +01:00
Dmitry Jemerov
bd1a116c9e add documentation for recently added packages 2015-03-23 18:52:27 +01:00
Alexander Udalov
0fe0235525 Improve built-in initialization error message 2015-03-23 17:15:06 +03:00
Dmitry Jemerov
408f7da0c5 correct indentation after pressing Enter in KDoc tag
#KT-7044 Fixed
2015-03-23 15:06:59 +01:00
Alexey Tsvetkov
03f0c6ede7 JS: added test for callable reference as stdlib inline function argument 2015-03-23 16:43:49 +03:00
Alexey Tsvetkov
1557111277 JS: fix issues with js() usage in inline functions 2015-03-23 16:43:49 +03:00
Alexey Tsvetkov
5ff5cea17a JS: report error when js() produces empty AST 2015-03-23 16:43:49 +03:00
Alexey Tsvetkov
eb4f6b8a1e JS: generate shorter tag for inline functions 2015-03-23 16:43:49 +03:00
Alexey Tsvetkov
8be3628074 JS: removed comma expression decomposition from InlineMetadata
There are used to be two inline tags (corresponding to start, end of inline function).
An expression like "startTag, function, endTag" was parsed into comma expression, then decomposed.
Now, it's just one tag at start, and parser can read function, then stop.
Thus, there is no need to decompose comma expressions.
2015-03-23 16:43:48 +03:00
Alexey Tsvetkov
c7e8f52faf JS: use one tag for inlining 2015-03-23 16:43:48 +03:00
Alexey Tsvetkov
e83b253b3e JS: renamed JsParser->JsAstMapper 2015-03-23 16:43:48 +03:00
Alexey Tsvetkov
b5797eb15b JS: added tests for recursion cycle in inline functions 2015-03-23 16:43:48 +03:00
Alexey Tsvetkov
24f2121f9b JS: report error from backend, when inline function is called recursively 2015-03-23 16:43:48 +03:00
Alexander Udalov
7e69a5ac9a Don't create KProperty instance for synthetic field
#KT-5759 Fixed
2015-03-23 16:30:26 +03:00
Alexander Udalov
a5a60b6917 Move code from file named util.kt to meaningful place 2015-03-23 16:30:25 +03:00
Alexander Udalov
9a041136f2 Make ClassId's relative class name FqName instead of FqNameUnsafe
It was FqNameUnsafe in times when there were classes without identifier names,
specifically class objects with names like '<class-object-for-...>'
2015-03-23 16:30:25 +03:00
Alexander Udalov
31554b9fa3 Introduce ClassId.getShortClassName() for convenience 2015-03-23 16:30:24 +03:00
Alexander Udalov
9cf0720925 Fix KClass.simpleName for local classes 2015-03-23 16:30:24 +03:00
Alexander Udalov
aaef2d42cd Do not report "no reflection" inspection in JS modules
#KT-7087 Fixed
2015-03-23 15:54:34 +03:00
Alexander Udalov
3335752462 Do not report "no reflection" inspection where reflection is not used
#KT-7059 Fixed
2015-03-23 15:54:33 +03:00
Dmitry Jemerov
00697bf764 use new structure for module.md 2015-03-23 13:10:16 +01:00
Zalim Bashorov
d569ea5974 JS frontend: added diagnostic about secondary constructors not supported yet. 2015-03-23 13:52:56 +03:00
Alexander Udalov
9c88f9e744 Delete buildGrammarLexer.xml from .idea/ant.xml 2015-03-23 13:01:12 +03:00
Alexander Udalov
06537c5b14 Clarify 'class_fq_name` field in jvm_descriptors.proto
Regenerate protobuf files with protoc 2.5.0
2015-03-23 12:21:38 +03:00
Alexander Udalov
5d0af36432 Minor, pull equals/hashCode/toString up to DescriptorBasedProperty 2015-03-23 12:21:24 +03:00
Alexander Udalov
e60c299def Fix warnings in module 'reflection.jvm', clarify some code 2015-03-23 12:21:17 +03:00
Alexander Udalov
4e7d4f9340 Fix ReplInterpreterTestGenerated locally 2015-03-23 12:21:07 +03:00
Alexander Udalov
73f06baa90 Drop temporary bootstrapping hack 2015-03-23 12:20:45 +03:00
Alexey Sedunov
e0a394ec62 Change Signature: Replace isConstructor flag with enum. Fix signature preview 2015-03-21 03:29:04 +03:00
Alexey Sedunov
d19e6337a3 Find Usages: Support of secondary constructors and delegation calls 2015-03-21 03:29:03 +03:00
Alexey Sedunov
312a1db273 Call Hierarchy: Support secondary constructors 2015-03-21 03:29:01 +03:00
Alexey Sedunov
fe553edfb4 References Search: Add extension which looks for constructor usages in delegation calls 2015-03-21 03:29:00 +03:00
Alexey Sedunov
b45965b290 Safe Delete: Support secondary constructors 2015-03-21 03:28:58 +03:00
Alexey Sedunov
cefd8b43a0 Safe Delete: Add test for primary constructor with usages in delegation calls 2015-03-21 03:28:57 +03:00
Alexey Sedunov
83e23aafe5 Fix retrieval of class constructor 2015-03-21 03:28:56 +03:00
Alexey Sedunov
5c7debbf88 Change Signature: Support refactoring of primary/secondary constructor by delegation call reference 2015-03-21 03:28:54 +03:00
Alexey Sedunov
173a28a25e Change Signature: Add tests for secondary constructors and delegation calls 2015-03-21 03:28:53 +03:00
Michael Nedzelsky
d01cc8ac55 fix navigation is Kotlin/Java with Kotlin/Javascript modules 2015-03-21 03:19:46 +03:00
Ilya Gorbunov
0eabb6c8d4 Fix js test results interpretation. 2015-03-20 23:13:07 +03:00
Zalim Bashorov
1b530887cd Minor: fix testdata 2015-03-20 21:23:31 +03:00
Zalim Bashorov
aaa7f6d5e4 JS frontend: added diagnostic about non-toplevel classifiers are unsupported yet. 2015-03-20 21:23:31 +03:00
Zalim Bashorov
1bf7610751 Minor in JS frontend: fix compiler warnings. 2015-03-20 21:23:31 +03:00
Zalim Bashorov
68619be023 Minor in JS frontend: extract native annotation checkers to separate file. 2015-03-20 21:23:31 +03:00
Zalim Bashorov
8673f95dc5 AnnotationChecker -> DeclarationChecker 2015-03-20 21:23:30 +03:00
Evgeny Gerashchenko
1d703c39ef Enabled "Invert if condition" intention. It was erroneously disabled one year ago. 2015-03-20 19:34:19 +03:00
Evgeny Gerashchenko
c652cc16dc Classified usages as type parameters correctly.
#KT-7047 fixed
2015-03-20 19:34:18 +03:00
Evgeny Gerashchenko
51fb4910a1 Classified usages in up casts correctly.
#KT-7047 fixed
2015-03-20 19:34:18 +03:00
Evgeny Gerashchenko
e752dd0a80 Classified usages in "is" of when entry correctly.
#KT-7047 fixed
2015-03-20 19:34:17 +03:00
Evgeny Gerashchenko
f7883fb1df Added quick fix for "Unused receiver parameter". 2015-03-20 19:34:16 +03:00
Evgeny Gerashchenko
1946360a80 Introduced "Unused receiver parameter" inspection. 2015-03-20 19:34:16 +03:00
Evgeny Gerashchenko
edd51908ec KT-7021 Don't mark companion object as unused if some stuff from it is used
#KT-7021 fixed
2015-03-20 19:34:15 +03:00
Evgeny Gerashchenko
efccde2c0b Finding implicit usages of companion object in containing class. 2015-03-20 19:34:15 +03:00
Dmitry Jemerov
64937f0ccf Merge pull request #607 from JetBrains/delete-line-suffix
fix source links in generated API docs
2015-03-20 17:23:41 +01:00
Dmitry Jemerov
de7fb22100 fix path mapping for source links 2015-03-20 17:00:58 +01:00
Dmitry Jemerov
75fe342969 fix source links in generated API docs
#KT-7062 Fixed
2015-03-20 16:41:59 +01:00
Dmitry Jemerov
b37af0b9e7 Merge pull request #603 from JetBrains/rr/yole/delete-old-website
delete old Kotlin website and old API generation target
2015-03-20 15:28:47 +01:00
Nikolay Krasko
d7b150752c Cover only one idea branch in plugin compatible check 2015-03-20 17:19:22 +03:00
Andrey Breslav
a389d694d8 Merge pull request #605 from JetBrains/rr/yole/delete-confluence-grammar-generator
delete old grammar generator
2015-03-20 15:16:33 +03:00
Nikolay Krasko
12406ec11f Update to idea 141.175.3 2015-03-20 14:11:31 +03:00
Nikolay Krasko
2e657d0d34 Use lazy initialization for built-ins in tests 2015-03-20 14:11:30 +03:00
Nikolay Krasko
126f38d79c Initialize builtins with ResolveSession to avoid counting bodies in LazyTopDownAnalyzer 2015-03-20 14:11:29 +03:00
Dmitry Jemerov
bed63c8321 delete old grammar generator 2015-03-20 12:08:05 +01:00
Andrey Breslav
2c04f900ef Merge pull request #604 from JetBrains/rr/yole/kt7049
add some missing elements to Kotlin grammar
2015-03-20 14:05:24 +03:00
Dmitry Jemerov
888b655cd6 add some missing elements to Kotlin grammar
#KT-7049 Fixed
2015-03-20 11:54:16 +01:00
Dmitry Jemerov
a6e5c0a76e Merge pull request #602 from JetBrains/rr/yole/build-docs
build script to generate standard library documentation with Dokka
2015-03-20 10:05:29 +01:00
Natalia Ukhorskaya
8bcc638bec Do not analyze all files in package in JetPositionManager 2015-03-20 09:41:32 +03:00
Dmitry Jemerov
15c253e54f remove obsolete modules from pom.xml 2015-03-19 19:59:47 +01:00
Dmitry Jemerov
57bb7236cc delete old Kotlin website and old API generation target 2015-03-19 16:37:02 +01:00
Dmitry Jemerov
17fddbac18 change target path 2015-03-19 15:43:06 +01:00
Dmitry Jemerov
ce39a27869 build script to generate standard library documentation with Dokka 2015-03-19 15:28:35 +01:00
Dmitry Jemerov
a24f910b5a Merge pull request #601 from JetBrains/rr/yole/suppress-internal
Suppress documentation for the kotlin.internal package
2015-03-19 11:21:54 +01:00
Dmitry Jemerov
50c4a88661 suppress documentation for HashPMap 2015-03-19 10:41:58 +01:00
Dmitry Jemerov
e9ffd589fc @suppress for APIs in kotlin.reflect.jvm.internal 2015-03-19 10:33:31 +01:00
Dmitry Jemerov
cffb80c86a Suppress documentation for the kotlin.internal package 2015-03-19 09:58:38 +01:00
Andrey Breslav
c7ab333fa8 JPS test data fixed for JS 2015-03-18 21:19:15 +03:00
Denis Zharkov
eefea26d54 Recovery for initializer if no LBRACE
- If no LBRACE after 'init' keyword parse initializer without body
- Made getBody() nullable, appropriate checks added
2015-03-18 19:59:25 +03:00
Denis Zharkov
f4ed05cd90 Update specs formatting 2015-03-18 19:59:25 +03:00
Denis Zharkov
6f60bfad84 Fix "Make supertype open" quickfix in case of using secondary ctor
#KT-7002 Fixed
2015-03-18 19:59:25 +03:00
Denis Zharkov
3e0c6fc6a2 Add quickfix "Add 'init' keyword in whole project" 2015-03-18 19:59:25 +03:00
Denis Zharkov
df23ff3473 Improve AddInitKeyword quickfix
- Extract quickfix method
- Delete redundant semicolon
- Do not replace initializer PSI element
2015-03-18 19:59:25 +03:00
Denis Zharkov
13f933693f Setup spacing rules for anonymous initializers 2015-03-18 19:59:25 +03:00
Denis Zharkov
bd5dbb665e Fix header scope for secondary constructors
Add companion object's scope and nested classes

 #KT-6996 fixed
2015-03-18 19:59:24 +03:00
Michael Nedzelsky
977b743f3d JS: always generate metadata while compiling from idea 2015-03-18 19:43:02 +03:00
Michael Bogdanov
ed62e4972f Temporary disable smap generation 2015-03-18 19:00:24 +03:00
Michael Bogdanov
6e55ea6480 Skip smap generation if there is no source information
#KT-7022 Fixed
2015-03-18 18:49:18 +03:00
Yan Zhulanow
c945a53eec Move AndroidPsiTreeChangePreprocessor to android-idea-plugin module 2015-03-18 17:51:58 +03:00
Stanislav Erokhin
0b76dbb492 Create DeprecatedLambdaSyntaxFix 2015-03-18 17:10:12 +03:00
Pavel V. Talanov
a5a6ecd1ec Fix NPE from RenameOnSecondaryConstructorHandler 2015-03-18 16:34:03 +03:00
Stanislav Erokhin
43e24f6b0d Fixed test data for new lambda syntax 2015-03-18 16:06:44 +03:00
Stanislav Erokhin
371908a280 Temporary added DEPRECATED_LAMBDA_SYNTAX to tests.
It will be fixed soon.
2015-03-18 16:06:44 +03:00
Stanislav Erokhin
47e8b1e77c Create warning for old lambda syntax. 2015-03-18 16:06:44 +03:00
Stanislav Erokhin
c24c3daf54 Allowed shorthand parameter list with type reference in lambda. 2015-03-18 16:06:44 +03:00
Stanislav Erokhin
7a8341d0f1 Added parser test for function with initializer. 2015-03-18 16:06:44 +03:00
Stanislav Erokhin
446816e3db Created automatic labeling of function expression. 2015-03-18 16:06:44 +03:00
Stanislav Erokhin
4eac3f3f0e Remove useless casts after fixing subtyping for star projections 2015-03-18 16:06:44 +03:00
Alexander Udalov
8788bc7cc6 Fix classpath for ant tests 2015-03-18 16:06:44 +03:00
Nikolay Krasko
e80e033a1c Fixes after review: better code in splitting bundled runtime version 2015-03-18 15:38:19 +03:00
Natalia Ukhorskaya
77139f20b9 Inline ${protobuf.version} into kotlin-reflect pom.xml (it couldn't be resolved from gradle) 2015-03-18 15:36:19 +03:00
Evgeny Gerashchenko
2fcee37b58 Temporarily disabled "Unused symbol" for companion objects. 2015-03-18 15:20:45 +03:00
Evgeny Gerashchenko
2aeccc7011 Expanded incremental compilation tests with cache version change. 2015-03-18 15:20:45 +03:00
Alexander Udalov
2f001ca696 Pack built-ins metadata to kotlin-runtime Maven artifact
This fixes reflection usage against Maven's kotlin-reflect
2015-03-18 14:38:26 +03:00
Pavel V. Talanov
bb2f08635c default -> companion: Minor: fix comment 2015-03-18 14:35:54 +03:00
Pavel V. Talanov
41b65205b0 default -> companion: fix message for quick fix 2015-03-18 14:35:53 +03:00
Yan Zhulanow
e69a1d6aba Zip KotlinAndroidExtensions artifact 2015-03-18 13:09:49 +03:00
Natalia Ukhorskaya
5cea6cfb45 Extra variables: check range before create 2015-03-18 11:03:36 +03:00
Alexey Sedunov
429a50ab87 Safe Delete: Support secondary constructors and delegation calls 2015-03-18 10:56:37 +03:00
Denis Zharkov
e05cbf5e9f Support secondary constructors and delegation calls in Change Signature.
Initial support of Find Usages
2015-03-18 10:56:36 +03:00
Denis Zharkov
488754de7d Move declarationsSearch package from idea to idea-analysis
It will be used in later commits by idea-analysis code
2015-03-18 10:56:35 +03:00
Denis Zharkov
0debd1ce6f Make IDE parts using light methods work with JetFunction 2015-03-18 10:56:34 +03:00
Alexey Sedunov
7d278f2f42 Use class name as secondary constructor name 2015-03-18 10:56:33 +03:00
Denis Zharkov
c0c1273388 Prohibit rename refactoring on secondary ctor
Make custom handler that runs when caret is on secondary ctor
but do nothing because constructors don't have name.

It's neccessary because otherwise default handler will be ran
with proposition to rename class.

Also note, that we do not run this handler when
caret is on constructor's body or argument's list to allow renaming
inner declarations.
2015-03-18 10:56:32 +03:00
Denis Zharkov
25de64c6ab Support class rename in place of secondary ctor call 2015-03-18 10:56:31 +03:00
Denis Zharkov
4b564fcc51 Do not show "Convert to extension" intention for secondary constructors
#KT-6969 Fixed
2015-03-18 10:56:30 +03:00
Denis Zharkov
d1308ebf84 Don't report unused symbol if secondary constructor used
#KT-6997 Fixed
2015-03-18 10:56:29 +03:00
Denis Zharkov
c6290efbe2 Fix origin of secondary constructors 2015-03-18 10:56:28 +03:00
Dmitry Jemerov
615258877a Merge pull request #595 from JetBrains/rr/yole/render-markdown
render Markdown and support link navigation in KDoc comments
2015-03-18 08:39:35 +01:00
Michael Nedzelsky
e3bd99d510 JS: fix clash between sources and metadata in one library 2015-03-18 09:39:34 +03:00
Michael Nedzelsky
577921d4f7 add JsHeaderLibraryDetectionUtils.isJsHeaderLibraryWithSources 2015-03-18 09:39:31 +03:00
Michael Nedzelsky
6f0ee2ed94 JetSourceNavigationHelper: support for Kotlin/Javascript navigation to sources 2015-03-18 09:39:29 +03:00
Michael Nedzelsky
19950fcc60 DecompiledNavigationUtils: support navigation for Kotlin/Javascript 2015-03-18 09:39:27 +03:00
Michael Nedzelsky
803e95364c add KotlinJavascriptMetaFileDecompiler and support for .meta files 2015-03-18 09:39:25 +03:00
Michael Nedzelsky
5b6849225c DecompiledTextFactory: add buildDecompiledTextFromJSMetadata 2015-03-18 09:39:22 +03:00
Michael Nedzelsky
6b94962f77 add JsMetaFileUtils 2015-03-18 09:39:20 +03:00
Michael Nedzelsky
daaa99989b IdeaModuleInfos: add LIBRARY_PREFIX constant 2015-03-18 09:39:18 +03:00
Michael Nedzelsky
7a00c3cddd KotlinClsStubBuilder class: final -> open 2015-03-18 09:39:15 +03:00
Michael Nedzelsky
4538324b96 add serialization.js compiler output to kotlin-plugin artifact 2015-03-18 09:39:13 +03:00
Michael Nedzelsky
21ef6d5771 temporary solution for all classes completion for Kotlin/Javascript libraries 2015-03-18 09:39:11 +03:00
Michael Nedzelsky
094bd1da4b JsAnalyzerFacade: support for metadata 2015-03-18 09:39:09 +03:00
Michael Nedzelsky
b0b90ff6a9 add KotlinJavascriptSerializerTest 2015-03-18 09:39:06 +03:00
Michael Nedzelsky
33cdf8c969 JS backend: add cli test for creating metadata and ant test for library with metadata 2015-03-18 09:39:04 +03:00
Michael Nedzelsky
0050c9888d fix KotlinJpsBuildTest 2015-03-18 09:39:02 +03:00
Michael Nedzelsky
1a4a7f6715 build.xml: remove module name from js-stdlib manifest file 2015-03-18 09:39:00 +03:00
Michael Nedzelsky
a1ee616769 build.xml: create and archive meta information for js-stdlib 2015-03-18 09:38:58 +03:00
Michael Nedzelsky
7ebfd37c33 JS backend: support for reading metadata 2015-03-18 09:38:55 +03:00
Michael Nedzelsky
3bf14518e8 JS backend: add -meta-info command line option for cli compiler 2015-03-18 09:38:53 +03:00
Michael Nedzelsky
711501af56 add new module js.serializer 2015-03-18 09:38:51 +03:00
Michael Nedzelsky
af4afaba4a DescriptorUtils: add getPackagesFqNames 2015-03-18 09:38:49 +03:00
Michael Nedzelsky
e0c0012a20 add serialization.js module 2015-03-18 09:38:47 +03:00
Michael Nedzelsky
9be62de964 add FlexibleTypeCapabilitiesDeserializer.Dynamic object 2015-03-18 09:38:45 +03:00
Michael Nedzelsky
a7ba93c1d1 add flexibleTypeCapabilitiesDeserializer field to BuiltinsPackageFragment 2015-03-18 09:38:42 +03:00
Michael Nedzelsky
77e9ab8ad7 JS: FunctionReader: remove unnecessary check for libraries 2015-03-18 09:38:40 +03:00
Michael Nedzelsky
69417903e2 kotlin_lib_ecma5.js: add metadata function 2015-03-18 09:38:38 +03:00
Michael Nedzelsky
a6c21fbe85 JS backend: LibraryUtils: add support for load and write metadata 2015-03-18 09:38:36 +03:00
Michael Nedzelsky
c927b69103 DescriptorSerializer: add skip argument to packageProto method 2015-03-18 09:38:33 +03:00
Michael Nedzelsky
930ecb9cf9 move BuiltInsSerializerExtension from builtins-serializer to serialization module 2015-03-18 09:38:25 +03:00
Michael Bogdanov
d765d899a7 Fix NPE with origin calculation 2015-03-18 09:22:56 +03:00
Zalim Bashorov
0ddec2d9b5 Minor in JS backend: throw IllegalStateException instead of UnsupportedOperationException inside CallCase 2015-03-18 08:55:56 +03:00
Zalim Bashorov
8421a15521 JS backend: report diagnostic when try to get referenece on builtin members instead of crash with Exception. 2015-03-18 08:55:56 +03:00
Zalim Bashorov
975c4ffab5 JS backend: report diagnostic for class literal(Foo::class) instead of crash with Exception. 2015-03-18 08:55:56 +03:00
Zalim Bashorov
8d6cbb671a JS backend: report diagonstic message for unsupported element instead of throw exception.
#KT-6507 Fixed
2015-03-18 08:55:56 +03:00
Alexander Udalov
593613609f Document JVM-specific reflection API 2015-03-17 23:39:15 +03:00
Alexander Udalov
59d3731b93 Document generated K*Functions 2015-03-17 23:39:14 +03:00
Alexander Udalov
e34b3c5298 Document interfaces in package kotlin.reflect 2015-03-17 23:39:14 +03:00
Alexander Udalov
fcdd5a872c Rename dispatchReceiver -> instance, T -> E 2015-03-17 23:39:14 +03:00
Alexander Udalov
a4f9fe1eaa Filter out invisible fakes in KClass.properties
A user will rarely need those at the moment, and there's currently no other way
to let him filter out them by himself
2015-03-17 23:39:13 +03:00
Alexander Udalov
d3abd54b06 Add 'val KClass.declaredProperties', make getProperties a property 2015-03-17 23:39:13 +03:00
Alexander Udalov
4a61f2751c Finish off KObject
The ABI version was increased to 22 in 94937a3
2015-03-17 23:39:13 +03:00
Denis Zharkov
36665fe3b8 Change logic of constructor delegation call resolution
- If class has type arguments (A<T1,..>) then
  resolve it's delegation call to `this` as for expression A<T1, ..>()
  like type arguments are explicitly specified.

- Same logic works for `super` delegation calls.

- It could be just enough to substitute all candidates before resolve
  but diagnostic messages looks more correct when substitution is
  performed within CandidateResolver.performResolutionForCandidateCall
  because it works the same way as when resolving A<T1, ..>().

 #KT-6992 Fixed
 #KT-6993 Fixed
 #KT-6994 Fixed
2015-03-17 23:18:35 +03:00
Denis Zharkov
e37cf6b6a1 Minor, change method contract to @NotNull 2015-03-17 23:18:35 +03:00
Denis Zharkov
52ba8333dc Refactor delegation call resolution
- Move resolution logic from BodyResolver to CallResolver
- Call resolveConstructorDelegationCall explicitly without resolveFunctionCall
- Drop dead condition and unused method
2015-03-17 23:18:35 +03:00
Denis Zharkov
9cecd69a9e Drop unneeded condition that leads to error
This check is obsolete but leads to problems.

It appears when resolving recursive calls (see sameTypeParameterUse.kt):

`foo<R>(x: R, y: R)` within call `foo<R>(x, "")` after substitution
has R as type of it's second argument, and when checking value arguments,
x is not checked because supposed to be dependent on type parameter of candidate
(that is effectively false), so there are two successful candidates
in resolution results and wrong OVERLOAD_RESOLUTION_AMBIGUITY error.
2015-03-17 23:18:34 +03:00
Denis Zharkov
682f8a3110 Use original constructor descriptor when searching cycles 2015-03-17 23:18:34 +03:00
Denis Zharkov
6c46606f2b Fix constructors redeclaration message
#KT-6966 Fixed
2015-03-17 23:18:34 +03:00
Denis Zharkov
22425de5cb Setup spacing rules for secondary constructors
#KT-6968 Fixed
2015-03-17 23:18:34 +03:00
Denis Zharkov
9e5192e0e3 Prohibit val/vars/modifiers on secondary constructor parameter
#KT-6962 Fixed
2015-03-17 23:18:33 +03:00
Dmitry Jemerov
853fce4b71 render Markdown and support link navigation in KDoc comments 2015-03-17 19:55:49 +01:00
Nikolay Krasko
99fb75c943 Consider bundled library version to be plugin version without identifier parts 2015-03-17 20:44:18 +03:00
Zalim Bashorov
8054f18287 Minor in JS backend: add @Nullable to JsNameRef#getQualifier and JsNameRef#getSymbol. 2015-03-17 19:00:51 +03:00
Zalim Bashorov
d6c70cc143 JS backend: added @Nullable to JsNameRef#getName and added assertion to get more information for reproduce #EA-66032 2015-03-17 19:00:50 +03:00
Zalim Bashorov
7d3094a0f1 JS backend: use FqNameUnsafe when generate delegateName to avoid problems with special names.
#EA-64029 Fixed
2015-03-17 19:00:50 +03:00
Pavel V. Talanov
dfa8fbcb0d default -> companion: Replace missed default in error message 2015-03-17 18:26:59 +03:00
Yan Zhulanow
e56d67f4b8 Android synthetic properties are now properties with flexible type 2015-03-17 17:37:14 +03:00
Yan Zhulanow
01c79c6d00 Make Android bytecode shape tests more readable 2015-03-17 17:35:24 +03:00
Yan Zhulanow
15f8ba811b Return moduleInfo UserDataProperty if it was explicitly set 2015-03-17 17:35:24 +03:00
Yan Zhulanow
b04d14f79d Move plugin-related String constants to the object 2015-03-17 17:35:23 +03:00
Pavel V. Talanov
a50b218c6a default -> companion: Replace some missed usages of "isDefault" 2015-03-17 17:10:53 +03:00
Evgeny Gerashchenko
3ec6ffc906 KT-7007 Go to declaration doesn't work inside enum class
#KT-7007 fixed
2015-03-17 16:10:51 +03:00
Pavel V. Talanov
94937a39be Increase ABI and stub versions 2015-03-17 15:52:41 +03:00
Pavel V. Talanov
06916d98c6 default -> companion: replace all mentions of default and default object 2015-03-17 15:47:39 +03:00
Pavel V. Talanov
a0783757e8 Delete libraries/sandbox folder with old experimental stuff 2015-03-17 15:46:52 +03:00
Pavel V. Talanov
498bb89358 Delete docs folder with old confluence documentation and talks presentations 2015-03-17 15:46:52 +03:00
Pavel V. Talanov
2a6facaef6 default -> companion: default object -> class object in project code, builtins and libs code 2015-03-17 15:46:48 +03:00
Alexander Udalov
444b461ba7 Run preloader in new-kotlinc, fix reflect->runtime class-path reference 2015-03-17 15:46:47 +03:00
Dmitry Jemerov
9ea0c999fc quick doc: use check instead of assertion when getting descriptor for declaration (EA-62592) 2015-03-17 12:48:58 +01:00
Zalim Bashorov
5e782dd547 Switch to the new(right) API for register extension points and extensions. 2015-03-17 14:11:00 +03:00
Michael Bogdanov
11ce50f0d6 Tests for obsolete KT-6434: android compile error: local variable type mismatch
#KT-6434 Obsolete
2015-03-17 11:39:28 +03:00
Alexander Udalov
4b4f6a713a Implement "reflection not found" inspection and quick fix 2015-03-16 20:54:10 +03:00
Alexander Udalov
094fa2f92b Report error on using reflection without kotlin-reflect.jar in classpath
Should be a warning because strictly speaking, the codegen doesn't need it
during the compilation. It's an error at the moment only to let all clients of
Kotlin reflection know that they must include kotlin-reflect.jar in the
classpath
2015-03-16 20:40:49 +03:00
Alexander Udalov
9d6f4e99a1 Move reflection interfaces to module 'builtins'
They are considered to be built-ins everywhere anyway
2015-03-16 20:29:39 +03:00
Nikolay Krasko
48ce8d5270 Add additional logging for context and element (EA-64785) 2015-03-16 20:16:26 +03:00
Nikolay Krasko
8c5109d819 Generate descriptor for trait constructor. Exception is thrown otherwise...
EA-38416, EA-65189, EA-60850
2015-03-16 20:16:25 +03:00
Yan Zhulanow
6fb5dacde4 Fix a "property not found" exception in Gradle 2.x 2015-03-16 18:56:42 +03:00
Yan Zhulanow
6d9d3f00a2 Fix kotlin-android-extensions artifact name in subplugin 2015-03-16 18:56:41 +03:00
Michael Bogdanov
7d743f56ce Rollback default object to class one 2015-03-16 18:52:05 +03:00
Michael Bogdanov
90651e4b28 Do nothing if there is no smap data on anonymous object transfromation during fun inline 2015-03-16 18:52:05 +03:00
Michael Bogdanov
0999cd99e3 Inline iterator test 2015-03-16 18:52:05 +03:00
Michael Bogdanov
596c5b8d41 Remove lineNumber assertion: it performed in getOrCreateSourceMapper 2015-03-16 18:52:04 +03:00
Michael Bogdanov
ac8e98572e Clean code 2015-03-16 18:52:04 +03:00
Michael Bogdanov
3a5b55fc61 Mute some tests 2015-03-16 18:52:04 +03:00
Michael Bogdanov
5c6b9b1bc6 New smap test 2015-03-16 18:52:04 +03:00
Michael Bogdanov
57cf4ac6c0 New test framework 2015-03-16 18:52:04 +03:00
Michael Bogdanov
7f788f86fe Return short name in test LightVirtualFile.getName() 2015-03-16 18:52:04 +03:00
Michael Bogdanov
50c9c93f37 Generate additional NOP in inline call to keep linenumbers 2015-03-16 18:52:03 +03:00
Michael Bogdanov
b58cdae0c5 Added extra stepping filter 2015-03-16 18:52:03 +03:00
Michael Bogdanov
126de2ce27 Fixed container class name detection 2015-03-16 18:52:02 +03:00
Michael Bogdanov
72a3d5538f Update "sourcePath" and "availableStrata" implementations in mock objects 2015-03-16 18:52:02 +03:00
Michael Bogdanov
bc2261ea3b Added message for assertion 2015-03-16 18:52:02 +03:00
Michael Bogdanov
ea2f9e91e9 Test fix - update and review required 2015-03-16 18:52:01 +03:00
Michael Bogdanov
554fd8b1c6 Skip line offset on out of range line numbers 2015-03-16 18:52:01 +03:00
Michael Bogdanov
d5f19eaee4 Fix InsStream 2015-03-16 18:52:01 +03:00
Michael Bogdanov
ad746b7fb4 Fix noDataException warning 2015-03-16 18:52:01 +03:00
Michael Bogdanov
acccfcf32e Support MultiRequestPositionManager 2015-03-16 18:52:01 +03:00
Michael Bogdanov
a4117360a2 Smap refactorings 2015-03-16 18:52:01 +03:00
Michael Bogdanov
52999afc4a FqName to ClassId 2015-03-16 18:52:00 +03:00
Michael Bogdanov
a7183f6e53 Source mapping generation on code compilation 2015-03-16 18:52:00 +03:00
Michael Bogdanov
99aa57b432 Visit debug info for compiled inline functions 2015-03-16 18:52:00 +03:00
Michael Bogdanov
41e4b1ce9b Set proper call element 2015-03-16 18:52:00 +03:00
Yan Zhulanow
b0125a3626 Fix compiler plugin cli tests with colons in .args on Windows 2015-03-16 17:32:17 +03:00
Natalia Ukhorskaya
7955504089 Android tests: remove filesWithStdlib because name of folder can be used for this 2015-03-16 14:45:50 +03:00
Natalia Ukhorskaya
51bc9d8fd8 Debugger: do not log ProcessCanceledException. Show error message fo WMDisconnectedException 2015-03-16 14:45:49 +03:00
Natalia Ukhorskaya
efb0061067 Android: change package of extension point after moving classes 2015-03-16 14:45:48 +03:00
Natalia Ukhorskaya
6d7cab0335 Debugger: log error with attachments 2015-03-16 14:45:48 +03:00
Natalia Ukhorskaya
50c535de85 Debugger: Alt + click on variable name in declaration should open a popup with it's value
#KT-6875 Fixed
2015-03-16 14:45:47 +03:00
Nikolay Krasko
9c51ea6583 Avoid getAccessors() call because of changes not available in build server 2015-03-16 14:26:35 +03:00
Evgeny Gerashchenko
5a262b976e Fixed overridden/implemented line markers in abstract classes. 2015-03-16 14:11:42 +03:00
Evgeny Gerashchenko
22a41e8012 Introduced category for default object usages. 2015-03-16 14:11:41 +03:00
Evgeny Gerashchenko
510974e07c Supported renaming default objects with default names. 2015-03-16 14:11:41 +03:00
Evgeny Gerashchenko
ccd1701f78 Supported renaming of default object. Named only objects are supported
yet.
2015-03-16 14:11:39 +03:00
Evgeny Gerashchenko
3a8ded5b58 Finding class by class id instead of fq name in rename tests. 2015-03-16 14:11:38 +03:00
Evgeny Gerashchenko
c875584d0c Supported default objects in unused symbol inspection. 2015-03-16 14:11:38 +03:00
Evgeny Gerashchenko
70a925317a Minor. Replaced usage of deprecated method. 2015-03-16 14:11:37 +03:00
Evgeny Gerashchenko
9bcf9dceef Supported default objects in class usages. 2015-03-16 14:11:37 +03:00
Evgeny Gerashchenko
8874ad2c96 Minor. Better code in method. 2015-03-16 14:11:36 +03:00
Valentin Kipyatkov
569e4a68ae Support for secondary constructors in j2k 2015-03-15 22:30:19 +01:00
Alexander Udalov
b44dbe6ca2 Revert incorrect change to .idea/compiler.xml 2015-03-14 15:25:30 +03:00
Alexey Sedunov
df568e6439 Change Signature: Do not show visibility box for local functions
#KT-5949
2015-03-13 23:17:00 +03:00
Alexey Sedunov
40799a0a43 PSI Unifier: Unify references which correspond to the same declaration
#KT-5996 Fixed
2015-03-13 23:16:59 +03:00
Alexey Sedunov
bff709da10 Convert to Expression Body Intention: Do not remove declaration type if it affects the type of body expression 2015-03-13 23:16:58 +03:00
Alexey Sedunov
9cb42944d1 Extraction Engine: Generate function/property accessor with expression body (whenever applicable)
#KT-6405 Fixed
2015-03-13 23:16:57 +03:00
Alexey Sedunov
9d8cfd04d9 Extraction Engine: Suggest function names based on the name of the result variable (if applicable)
#KT-6291 Fixed
2015-03-13 23:16:55 +03:00
Yan Zhulanow
8e5b960e3d Remove assert with broken separators on Windows in Gradle subplugin test 2015-03-13 20:31:22 +03:00
Pavel V. Talanov
c0a031eafe Support secondary constructors in decompiled text
Build cls stubs for secondary constructors
2015-03-13 20:17:32 +03:00
Pavel V. Talanov
026e35b6d0 DecompiledTextFactory: use separate descriptor renderer to render keys
Previously the same render that renders decompiled text was used by accident
2015-03-13 20:17:14 +03:00
Pavel V. Talanov
fd718ad366 JetConstructorDelegationCall should not be stubbed 2015-03-13 20:17:07 +03:00
Pavel V. Talanov
188ada2089 Minor: extract ClassDescriptor.secondaryConstructors extension property 2015-03-13 20:17:01 +03:00
Ilya Ryzhenkov
4fa5d9cb48 Fix double "deprecated" annotation in generated sources which confuses DX compiler. 2015-03-13 19:30:46 +03:00
Yan Zhulanow
df2d2dc21a Fix formatting in PluginCliParser 2015-03-13 15:46:44 +03:00
Yan Zhulanow
f564734be2 Override loadClass with two arguments in MemoryBasedClassLoader 2015-03-13 15:46:43 +03:00
Yan Zhulanow
7b39cf4998 Support cache cleanup in android-compiler-plugin 2015-03-13 15:46:43 +03:00
Yan Zhulanow
93ce3bc2ad Pass GenerationState to generateClassSyntheticParts as it's more useful 2015-03-13 15:46:42 +03:00
Yan Zhulanow
ab4d2788c2 Remove android-compiler-plugin from dependencies of android-jps-plugin 2015-03-13 15:46:42 +03:00
Yan Zhulanow
4cc5e9248a Support View in android-compiler-plugin 2015-03-13 15:46:42 +03:00
Yan Zhulanow
33a1aa342f Rename kotlin-android-compiler-plugin to kotlin-android-extensions 2015-03-13 15:46:41 +03:00
Yan Zhulanow
da8369066b Support Fragment in android-compiler-plugin 2015-03-13 15:46:41 +03:00
Yan Zhulanow
d4184bd51d Move AndroidExpressionCodegenExtension to the separate file 2015-03-13 15:46:40 +03:00
Yan Zhulanow
e836b88fc3 Fix deprecated Kotlin function calls 2015-03-13 15:46:40 +03:00
Yan Zhulanow
c56347058f Do not pass resource manager to AndroidXmlVisitor and AndroidXmlHandler 2015-03-13 15:46:40 +03:00
Yan Zhulanow
13fee64003 Add @NotNull annotations to Android XML value wrapper 2015-03-13 15:46:39 +03:00
Yan Zhulanow
6b368e445a Cache XML layout widgets using PsiTreeChangePreprocessor 2015-03-13 15:46:39 +03:00
Yan Zhulanow
3f53cf01d2 Remove obsolete module dependency from android-compiler-plugin 2015-03-13 15:46:39 +03:00
Yan Zhulanow
19d24c3c50 Rename AndroidExpressionCodegen to AndroidExpressionCodegenExtension 2015-03-13 15:46:38 +03:00
Yan Zhulanow
8760beeed1 Gradle subplugin test 2015-03-13 15:46:38 +03:00
Yan Zhulanow
9be33338ef Log Kotlin Gradle subplugin loading 2015-03-13 15:46:38 +03:00
Yan Zhulanow
2f83e600f5 Use Gradle properties to pass plugin-related arguments 2015-03-13 15:46:37 +03:00
Yan Zhulanow
eebed9a8b1 Add all layout directories to sources in Android Gradle subplugin 2015-03-13 15:46:37 +03:00
Yan Zhulanow
d5e4775bcd Show plugin usage on invalid arguments 2015-03-13 15:46:37 +03:00
Yan Zhulanow
7d31b56ef6 Android plugin cli arguments test 2015-03-13 15:46:37 +03:00
Yan Zhulanow
41d9477870 Load Android extensions only if plugin options are present 2015-03-13 15:46:36 +03:00
Alexander Udalov
ca005977b0 Restore KObject and deprecate it instead
To let old code work with the new runtime
2015-03-13 15:46:15 +03:00
Alexander Udalov
8af6ca5279 Delete kotlin.jvm.internal.KObject
It was supposed to be used in reflection but the benefits do not outweigh the
cost of KT-6951

 #KT-3223 Fixed
 #KT-6951 Fixed
2015-03-12 23:15:38 +03:00
Alexander Udalov
e5d5b49ce2 Fix exception from ::class literals on unresolved classes 2015-03-12 23:14:55 +03:00
Ilya Ryzhenkov
e448f40756 Rename Stream<T> to Sequence<T> and provide migration path via deprecated types and functions. 2015-03-12 22:56:43 +03:00
Zalim Bashorov
9684d217b3 Fix build. 2015-03-12 20:17:46 +03:00
Zalim Bashorov
44159d34da Minor in JS lib: replaced LocalStorageClass with Storage with more accurate definitions and added sessionStorage.
#KT-6983 Fixed
2015-03-12 19:16:37 +03:00
Dmitry Jemerov
32072d0a4f More standard library documentation. 2015-03-12 16:52:20 +01:00
Stanislav Erokhin
cb27797845 Regenerated tests. 2015-03-12 17:15:54 +03:00
Stanislav Erokhin
2627dc76c2 Compilation fix. 2015-03-12 17:11:54 +03:00
Stanislav Erokhin
8accdcc5cb Fix type inference for function expression parameters 2015-03-12 17:11:53 +03:00
Stanislav Erokhin
af4aff38e5 Minor: remove duplicate code 2015-03-12 17:11:53 +03:00
Stanislav Erokhin
f47f285868 Expected function type used for parameter types inference in function expression 2015-03-12 17:11:53 +03:00
Stanislav Erokhin
639003b8a8 Allowed function parameter without type declaration in the parser 2015-03-12 17:11:52 +03:00
Stanislav Erokhin
d9882a6d0b Move inference parameter type in FunctionDescriptorResolver 2015-03-12 17:11:52 +03:00
Stanislav Erokhin
0c74675e6e Changed element parameter for EXPECTED_PARAMETERS_NUMBER_MISMATCH diagnostic 2015-03-12 17:11:52 +03:00
Stanislav Erokhin
072a9f4977 Refactoring: extract FunctionResolver from DescriptorResolver 2015-03-12 17:11:51 +03:00
Stanislav Erokhin
8ed3314b2c Divided resolveFunctionDescriptor method in to several pieces 2015-03-12 17:11:51 +03:00
Stanislav Erokhin
07a691f4b7 Merge methods resolveFunctionDescriptor && resolveFunctionDescriptorWithAnnotationArguments 2015-03-12 17:11:50 +03:00
Stanislav Erokhin
dbcb4fb060 Minor: used util method 2015-03-12 17:11:50 +03:00
Stanislav Erokhin
4050e7a48b Rename ClosureExpressionsTypingVisitor to FunctionsTypingVisitor. 2015-03-12 17:11:50 +03:00
Stanislav Erokhin
711c5bb88f Rename ClosureExpressionsTypingVisitor.java -> .kt 2015-03-12 17:11:49 +03:00
Stanislav Erokhin
779c6deb34 Convert ClosureExpressionsTypingVisitor to kotlin 2015-03-12 17:11:49 +03:00
Stanislav Erokhin
ee4892c99f Moved method visitNamedFunction from BasicExpressionTypingVisitor to ClosureExpressionsTypingVisitor. 2015-03-12 17:11:48 +03:00
Stanislav Erokhin
bd525eac31 Moved method visitObjectLiteralExpression from ClosureExpressionsTypingVisitor to BasicExpressionTypingVisitor. 2015-03-12 17:11:48 +03:00
Stanislav Erokhin
6fb8af1dda Move util backend function isNamedFun && isNamedFunOrLambda to frontend 2015-03-12 17:11:47 +03:00
Stanislav Erokhin
fa9ca54e78 Fixed local return inside function expression. 2015-03-12 17:11:47 +03:00
Stanislav Erokhin
929f1bc9ba Fixed method hasTypeParameterListBeforeFunctionName in JetNamedFunction 2015-03-12 17:11:47 +03:00
Stanislav Erokhin
a89b48c577 Backend support for function expression 2015-03-12 17:11:46 +03:00
Stanislav Erokhin
44895a23cf Frontend support for function as expression 2015-03-12 17:11:46 +03:00
Stanislav Erokhin
6ccd8ab764 Move method visitNamedFunction from ExpressionTypingVisitorForStatements to BasicExpressionTypingVisitor.
This commit done only for clean history
2015-03-12 17:11:45 +03:00
Stanislav Erokhin
a235110d44 Fixed function expression recovery 2015-03-12 17:11:45 +03:00
Stanislav Erokhin
983e1bc932 Added function as expression support to parser 2015-03-12 17:11:44 +03:00
Stanislav Erokhin
560c32c0f1 Added diagnostic error when in function declaration name was omitted 2015-03-12 17:11:44 +03:00
Stanislav Erokhin
a8536fef9b Mute syntax error when function name was omitted 2015-03-12 17:11:44 +03:00
Stanislav Erokhin
a33450395c Resolve parenthesized element as expression 2015-03-12 17:11:43 +03:00
Stanislav Erokhin
3b92cab9e0 Changed containing declaration for PropertyDeclarationInnerScope 2015-03-12 17:11:43 +03:00
Stanislav Erokhin
49b77a1523 Reformat code 2015-03-12 17:11:43 +03:00
Andrey Breslav
d7297304b9 Create multi-declarations-in-parameters.md 2015-03-12 17:11:42 +03:00
Stanislav Erokhin
2c8cf05f7a Added backend tests with closure local function in local class 2015-03-12 17:11:42 +03:00
Michael Nedzelsky
7a5e54c691 jsHeaderLibraryDetectonUtil: refactoring after conversion 2015-03-12 16:35:36 +03:00
Michael Nedzelsky
a29172c1ca jsHeaderLibraryDetectonUtil: rename .java -> .kt 2015-03-12 16:35:33 +03:00
Michael Nedzelsky
4dc4e6a021 jsHeaderLibraryDetectonUtil.java: convert to kotlin 2015-03-12 16:35:30 +03:00
Michael Nedzelsky
cea65e0770 add NotNull annotation into BasicTest 2015-03-12 16:35:25 +03:00
Michael Nedzelsky
54bbe0711d JS backend: reuse analysisResult from K2JSCompiler in translator 2015-03-12 16:35:22 +03:00
Michael Nedzelsky
95768db9a1 fix NPE while creating new Kotlin/Javascript project 2015-03-12 15:58:14 +03:00
Andrey Breslav
2f39cb6243 Remove useless casts after fixing subtyping for star projections 2015-03-12 15:46:40 +03:00
Alexander Udalov
b8674beac0 Fix build-protobuf-java-lite macro in update_dependencies.xml
Apparently vmlauncher=false invokes antRun which is missing in the Ant support
plugin in IDEA, so invoking update from IDEA was failing
2015-03-12 14:33:07 +03:00
Nikolay Krasko
dcd29cb65d Revert "Generate descriptor for trait constructor. Exception is thrown otherwise (EA-38416)"
This reverts commit 6ba120bba8.
2015-03-12 14:18:22 +03:00
Nikolay Krasko
6ba120bba8 Generate descriptor for trait constructor. Exception is thrown otherwise (EA-38416) 2015-03-12 12:59:22 +03:00
Nikolay Krasko
38809761e2 Other base method 2015-03-12 12:35:11 +03:00
Michael Bogdanov
30832ed774 Properly report diagnostics on platformStatic annotations
#KT-6937 Fixed
2015-03-12 10:29:00 +03:00
Alexey Sedunov
84ad6c394e Create from Usage: Respect smart-casts when suggesting parameter type candidates
#KT-6781 Fixed
2015-03-11 23:34:00 +03:00
Alexey Sedunov
b033c17426 Caller Hierarchy: NPE fix
#EA-66031 Fixed
2015-03-11 23:33:59 +03:00
Alexey Sedunov
11a4cdf7ec Control-Flow Analysis: Fix NPE for array assignments without right-hand side
#EA-63602 Fixed
2015-03-11 23:33:58 +03:00
Alexey Sedunov
56031cb270 Control-Flow Analysis: Fix bug in finally-block repetition in the presence of non-local returns
#EA-65982 Fixed
2015-03-11 23:33:57 +03:00
Alexey Sedunov
f0b0fd07c5 Create From Usage: Add support of star projections/incorrect type arguments
#EA-62661 Fixed
2015-03-11 23:33:56 +03:00
Alexey Sedunov
ab5a691612 Create From Usage: Place generated declarations next to original element container if they have common parent
#KT-6687 Fixed
2015-03-11 23:33:55 +03:00
Alexey Sedunov
fe9b08f93d Create From Usage: Place local variable declaration right before its usage
#KT-6704 Fixed
2015-03-11 23:33:54 +03:00
Alexey Sedunov
8a0808b133 Create From Usage: Do not generate type for local variables, but add dummy initializer instead
#KT-6705 Fixed
2015-03-11 23:33:52 +03:00
Pavel V. Talanov
2987e72d29 Do not report redeclaration when outer class and default object's members clash
Previously we prohibited classes and properties with the same name (now it's unnecessary)
Add test for backends that they support qualified (by default object name) member references inside class body
2015-03-11 21:06:05 +03:00
Andrey Breslav
76832df933 Do not create temp files in the project directory 2015-03-11 20:14:56 +03:00
Andrey Breslav
7b9d0cfc4f Minor. Compilation fixed 2015-03-11 19:38:17 +03:00
Andrey Breslav
44e7df2809 Minor. Formatting and simplification 2015-03-11 19:38:17 +03:00
Andrey Breslav
704eea2eac TraceBasedErrorReporter converted to Kotlin and [data] added to AbiVersionErrorData 2015-03-11 19:38:16 +03:00
Andrey Breslav
3146b7e1b0 Rename .java file to .kt 2015-03-11 19:38:16 +03:00
Andrey Breslav
0562ab84c2 Minor. Warnings fixed 2015-03-11 19:38:15 +03:00
Andrey Breslav
36bbd2c0e3 ErrorReporter is now Java-independent 2015-03-11 19:38:15 +03:00
Andrey Breslav
266485add3 Serialization of star projections fixed 2015-03-11 19:38:14 +03:00
Andrey Breslav
61989ba245 KT-6815 Representing raw types when used as supertypes for Java classes
#KT-6815 Fixed
2015-03-11 18:27:37 +03:00
Andrey Breslav
7c62d8ed83 Minor. Unused declarations removed 2015-03-11 18:27:37 +03:00
Andrey Breslav
e0b7e4efca KT-6803 Subtyping breaks on star-projections for recursive generics
Star-projections have upper bounds of the form "parameter's bound where all parameter of the same class are substituted with their star-projections"

  #KT-6803 Fixed
2015-03-11 18:27:36 +03:00
Alexander Udalov
11b693c3be Add test on scripts with classpath 2015-03-11 18:08:14 +03:00
Isak Karlsson
efae5c05a1 Support classpath argument when running scripts using the -script flag
Signed-off-by: Isak Karlsson <isak-kar@dsv.su.se>
2015-03-11 18:08:14 +03:00
Denis Zharkov
f632a90741 Fix compiler settings for android-compiler-plugin
It's necessary to use bootstrap-compiler and runtime but new compiler in classpath when increasing ABI.

For example ABI was X, then we increase it to X':

- It compiles in Bootstrap (B) build with compiler that knows
  old ABI version, so compiled compiler (C1) will still have version X, but new
  runtime's version is X' (R1).

  So when we compile android-compiler-plugin each part has version X.

- Then project compiles by new compiler (C1)
  (that class-files have ABI version X, but it knows about X') in main build.
  Here compiled compiler (C2) will have X' version of class-files,
  either has runtime (R1) compiled on previous stage.

  On this step android-compiler-plugin will be compiled fine by C1 and with C2, R1.
2015-03-11 17:45:29 +03:00
Denis Zharkov
70c573864a Prohibit DelegationBy specifier when no primary constructor
Also add codegen test for case when there is primary
2015-03-11 17:45:29 +03:00
Denis Zharkov
582755e71a Don't generate empty constructor if there is secondary one with empty parameter list 2015-03-11 17:45:29 +03:00
Denis Zharkov
aab706a6a6 Revert test checking ENUM_ENTRY_ILLEGAL_TYPE 2015-03-11 17:45:28 +03:00
Denis Zharkov
5eb4dcd913 Report conflicting overloads for constructors
- It's worked almost fine but diagnostics were filtered out by
  positioning strategy.

- Also a couple of "put" calls to Multimap are replaced by "putValues"
  within OverloadResolver, that is more semantically correct.

- Note that constructors of top-level classes are handled when processing
  package, it helps to figure out if there are clashes with top-level
  functions that have the same name.

- But constructors of different classes are not reported as
  overloads because containing classes has the same name and will be
  reported as redeclaration.
2015-03-11 17:45:28 +03:00
Denis Zharkov
9d2d3c0c7b Take data flow info from delegation call 2015-03-11 17:45:28 +03:00
Denis Zharkov
aa5599f6ca Improve positioning strategy for delegation calls 2015-03-11 17:45:28 +03:00
Denis Zharkov
4022982760 Add synthetic argument to default constructors
It's need to add synthetic argument (of type that user can't use)
to constructors with default arguments to avoid clashing with
real user's constructor having the same set of parameters
and additional int's arguments.
2015-03-11 17:45:28 +03:00
Denis Zharkov
67f97fea42 Prohibit data classes with no primary constructor 2015-03-11 17:45:28 +03:00
Denis Zharkov
40d7816575 Regenerate protobuf classes
After secondary constructors serialization
2015-03-11 17:45:27 +03:00
Denis Zharkov
111a138a2a Serialize secondary constructors 2015-03-11 17:45:27 +03:00
Denis Zharkov
e65382e6ec Support secondary constructors in JVM backend
There is a lot of changes about closures calculating and generating.

1. As classes can have more than one constructor each of them should
have closure arguments.

2. Captured variables set is the same for all of them.

3. Within constructors bodies/delegating calls closure parameters
should be accessed through method arguments because fields may be
not initialized yet.
2015-03-11 17:45:27 +03:00
Denis Zharkov
6779e95767 Simplify closure analysis within constructors
Using of ConstructorContext instance almost has no sense,
but it complicates logic when there are several constructors.
2015-03-11 17:45:27 +03:00
Denis Zharkov
31be68de0a Get rid of superCall fields in class/closure codegen
Because their semantics looks wrong in case of secondary constructors.
Use resolved delegation call instead.
2015-03-11 17:45:27 +03:00
Denis Zharkov
4c26d037d9 Resolve property initializer if there is no primary constructor 2015-03-11 17:45:27 +03:00
Denis Zharkov
a872a51a19 Prohibit explicit super call for enum ctrs 2015-03-11 17:45:26 +03:00
Denis Zharkov
1703e16913 Add quickfix: remove 'init' modifier 2015-03-11 17:45:26 +03:00
Denis Zharkov
f07566d30d Add warning for initializers with obsolete syntax
Expected 'init' keyword before class initializer
2015-03-11 17:45:26 +03:00
Denis Zharkov
0dc155d8c9 Resolve annotations on secondary constructors 2015-03-11 17:45:26 +03:00
Denis Zharkov
9be45af267 Complete this/super before delegation call 2015-03-11 17:45:26 +03:00
Denis Zharkov
50c8c6f68b Basic completion within secondary constructors
body and delegation call
2015-03-11 17:45:26 +03:00
Denis Zharkov
7d963e8e07 Differ this/non-this instances for vars initialization in class
When deal with constructed object (not this) treat it like it's fully initialized.

Otherwise (this or access with no receiver) access instruction
should be handled as it was before.

 #KT-6788 Fixed
 #KT-4126 Fixed
2015-03-11 17:45:25 +03:00
Denis Zharkov
1004e016fd Minor, drop unused method 2015-03-11 17:45:25 +03:00
Denis Zharkov
f673f4ff47 Prohibit super delegation call if there is primary constructor 2015-03-11 17:45:25 +03:00
Denis Zharkov
835a0df13a Prohibit secondary constructors in traits 2015-03-11 17:45:25 +03:00
Denis Zharkov
978279bff3 Minor, drop unused method 2015-03-11 17:45:25 +03:00
Denis Zharkov
4a628a3d8f Prohibit supertype initialization without primary constructor 2015-03-11 17:45:25 +03:00
Denis Zharkov
28fbdb7c53 Prohibit constructors declarations for object 2015-03-11 17:45:24 +03:00
Denis Zharkov
3fef4ad742 Minor, drop unneeded accept 2015-03-11 17:45:24 +03:00
Denis Zharkov
525ddf9eb0 Prevent circular secondary constructors delegation 2015-03-11 17:45:24 +03:00
Denis Zharkov
5388bd7cdc Record resolved delegated constructor in trace 2015-03-11 17:45:24 +03:00
Denis Zharkov
7f20c4a237 Control flow changes for secondary constructors 2015-03-11 17:45:24 +03:00
Denis Zharkov
61ae694be4 Allow return statements in secondary constructors 2015-03-11 17:45:24 +03:00
Denis Zharkov
80e13d3f70 Allow class initializer without primary constructor 2015-03-11 17:45:23 +03:00
Denis Zharkov
87193aec2f Minor, drop unused variable 2015-03-11 17:45:23 +03:00
Denis Zharkov
3509cafcea Allow no super class initialization within header
if there is no primary constructor
2015-03-11 17:45:23 +03:00
Denis Zharkov
1555eec954 Secondary constructors delegation calls and body resolve 2015-03-11 17:45:23 +03:00
Denis Zharkov
b2cecf1dd0 Secondary constructors resolve 2015-03-11 17:45:23 +03:00
Denis Zharkov
8305d73682 Drop unused interface method
There was the only usage and it's redundant.
JetClass' implementation name is refined.
2015-03-11 17:45:22 +03:00
Denis Zharkov
3ba94d7352 Parsing: secondary constructors 2015-03-11 17:45:22 +03:00
Denis Zharkov
cb881d2628 Drop some ClassDescriptor.getConstructors() usages
supposing that there is only primary constructor
2015-03-11 17:45:22 +03:00
Denis Zharkov
bdd2756bd1 Rename ThisReference -> ConstructorDelegationReference 2015-03-11 17:45:22 +03:00
Denis Zharkov
a55e8911ea Drop parsing of enum initializers using `this'
#KT-6626 Fixed
2015-03-11 17:45:22 +03:00
Andrey Breslav
0dc1448d69 Secondary constructors specs 2015-03-11 17:45:21 +03:00
Dmitry Jemerov
d3b8464722 fix test: regenerate Primitives.kt 2015-03-11 15:18:38 +01:00
Alexander Udalov
dc4dfbeec1 Fix generic class literals, substitute type parameters with stars 2015-03-11 16:42:47 +03:00
Alexander Udalov
6468515d99 Report error when LHS of class literal is not a class 2015-03-11 16:42:45 +03:00
Alexander Udalov
b93b9bd565 Support KClass.simpleName and built-in class literals 2015-03-11 16:42:43 +03:00
Alexander Udalov
6e45c6f17c Support class literals (A::class) 2015-03-11 16:42:41 +03:00
Alexander Udalov
2b089e0f39 Configure kotlin-reflect.jar in IDE as part of KotlinJavaRuntime library 2015-03-11 16:42:39 +03:00
Alexander Udalov
b3cdd818f0 Support member extension properties, implement KClass.getExtensionProperties()
#KT-6570 Fixed
2015-03-11 16:42:38 +03:00
Alexander Udalov
da209e673c Implement KClass.getProperties()
#KT-6570 In Progress
2015-03-11 16:42:37 +03:00
Alexander Udalov
fdfd808d80 Remove KForeignMemberProperty and KClassOrigin, use KMemberPropertyImpl instead 2015-03-11 16:42:36 +03:00
Alexander Udalov
ff0044f66a Use descriptors for reflection on extension properties 2015-03-11 16:42:34 +03:00
Alexander Udalov
1a618deeab Use descriptors for reflection on top level properties
This also allows to obtain a Field object from the package part (see
mapping.kt)
2015-03-11 16:42:33 +03:00
Alexander Udalov
d1debf586c Support local classes in reflection 2015-03-11 16:42:32 +03:00
Alexander Udalov
64fdb18ad3 Use descriptors for reflection on class properties
- use ConcurrentHashMap as a cache of class loaders to module descriptors
- KClassImpl now has a lazy class descriptor and it manages property creation
  by looking (also lazily) for the property descriptor in the corresponding
  scope
- since deserialized descriptors have full information about where a JVM symbol
  is located and what signature it has, new tests will begin to pass where
  Kotlin model and Java reflection model differ, see classObjectVar.kt
2015-03-11 16:42:31 +03:00
Alexander Udalov
ba0ea1515b Minor, simplify/optimize KClassImpl creation 2015-03-11 16:42:30 +03:00
Alexander Udalov
ecde41d9ab Introduce ReflectProperties for lazy weak/soft property delegates
This class needs to be written in Java because no Kotlin classes can be used in
KClassImpl constructor (otherwise since each Kotlin class creates a KClassImpl
in its static initializer, this would result in infinite recursion)
2015-03-11 16:42:29 +03:00
Alexander Udalov
2b090e02a1 Build kotlin-reflect.jar in build.xml and for Maven
Reflection will be distributed in a separate jar and not in kotlin-runtime.jar
for two primary reasons:
- Reflection implementation at the moment takes almost 2Mb
- Separate libraries for separate features is a technique encouraged by Maven,
  and it's inconvenient to make it different in the compiler distribution
2015-03-11 16:42:28 +03:00
Alexander Udalov
2c8754a6af Build lite runtime of protobuf-java
Saves ~400kb (3.25mb -> 2.85mb) of runtime+reflect size
2015-03-11 16:42:27 +03:00
Alexander Udalov
af6e7cf140 Minor, remove ReflectJavaTypeProvider, throw unsupported instead
getTypeProvider() is in fact a bad abstraction because it's only used in SAM
construction, which does not happen at runtime
2015-03-11 16:42:26 +03:00
Alexander Udalov
e95d22dcfe Refactor ReflectJavaConstructor.getValueParameters()
See https://youtrack.jetbrains.com/issue/KT-6886 for more information
2015-03-11 16:42:25 +03:00
Alexander Udalov
1054f004aa Load annotations on constructors and parameters of Kotlin reflected classes 2015-03-11 16:42:24 +03:00
Alexander Udalov
4fb420f3f1 Fix deserialization of enum annotation arguments at runtime 2015-03-11 16:42:23 +03:00
Alexander Udalov
f36ef6f546 Provide equals, hashCode, toString for classes in reflection model 2015-03-11 16:42:21 +03:00
Alexander Udalov
a14b301f31 Resolve annotations on all reflected elements
Annotation in NestedEnumArgument test is made public, because we try to load
annotation argument values eagerly and fail, since you can't invoke methods
reflectively on an object of a non-effectively-public class
2015-03-11 16:42:19 +03:00
Alexander Udalov
c90f11b7e6 Support Java symbols in runtime descriptor loading 2015-03-11 16:42:18 +03:00
Alexander Udalov
73e4287aee Initial support of annotation loading at runtime
In order to locate an annotated entity, we need to implement almost the whole
Java element model (which will be used anyway for Java descriptor loading)
2015-03-11 16:42:17 +03:00
Alexander Udalov
356f54b5df Initial support of descriptor loading at runtime 2015-03-11 16:42:15 +03:00
Yan Zhulanow
be954f2c27 Fix WrongIdFormat exception on Android XML widgets with non-@+id/ format 2015-03-11 15:33:45 +03:00
Dmitry Jemerov
07381b765f rename Numbers.kt to Primitives.kt as it now contains Char which is not a number 2015-03-11 12:40:39 +01:00
Dmitry Jemerov
89398796c6 generate also the Char class 2015-03-11 12:40:31 +01:00
Dmitry Jemerov
26e452383e reenable test which was temporarily disabled 2015-03-10 20:28:48 +01:00
Pavel V. Talanov
a701cb2bd9 Add quick fix to replace all 'class object's in project 2015-03-10 18:21:33 +03:00
Pavel V. Talanov
81f9d34d1a Add quick fix for deprecated 'class object' syntax 2015-03-10 18:21:33 +03:00
Pavel V. Talanov
3cfcef9da4 Render warning on 'class object' as deprecated 2015-03-10 18:21:32 +03:00
Pavel V. Talanov
581e163031 Report warning on 'class object' 2015-03-10 18:21:32 +03:00
Pavel V. Talanov
8fef31ee5b Replace 'class object' with 'default object' in builtins 2015-03-10 18:07:56 +03:00
Pavel V. Talanov
9a844d2feb Minor: replace some missed mentions of 'class object' with 'default object' 2015-03-10 18:07:54 +03:00
Pavel V. Talanov
9ecf95532e Replace 'class object' with default object in project code 2015-03-10 18:07:46 +03:00
Alexander Udalov
dc7bb32a3b Refactor runtime library configuration in IDE 2015-03-10 16:15:20 +03:00
Alexander Udalov
dab18f7d4e Minor, fix typos: existed, deffer, shouldExists 2015-03-10 16:15:17 +03:00
Alexander Udalov
a01ffd70e7 Fix NoInternalVisibilityInStdLibTest in maven build
Create disposable in setUp(), destroy in tearDown()
2015-03-10 16:13:50 +03:00
Alexander Udalov
611700c998 Fix "mvn clean" in libraries/ project
JS examples were failing on "clean" because no phases were set for compilation
and thus they required kotlin-maven-plugin on every phase which is obviously
not built yet when we're running "clean"
2015-03-10 16:13:45 +03:00
Natalia Ukhorskaya
3eb2182ef0 Evaluate expression: find local variable using callText from extract function instead of function parameter names 2015-03-10 15:27:38 +03:00
Natalia Ukhorskaya
cdf081ddc3 Fix for exception: JetCodeFragment with context null
#KT-6876 Fixed
2015-03-10 15:27:37 +03:00
Natalia Ukhorskaya
f6162dc726 JetCodeFragment: increment modification count after inserting import 2015-03-10 15:27:37 +03:00
Natalia Ukhorskaya
c4f7bf6815 Add test for inserting imports in JetCodeFragment after completion 2015-03-10 15:27:36 +03:00
Zalim Bashorov
f49e4ca3e9 JS backend: fixed accessing to native enum entries. 2015-03-10 14:30:45 +03:00
Ilya Ryzhenkov
e00cdfc8e1 toSortedMap() without a comparator requires keys that are Comparable. 2015-03-10 11:21:41 +03:00
Ilya Ryzhenkov
bfeb21afb0 stdlib: stream() for Map #KT-6547 Fixed 2015-03-10 11:21:41 +03:00
Valery Kharitonov
8873be22d5 Implemented asList() method for arrays. #KT-1313 Fixed 2015-03-10 11:21:40 +03:00
Valery Kharitonov
c8094e7587 Implemented indexOfFirst/Last(predicate). #KT-6577 Fixed 2015-03-10 11:21:40 +03:00
Valery Kharitonov
38a4f86db2 Implemented asIterable method for arrays. #KT-1313 Fixed 2015-03-10 11:21:39 +03:00
Laszlo Hornyak
3954215b50 Add support for + and - operators in immutable maps #KT-6594 Fixed 2015-03-10 11:21:38 +03:00
Ilya Ryzhenkov
1a67e35739 Add more tests to cover stdlib 2015-03-10 11:21:38 +03:00
Alexander Udalov
6fe483f0cf build.xml: use absolute paths, extract some constants 2015-03-07 02:32:59 +03:00
Alexander Udalov
a8046020fb Rename kotlin.reflect.IllegalAccessException -> IllegalPropertyAccessException
The former name clashes with java.lang.IllegalAccessException and proved to be
inconvenient because it should always be qualified in the source.

Also use java.lang exception's message as kotlin.reflect exception's message
2015-03-07 02:32:15 +03:00
Alexander Udalov
ed022f892b Drop JavaTypeParameter#getIndex 2015-03-07 02:32:14 +03:00
Alexander Udalov
ca8831097f Resolve annotations on Java constructors
Also add tests on custom annotations on fields and methods
2015-03-07 02:32:14 +03:00
Alexander Udalov
17c21dcaa2 Test generator: allow to exclude certain test data directories 2015-03-07 02:32:14 +03:00
Alexander Udalov
0bd5264b5e Get rid of module reflection.stub.jvm
Generate K*Function as a supertype for a function reference instead of
K*FunctionImpl; this will allow one binary library to be used with or without
reflection
2015-03-07 02:31:26 +03:00
Alexander Udalov
9c5bcdc72a Prettify code in 'reflection.jvm'
Use stdlib instead of hand-written hacks, fix some warnings and unneeded !!
2015-03-07 02:31:00 +03:00
Alexander Udalov
eced3003ad Introduce kotlin-reflect Maven artifact 2015-03-07 02:31:00 +03:00
Alexander Udalov
4f649f5a33 Minor, drop KotlinBuiltIns.nonPhysicalClasses
See b9d47ffe7a
2015-03-07 02:31:00 +03:00
Alexander Udalov
71a3f35b7e Rename LocalClassFinder -> DirectoryBasedClassFinder
It was never related to local classes
2015-03-07 02:30:28 +03:00
Alexander Udalov
e136025ac5 Show "kotlin.Any" in decompiled text for local/anonymous types 2015-03-07 02:30:28 +03:00
Alexander Udalov
6287055475 J2K: convert array.length to array.size() 2015-03-07 02:29:13 +03:00
Valentin Kipyatkov
3e85b97e1a Completion after $ in string literal works correctly for classes and objects 2015-03-06 22:04:17 +03:00
Valentin Kipyatkov
de7b4dc681 Surround with braces when completing backing field in string template 2015-03-06 22:04:17 +03:00
Valentin Kipyatkov
620fb8683b KT-6191 Support completion for backing field
#KT-6191 Fixed
2015-03-06 22:04:17 +03:00
Valentin Kipyatkov
86272621de More diagnostic 2015-03-06 22:04:16 +03:00
Valentin Kipyatkov
efa83000a2 Use of substringBefore/After 2015-03-06 22:04:16 +03:00
Valentin Kipyatkov
2ef80d1b34 Completion after "this@" includes immediate this too
#KT-6836 Fixed
2015-03-06 22:04:16 +03:00
Valentin Kipyatkov
ffff6226b0 KT-6608 Code completion does not work after $ in string literals
KT-5070 Add braces when complete function in string templates

 #KT-6608 Fixed
 #KT-5070 Fixed
2015-03-06 22:04:16 +03:00
Valentin Kipyatkov
c44519fa4e More correct and simple finding of top-level callables 2015-03-06 22:04:16 +03:00
Valentin Kipyatkov
793be62a81 More clear naming 2015-03-06 22:04:16 +03:00
Valentin Kipyatkov
234555bb33 Fixed KT-6890 No autocomplete for receiver methods and properties in extension property
#KT-6890 Fixed
2015-03-06 22:04:16 +03:00
Valentin Kipyatkov
c5d21e1f45 Fixed KT-6673 Completion: no properties from outside class inside anonymous object
#KT-6673 Fixed
2015-03-06 22:04:15 +03:00
Valentin Kipyatkov
5e66727ff6 Checked that KT-6623 has been fixed 2015-03-06 22:04:15 +03:00
Valentin Kipyatkov
ffc55caadd Minor 2015-03-06 22:04:15 +03:00
Valentin Kipyatkov
114bfbb2ad Fixed bug with wrong completion in class declaration 2015-03-06 22:04:15 +03:00
Andrey Breslav
dcfa77c77d completeAnalysisNeeded() removed 2015-03-06 21:59:05 +03:00
Andrey Breslav
bbb59773aa filesToAnalyzeCompletely removed 2015-03-06 21:59:05 +03:00
Andrey Breslav
456bbb6b96 Logically missing method added 2015-03-06 21:59:05 +03:00
Andrey Breslav
1c8af2d2fe Rename. LocalClassDescriptorManager -> LocalClassDescriptorHolder 2015-03-06 21:59:04 +03:00
Andrey Breslav
253d76669d resolveMutableClassDescriptor() removed 2015-03-06 21:59:04 +03:00
Andrey Breslav
b567356702 Unused code removed from TopDownAnalysisContext 2015-03-06 21:59:04 +03:00
Andrey Breslav
32a3b58f14 ScriptDescriptorImpl and related non-lazy code removed 2015-03-06 21:59:04 +03:00
Andrey Breslav
7d1a826778 Rename. LazinessToken -> TypeLazinessToken 2015-03-06 21:59:04 +03:00
Andrey Breslav
30a84a2bd8 Uneeded usages of LazinessToken.isLazy() are removed 2015-03-06 21:59:03 +03:00
Andrey Breslav
d310b0c99d Got rid of the LAZY flag 2015-03-06 21:59:03 +03:00
Andrey Breslav
d466533ef2 Missing test added 2015-03-06 21:59:03 +03:00
Alexey Tsvetkov
d06b2f4d0a JS: do not inline safe calls
A temporary hack until js inliner learns how to decompose expressions
2015-03-06 21:36:19 +03:00
Alexey Tsvetkov
843bc7956e JS: made JsPropertyInitializer fields not nullable 2015-03-06 21:36:19 +03:00
Alexey Tsvetkov
53dfd77d31 JS: added inline stdlib cases 2015-03-06 21:36:19 +03:00
Alexey Tsvetkov
38efec6886 JS: inline stdlib functions 2015-03-06 21:36:19 +03:00
Alexey Tsvetkov
47064ce03c JS: grouped all scope/name operations in JsParser 2015-03-06 21:36:19 +03:00
Alexey Tsvetkov
bb634c6365 JS: restore inline status for calls to functional arguments of inline function 2015-03-06 21:36:19 +03:00
Alexey Tsvetkov
889d39a43e JS: restore names that can be changed by minifier
For example, Kotlin object can be renamed in stdlib,
so when we inline stdlib function in context of other module
renamed Kotlin object reference does not exitst.
2015-03-06 21:36:19 +03:00
Alexey Tsvetkov
d44da8e4d4 JS: parse function from js file 2015-03-06 21:36:18 +03:00
Alexey Tsvetkov
b280e891e9 JS: read compiled js modules 2015-03-06 21:36:18 +03:00
Alexey Tsvetkov
bfd82e2dd2 JS: save function descriptor for inline calls 2015-03-06 21:36:18 +03:00
Alexey Tsvetkov
083b506fe1 JS: test metadata generation 2015-03-06 21:36:18 +03:00
Alexey Tsvetkov
ded46843c2 JS: generate metadata for public inline functions 2015-03-06 21:36:18 +03:00
Alexey Tsvetkov
4efadb33fa JS: switched ClosureCompiler to whitespace level 2015-03-06 21:36:18 +03:00
Alexey Tsvetkov
25f6a4aa0a JS: added spread operator inline test case 2015-03-06 21:36:18 +03:00
Alexey Tsvetkov
ea0253770b JS: use generation for some tests 2015-03-06 21:36:18 +03:00
Alexey Tsvetkov
7a96ca1dfb JS: LibraryUtils refactoring 2015-03-06 21:36:18 +03:00
Michael Nedzelsky
6e3d751ee9 fix StaticContext: use module name from module descriptor 2015-03-06 21:36:18 +03:00
Nikolay Krasko
10e51db55b Merge pull request #592 from JetBrains/rr/yole/j2k-fix-join
J2K: fix incorrect join() in doc comment converter
2015-03-06 21:04:17 +03:00
Dmitry Jemerov
4caf77f571 J2K: fix incorrect join() in doc comment converter 2015-03-06 18:27:57 +01:00
Dmitry Jemerov
4181006e87 temporarily mute test to avoid bootstrapping issues (to be reenabled after a successful build in master) 2015-03-06 18:02:14 +01:00
Dmitry Jemerov
46dbf005df update testdata for the newly appeared Double.mod(Char) method 2015-03-06 18:02:13 +01:00
Dmitry Jemerov
1c426fada2 generate the code of Numbers.kt 2015-03-06 18:02:06 +01:00
Pavel V. Talanov
5540f09751 Report default object specific diagnostics on 'default' modifier 2015-03-06 19:37:02 +03:00
Pavel V. Talanov
012d25dbca Add test for soon to be deprecated 'class object' syntax 2015-03-06 19:37:00 +03:00
Pavel V. Talanov
b51368a5e5 Fix cls builder for new decompiler 2015-03-06 19:36:58 +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
Dmitry Jemerov
28ed30bcb3 change KDoc parsing so that space after parameter/section name is not included in tag content; support @property tag in KDocFinder 2015-03-06 16:13:11 +01:00
Nikolay Krasko
69744c0550 Allow to install to idea 142 branch 2015-03-06 15:21:50 +03:00
Evgeny Gerashchenko
e267f0d4ef Safer check for optimized for loops. 2015-03-06 15:09:28 +03:00
Alexey Sedunov
5517c6c539 Extraction Engine: Report invisible types in the generated declaration header
#KT-6734 Fixed
2015-03-06 14:37:25 +03:00
Alexey Sedunov
5c871c92af Change Signature: Do not look for Java usages for declarations in JavaScript modules
#EA-65319 Fixed
2015-03-06 14:37:23 +03:00
Alexey Sedunov
2684ce20d4 Parser: Do not produce qualified expressions without receiver in package directives. Add assertion on JetQualifiedExpression
#KT-6907 Fixed
2015-03-06 14:37:22 +03:00
Alexey Sedunov
cab301e8e2 Introduce Property: Add tests for default values 2015-03-06 14:37:21 +03:00
Alexey Sedunov
1202e624ce Extraction Engine: Assume internal visibility for trait members 2015-03-06 14:37:20 +03:00
Alexey Sedunov
652253b485 Introduce Property: Forbid lazy properties/properties with initializers in traits 2015-03-06 14:37:18 +03:00
Alexey Sedunov
79b64c6f9f Introduce Property: Add test for name clash in the presence of anonymous initializer (was failing before ElementResolver fix) 2015-03-06 14:37:17 +03:00
Alexey Sedunov
a2a47d56fb Analyzer: Do no try to resolve anonymous initializer as declaration descriptor 2015-03-06 14:37:16 +03:00
Alexey Sedunov
4aac24956c Extraction Engine: Skip named argument references while analyzing extractable code
#KT-6896 Fixed
2015-03-06 14:37:16 +03:00
Evgeny Gerashchenko
c6352ec699 KT-6920 Reference this marked as deprecated if extension function is deprecated
#KT-6920 fixed
2015-03-06 13:43:03 +03:00
Evgeny Gerashchenko
06e3b5937f Fixed compilation. 2015-03-06 13:43:02 +03:00
Evgeny Gerashchenko
14b16ff87c KT-6916 Slow bytecode for downTo iteration like for (i in max downTo min)
#KT-6916 fixed
2015-03-06 13:43:02 +03:00
Nikolay Krasko
4d1c2ab0e3 Suppress action generally because of updated constant in action 2015-03-06 12:56:42 +03:00
Nikolay Krasko
e70098a2d4 Temporary copy beans with reflection while there's no library method in TeamCity JPS 2015-03-06 12:56:41 +03:00
Nikolay Krasko
7de794d381 Update to Idea 141.2.2 2015-03-06 12:56:40 +03:00
Nikolay Krasko
493911145e Gradle classes were moved 2015-03-06 12:56:39 +03:00
Pavel V. Talanov
97989d174e Update keyword completion test data
after introducing 'default' soft keyword
2015-03-06 12:43:29 +03:00
Pavel V. Talanov
84560ec550 Escape 'default' in enum entry names
Would not parse when default is a keyword
2015-03-06 12:41:56 +03:00
Pavel V. Talanov
913724f0e9 Allow default object to be denoted with 'default' modifier
Report 'default' modifier in illegal positions
2015-03-06 12:41:50 +03:00
Pavel V. Talanov
b73d7e19b7 Remove various getDefaultObject() methods 2015-03-06 12:41:46 +03:00
Pavel V. Talanov
101cc9c9ea Minor: rename ModifiersChecker#checkIllegalModifiers -> reportIllegalModifiers 2015-03-06 12:41:42 +03:00
Pavel V. Talanov
2b51e4f2d4 Add 'default' keyword
Parser: allow objects that are marked as default to have no name
2015-03-06 12:41:38 +03:00
Pavel V. Talanov
0ca2f3f336 Minor: prevent rare case when soft keyword was parsed as enum entry 2015-03-06 12:41:34 +03:00
Dmitry Jemerov
c029fa2ed0 add test for generating annotations on the setter of a delegated property; (KT-4169); properly generate backing field for delegated property with a setter 2015-03-05 19:04:18 +03:00
Dmitry Jemerov
b4eb3e0f43 add test for visibility of setter for delegated property (KT-5957) 2015-03-05 19:04:18 +03:00
Dmitry Jemerov
e9266481c5 allow delegated properties to have getters and setters without bodies 2015-03-05 19:04:17 +03:00
Evgeny Gerashchenko
8ba15937f9 KT-6820 Find usages doesn't find delegated properties when searching get/set/propertyDelegated functions
#KT-6820 fixed
2015-03-05 18:42:18 +03:00
Evgeny Gerashchenko
0a824edace KT-6821 Go to reference on "by" keyword in delegated property doesn't navigate to propertyDelegated
#KT-6821 fixed
2015-03-05 18:42:18 +03:00
Evgeny Gerashchenko
9a17bce179 Removed redundant getOriginal() 2015-03-05 18:42:17 +03:00
Evgeny Gerashchenko
af7eba64f7 Disallow PropertyMetadataImpl in conventions for delegated properties 2015-03-05 18:42:17 +03:00
Evgeny Gerashchenko
056daeaadb Don't mark parameters of get/set/propertyDelegated functions as unused.
#KT-5974 fixed
2015-03-05 18:42:16 +03:00
Dmitry Jemerov
dbe9a70fbd standard library deprecations, now with proper messages 2015-03-05 16:32:22 +01:00
Nikolay Krasko
d230cfc192 Update state for idea branches 2015-03-05 17:21:11 +03:00
Evgeny Gerashchenko
0bc8efa20d Reverted old behaviour of DescriptorToSourceUtils.descriptorToDeclaration() 2015-03-05 15:19:35 +03:00
Evgeny Gerashchenko
e7796fbb58 Not trying to find declaration in both builtins and decompiled code (as it worked before). 2015-03-05 15:19:34 +03:00
Evgeny Gerashchenko
2b522f2d5e Added comments. 2015-03-05 15:19:34 +03:00
Evgeny Gerashchenko
6ee4d92f36 Renamed object and its methods. 2015-03-05 15:19:33 +03:00
Evgeny Gerashchenko
6982757700 Optimized method. Moved logic about package view to JetReference. 2015-03-05 15:19:33 +03:00
Evgeny Gerashchenko
46940d272e Convert DescriptorToSourceUtils to Kotlin. Code cleanup. 2015-03-05 15:19:32 +03:00
Evgeny Gerashchenko
44d86da1cd Convert DescriptorToSourceUtils to Kotlin. Auto-convert. 2015-03-05 15:19:32 +03:00
Evgeny Gerashchenko
648336e759 Convert DescriptorToSourceUtils to Kotlin. Rename. 2015-03-05 15:19:31 +03:00
Evgeny Gerashchenko
9a9b2a8540 Not finding classes for package view. It is not relevant anymore: we see Java classes as classes, not packages. 2015-03-05 15:19:30 +03:00
Evgeny Gerashchenko
8ab94a18ae Inlined trivial method classDescriptorToDeclaration 2015-03-05 15:19:30 +03:00
Evgeny Gerashchenko
7b6f83815c Unified obtaining psi element for descriptor. Now code for finding effective descriptors of fake override and finding source element for original declarations are separated. Old method DescriptorToSourceUtils.descriptorToDeclaration is still there, because it has ~90 usages. 2015-03-05 15:19:29 +03:00
Evgeny Gerashchenko
a56b1da11f Minor. Removed unused function. 2015-03-05 15:19:29 +03:00
Dmitry Jemerov
48b0afd84d correctly generate safe casts from Unit type
#KT-4494 fixed
2015-03-05 11:59:23 +01:00
Dmitry Jemerov
2835459920 correctly generate 'in' expressions with IntRange on RHS and a type other than Int on LHS 2015-03-05 11:33:24 +01:00
Dmitry Jemerov
1188be9070 generate correct bytecode for constructors using infix call syntax
#KT-4589 Fixed
2015-03-05 11:26:27 +01:00
Pavel V. Talanov
ed4c265564 Drop ClassKind.CLASS_OBJECT
Default and non-default objects now have ClassKind.OBJECT
2015-03-05 13:06:33 +03:00
Pavel V. Talanov
f72f548a93 Add ClassDescriptor#isDefaultObject()
with dummy implementations for now
2015-03-05 13:06:12 +03:00
Pavel V. Talanov
63acb19413 Minor: treat default objects as ordinary objects in ExtractionData.inferParametersInfo() 2015-03-05 13:06:08 +03:00
Pavel V. Talanov
5e249e71f6 Do not exclude default object names when rendering descriptors in short names mode 2015-03-05 13:06:04 +03:00
Pavel V. Talanov
afe8773e41 Minor: rename OVERRIDE_CANNOT_BE_STATIC and improve message 2015-03-05 13:06:00 +03:00
Pavel V. Talanov
350864b22f Drop some of explicit ClassKind.CLASS_OBJECT and OBJECT usages 2015-03-05 13:05:56 +03:00
Pavel V. Talanov
fa590a5b83 Refactor: Extract isObject with a new semantic 2015-03-05 13:05:48 +03:00
Pavel V. Talanov
fc6f4208ec Rename: isObject -> isNonDefaultObject 2015-03-05 13:05:45 +03:00
Nikolay Krasko
d827038f7c Fix test 2015-03-05 12:01:42 +03:00
Nikolay Krasko
08502cd510 Refactoring: inline methods and hide intermediate class 2015-03-05 01:30:39 +03:00
Nikolay Krasko
518c35fae1 Intrinsic default objects implementation: old test data modification 2015-03-05 01:30:39 +03:00
Nikolay Krasko
30a50746b5 Intrinsic default objects implementation: tests 2015-03-05 01:30:38 +03:00
Nikolay Krasko
1f79e0905f Intrinsic default objects implementation 2015-03-05 01:30:37 +03:00
Nikolay Krasko
05de376fc3 Don't spam warning when file was removed 2015-03-05 01:30:37 +03:00
Nikolay Krasko
2bac22d617 Fix EA-65829 2015-03-05 01:30:36 +03:00
Nikolay Krasko
c75a7df926 Put reference to default object in default object extenstion call 2015-03-05 01:30:35 +03:00
Alexey Sedunov
5ae9bb600c Introduce Property: Place property before its usages 2015-03-04 23:06:07 +03:00
Alexey Sedunov
ada5ffee57 Refactoring: Move AbstractJetExtractionTest 2015-03-04 23:06:06 +03:00
Alexey Sedunov
6ae989e330 Introduce Property: Duplicate search & replace 2015-03-04 23:06:05 +03:00
Alexey Sedunov
b78ed32a07 Introduce Property: Implement separate in-place introducer for properties 2015-03-04 23:06:04 +03:00
Alexey Sedunov
5382504306 Extraction Engine: Support lazy properties and properties with initializer 2015-03-04 23:06:03 +03:00
Alexey Sedunov
03fada71d7 Introduce Property: Initial support (properties with getter) 2015-03-04 23:06:02 +03:00
Alexey Sedunov
48914e70ff Refactoring: Introduce ExtractionEngine class 2015-03-04 23:06:00 +03:00
Alexey Sedunov
b99c191bb2 Refactoring: Rename AbstractExtractFunctionAction ->AbstractIntroduceAction and move to 'introduce' package 2015-03-04 23:05:59 +03:00
Alexey Sedunov
0a6010ff9d Refactoring: Move selectElements() function to introduceUtil.kt 2015-03-04 23:05:58 +03:00
Alexey Sedunov
997c7f9d6c Refactoring: Extract 'extractionEngine' package 2015-03-04 23:05:57 +03:00
Alexey Sedunov
cd2c9f2194 Move package: extractFunction -> introduce 2015-03-04 23:05:56 +03:00
Alexey Sedunov
02bf8368c1 Refactoring: Inline KotlinChangePropertyActions.declareValueOrVariable() method 2015-03-04 23:05:55 +03:00
Alexey Sedunov
6a25cd663e UI: Show file name instead of text fragment in element selection popup 2015-03-04 23:05:54 +03:00
Alexander Udalov
8a42d50d65 Merge pull request #586 from JetBrains/rr/yole/kt3107
Regression tests for some obsolete issues in the JVM backend
2015-03-04 20:00:42 +03:00
Dmitry Jemerov
e60aafb18a regression test for KT-3421 2015-03-04 17:43:38 +01:00
Dmitry Jemerov
46e0fdc067 regression test for KT-3442 2015-03-04 17:41:27 +01:00
Dmitry Jemerov
7522eb4032 regression test for KT-3903 2015-03-04 17:32:40 +01:00
Dmitry Jemerov
18e54322b8 regression test for KT-4281 2015-03-04 17:27:55 +01:00
Dmitry Jemerov
a2e22c6d20 regression test for KT-3107 2015-03-04 17:24:58 +01:00
Dmitry Jemerov
155ce4221c Merge branch 'rr/yole/j2k-convert-javadoc' 2015-03-04 17:14:52 +01:00
Evgeny Gerashchenko
3aa5f5200b Incremental: fixed adding file to package and using it from Java 2015-03-04 18:59:21 +03:00
Evgeny Gerashchenko
02555478d7 Moved JsCallChecker.kt to valid package. Fixed compilation problem caused by the fact that package was present in multiple modules. 2015-03-04 18:59:20 +03:00
Dmitry Jemerov
9372339567 use a data class instead of a Pair<String, String> 2015-03-04 16:16:38 +01:00
Valentin Kipyatkov
4a29e968d0 Corrections on code review 2015-03-04 17:41:44 +03:00
Natalia Ukhorskaya
1928e5e9e5 Use android-plugin library for android-compiler plugin 2015-03-04 15:31:44 +03:00
Natalia Ukhorskaya
0391fbd764 Evaluate Expression: support anonymous objects evaluation 2015-03-04 12:42:59 +03:00
Pavel V. Talanov
f507af15c0 Rename in descriptors.proto: class_object_name -> default_object_name 2015-03-03 20:57:13 +03:00
Pavel V. Talanov
48fbce9582 Refactor: process mentions of class object
Rename usages that refer to "default object" concept now
Test data file names are left as is
2015-03-03 20:57:08 +03:00
Dmitry Jemerov
ac6a56761e J2K: convert javadoc comments to kdoc 2015-03-03 18:31:30 +01:00
Valentin Kipyatkov
27f5d71e4f Fixed bug in partial body resolve 2015-03-03 19:22:27 +03:00
Michael Bogdanov
db987eedee Fix android compiler plugin classpath 2015-03-03 17:05:17 +03:00
Pavel V. Talanov
ac34f2188b Prettify code in DeclarationResolver.kt 2015-03-03 14:54:42 +03:00
Pavel V. Talanov
9628d98f38 Convert to kotlin: DeclarationResolver.kt 2015-03-03 14:54:36 +03:00
Pavel V. Talanov
4a156c5c8c Rename file: DeclarationResolver.java -> DeclarationResolver.kt 2015-03-03 14:54:25 +03:00
Dmitry Jemerov
cbb8df954c Merge remote-tracking branch 'upstream/master' 2015-03-03 12:42:25 +01:00
Dmitry Jemerov
ff3cb27c8f EA-65705 - ISE: KDocReference.getTargetDescriptors 2015-03-03 12:31:40 +01:00
Valentin Kipyatkov
33bc234f45 More clear code 2015-03-03 13:41:32 +03:00
Valentin Kipyatkov
5b4afa140b Fixed bug in reference shortening related on on the fly import optimization 2015-03-03 13:41:32 +03:00
Valentin Kipyatkov
862d391da6 KT-6834 Optimize Imports: do not modify file if import list had not change
#KT-6834 Fixed
2015-03-03 13:41:32 +03:00
Valentin Kipyatkov
b0d82bef7d Tested KT-2718 Package names that match Kotlin keywords should be escaped properly 2015-03-03 13:41:32 +03:00
Dmitry Jemerov
2cc291efdb Standard library documentation continued. 2015-03-03 11:20:30 +01:00
Pavel V. Talanov
7cd68c70d2 Do not run unused symbol inspection on default objects for now
#KT-6872 Fixed
2015-03-03 13:04:33 +03:00
Pavel V. Talanov
4370b50841 Minor: change rendering of class objects' types in completion 2015-03-03 13:04:32 +03:00
Pavel V. Talanov
cbf9208c1d Minor: change rendering of class objects in source code renderers
Fixes one particular case in completion
2015-03-03 13:04:32 +03:00
Pavel V. Talanov
cebe556d03 Minor: simplify code 2015-03-03 13:04:31 +03:00
Pavel V. Talanov
cc90891b6c Minor: change rendering of class objects in some diagnostics 2015-03-03 13:04:31 +03:00
Pavel V. Talanov
989f07962b Write to trace in case class qualifier is a short reference to default object
This allows to fix some cases when there is a difference between explicit and short reference to default object
Fix shorten reference, optimize imports and import insert helper for default objects
ShortenReferences always transforms default object references to shorter form for now
Fix DescriptorUtils#getFqName() for default objects (affects test data mostly)
Fix DescriptorUtils#getImportableDescriptor()
2015-03-03 13:04:30 +03:00
Pavel V. Talanov
7f672f8078 Minor: remove redundant class objects from project code 2015-03-03 13:04:30 +03:00
Pavel V. Talanov
b012b9d8a3 Stdlib: Move classes out of class object in FunctionalList 2015-03-03 13:04:29 +03:00
Pavel V. Talanov
ffabe19229 Prohibit accessing nested classes/objects of class object using class literal
The fqname of class should be clear from code
Example: can't shorten A.Default.B.Default.C to A.B.C
Also fixes problem when nested class of enum class could be accessed via enum entry
2015-03-03 13:04:29 +03:00
Pavel V. Talanov
86bbb117ef Refactor: rework FilteredCollector in CallableDescriptorCollectors
Convert LibrarySourceHacks to Kotlin
2015-03-03 13:04:28 +03:00
Pavel V. Talanov
cceb5738c8 Can't omit default object name in imports and types
There should be only one way to denote a type (A.Default.B can't be denoted as A.B)
2015-03-03 13:04:28 +03:00
Pavel V. Talanov
640d2de5b9 Fix incorrect reference target for class literals in some cases 2015-03-03 13:04:27 +03:00
Pavel V. Talanov
88c5379424 Change importing rules for objects:
Allow importing classes from object, prohibit import-on-demand from objects
It's unclear what import-on-demand from object should mean so we prohibit it for now
2015-03-03 13:04:27 +03:00
Dmitry Jemerov
2e208c4294 revert incorrect deprecations 2015-03-02 22:16:52 +01:00
Dmitry Jemerov
f41a0a328f don't deprecate AbstractIterator for now 2015-03-02 18:19:56 +01:00
Dmitry Jemerov
afafdb31ee deprecate some legacy code in the standard library 2015-03-02 18:17:17 +01:00
Evgeny Gerashchenko
c63b9b9433 Merge pull request #576 from typeinference/file-template-for-object
File template for object
2015-03-02 20:31:40 +04:00
Dmitry Jemerov
595eacb099 remove incorrect JVM-specific note 2015-03-02 13:25:31 +01:00
Dmitry Jemerov
78cb983bd0 clarify docs 2015-03-02 13:02:00 +01:00
Dmitry Jemerov
417711f9e6 document InlineStrategy and InlineOptions 2015-03-02 12:52:52 +01:00
Dmitry Jemerov
f9fd0fd195 Merge branch 'rr/yole/kdocfinder-overridden' 2015-03-02 11:23:20 +01:00
Dmitry Jemerov
6e29829891 add test which reproduces the problem 2015-02-27 20:55:34 +01:00
Dmitry Jemerov
1684248e97 Fix retrieving documentation for overridden methods.
(The test doesn't actually reproduce the problem because it can't be done in a single-file setup, but it verifies that the basic functionality continues to work.)
2015-02-27 20:10:37 +01:00
Alexander Udalov
2c0830b017 Change synthetic accessor method names to "access$..."
As per discussion in https://youtrack.jetbrains.com/issue/KT-6870
2015-02-27 20:30:51 +03:00
Alexander Udalov
ac9e6cd9ca Regenerate tests 2015-02-27 19:56:37 +03:00
Andrey Breslav
4c84b19b33 KT-5488 Invalid ambiguity between plus and plusAssign
#KT-5488  Fixed
2015-02-27 19:32:58 +03:00
Andrey Breslav
9c2a9e0bdb Spec for operator conventions is copied from the docs 2015-02-27 19:32:56 +03:00
Stanislav Erokhin
5ad07d88a9 Update to IDEA 140.2683.2 2015-02-27 18:51:05 +03:00
Dmitry Jemerov
cec1b94664 provide documentation for generated built-in classes 2015-02-27 14:19:39 +01:00
Stanislav Erokhin
602689892e Wrong diagnostic when last expression in lambda contains assignment operation
#KT-6769 Fixed
2015-02-27 14:16:20 +03:00
Natalia Ukhorskaya
09435ad0e3 Gradle: fix warning about annotations path entry points to a non-existent location
#KT-6865 Fixed
2015-02-27 10:30:28 +03:00
Yan Zhulanow
171ea9416e Use comma to separate plugin paths in IDEA run configurations 2015-02-26 19:30:29 +03:00
Yan Zhulanow
cdb7a4002e Join Kotlin and KotlinAndroidExtensions plugins into one directory 2015-02-26 18:53:43 +03:00
Nikolay Krasko
f2b1585399 Add file name to debug context string to see if file is script 2015-02-26 16:39:50 +03:00
Yan Zhulanow
7bc81f68b4 Fix a bug in PluginURLClassLoader 2015-02-26 16:07:45 +03:00
Yan Zhulanow
2d6186b155 Report compiler exception on plugin load fail 2015-02-26 16:07:45 +03:00
Yan Zhulanow
20fc298113 Cache Android XML parse results using VfsModificationTracker 2015-02-26 16:07:44 +03:00
Yan Zhulanow
d7fdb8b513 Remove Android-related services from core "idea" plugin 2015-02-26 15:26:03 +03:00
Yan Zhulanow
0ecd1c04b0 Update copyright 2015-02-26 15:26:02 +03:00
Yan Zhulanow
f71e41d2db Fix Android xml converter tests 2015-02-26 15:26:02 +03:00
Yan Zhulanow
7423e30065 Removed Android dependencies from core modules 2015-02-26 15:26:02 +03:00
Yan Zhulanow
17bdcfe03f Gradle dependency from jps-plugin removed 2015-02-26 15:26:01 +03:00
Yan Zhulanow
756d0a06d9 Remove obsolete "frontend.android" paths 2015-02-26 15:26:01 +03:00
Yan Zhulanow
5614b29db7 Build KotlinAndroidExtensions artifact before launching IDEA 2015-02-26 15:26:01 +03:00
Yan Zhulanow
ccbbaba7cd Rename jet to kotlin in Android JPS plugin 2015-02-26 15:26:01 +03:00
Yan Zhulanow
d35f36da06 Rename jet to kotlin in Kotlin compiler infrastructure 2015-02-26 15:26:00 +03:00
Yan Zhulanow
db45ab4ad6 Call findViewById if invoked on anything but our Activity class 2015-02-26 15:26:00 +03:00
Yan Zhulanow
8ebd63ee96 Update Gradle plugin 2015-02-26 15:26:00 +03:00
Yan Zhulanow
f033604c7a Rename jet to kotlin in compiler api 2015-02-26 15:25:59 +03:00
Yan Zhulanow
328116cb1a Fix android-compiler-plugin build 2015-02-26 15:25:59 +03:00
Yan Zhulanow
1d9979b073 Rename jet to kotlin in android-idea-plugin 2015-02-26 15:25:59 +03:00
Yan Zhulanow
5eec7d3ac2 Rename jet to kotlin in android-compiler-plugin 2015-02-26 15:25:59 +03:00
Yan Zhulanow
b897803f5b Fix ProGuard rules for plugin-api 2015-02-26 15:25:58 +03:00
Yan Zhulanow
9aef9b2643 Rename jet to kotlin in plugin-api 2015-02-26 15:25:58 +03:00
Yan Zhulanow
b2f323908b Fix Android plugin rename tests 2015-02-26 15:25:58 +03:00
Yan Zhulanow
c756cfef86 Codebase update 2015-02-26 15:25:57 +03:00
Yan Zhulanow
346dbe3f7c Refactor Android plugin 2015-02-26 15:25:57 +03:00
Yan Zhulanow
4f9aba2cdc Support multi-module configuration in Android plugin 2015-02-26 15:25:57 +03:00
Yan Zhulanow
438d2ee5fa Cache resolved Views in Map 2015-02-26 15:25:56 +03:00
Yan Zhulanow
cb0d0543fd Fix IDEA tests in Android plugin 2015-02-26 15:25:56 +03:00
Yan Zhulanow
4180cf4d53 Read VirtualFile contents via contentsToByteArray() 2015-02-26 15:25:56 +03:00
Yan Zhulanow
fbed5426e2 Kotlin Gradle subplugin support 2015-02-26 15:25:55 +03:00
Yan Zhulanow
781c565ec9 Revert completion settings back on Android completion test finish 2015-02-26 15:25:55 +03:00
Yan Zhulanow
755c16d6d2 Do not shrink org.jetbrains.kotlin package classes 2015-02-26 15:25:55 +03:00
Yan Zhulanow
09809d2f7a Do not tell about Android compiler plugin in JPS in case of non-Android project 2015-02-26 15:25:55 +03:00
Yan Zhulanow
6ab2dc90f8 Fix cli help tests 2015-02-26 15:25:54 +03:00
Yan Zhulanow
4b18507bf5 CliOptions moved to the separate file 2015-02-26 15:25:54 +03:00
Yan Zhulanow
e891d48a7a Localize plugin string format usages 2015-02-26 15:25:54 +03:00
Yan Zhulanow
f64c116206 Ability to get plugin option string in plugin API 2015-02-26 15:25:53 +03:00
Yan Zhulanow
94995f5a20 Obsolete testData files removed 2015-02-26 15:25:53 +03:00
Yan Zhulanow
264178c4ea CrossParserTest was renamed to ParserResultEqualityTest 2015-02-26 15:25:53 +03:00
Yan Zhulanow
9f66777185 KotlinIsReferenceToExtension was renamed to SimpleNameReferenceExtension 2015-02-26 15:25:53 +03:00
Yan Zhulanow
359376f797 Android SDK version was updated in Android plugin tests 2015-02-26 15:25:52 +03:00
Yan Zhulanow
15f7f6e08e Android compiler tests moved to test package 2015-02-26 15:25:52 +03:00
Yan Zhulanow
23053a2be2 Ability to change codegen test path (for plugins) 2015-02-26 15:25:52 +03:00
Yan Zhulanow
7cd78a2d3a AndroidBytecodeShapeTest renamed 2015-02-26 15:25:51 +03:00
Yan Zhulanow
5590848843 Simplify Android facet resolving in IDEAndroidResourceManager 2015-02-26 15:25:51 +03:00
Yan Zhulanow
edac24df74 Android plugins are now test dependencies, not compile-time 2015-02-26 15:25:51 +03:00
Yan Zhulanow
638fb7526c Remove invalid android-tests library 2015-02-26 15:25:51 +03:00
Yan Zhulanow
27d4132c77 Removed obsolete frontend.android 2015-02-26 15:25:50 +03:00
Yan Zhulanow
7fc5114ffc Load compiler plugins via the custom ClassLoader 2015-02-26 15:25:50 +03:00
Yan Zhulanow
e5b16afff5 Support android-compiler-plugin in Gradle 2015-02-26 15:25:50 +03:00
Yan Zhulanow
ee62477ed4 Remove LightElement property resolving 2015-02-26 15:25:50 +03:00
Yan Zhulanow
a8e3e4d8de Android plugin test dependencies added 2015-02-26 15:25:49 +03:00
Yan Zhulanow
27e1e7ffdb Fix a typo 2015-02-26 15:25:49 +03:00
Yan Zhulanow
abd4e98a99 Fix a bug when no "layout" folders exist 2015-02-26 15:25:49 +03:00
Yan Zhulanow
4eddac30c6 Android compiler persistence tests fixed 2015-02-26 15:25:48 +03:00
Yan Zhulanow
488ef6f50e Register plugin extensions in tests 2015-02-26 15:25:48 +03:00
Yan Zhulanow
1b355004d5 Move Android-related tests to the separate testGroup 2015-02-26 15:25:48 +03:00
Yan Zhulanow
fa62d3bcec Move Android compiler plugin tests to android-compiler-plugin module 2015-02-26 15:25:48 +03:00
Yan Zhulanow
efff642635 Move Android IDEA plugin tests to android-idea-plugin module 2015-02-26 15:25:47 +03:00
Yan Zhulanow
b7f8496e5b Move Android JPS plugin tests to android-jps-plugin module 2015-02-26 15:25:47 +03:00
Yan Zhulanow
94af8302ec Allow to specify custom testData path in CodegenTest 2015-02-26 15:25:47 +03:00
Yan Zhulanow
2ff7ec4a64 Support test case execution in KotlinAndroidJpsPlugin 2015-02-26 15:25:46 +03:00
Yan Zhulanow
77880647ad Implement KotlinIsReferenceToExtension in Android IDEA plugin 2015-02-26 15:25:46 +03:00
Yan Zhulanow
aeeea6cda7 Plugin configuration files united 2015-02-26 15:25:46 +03:00
Yan Zhulanow
3f0118c88c KotlinIsReferenceToExtension extracted 2015-02-26 15:25:45 +03:00
Yan Zhulanow
83d3a4f575 Fix synthetic property rename processor 2015-02-26 15:25:45 +03:00
Yan Zhulanow
b7d410ba25 Remove navigation from R class fields (already handled by the main plugin) 2015-02-26 15:25:45 +03:00
Yan Zhulanow
5f912ce13d Delegate secondary elements to handler 2015-02-26 15:25:45 +03:00
Yan Zhulanow
a2032e60a7 Provide values using ServiceLoader instead of MANIFEST.MF 2015-02-26 15:25:44 +03:00
Yan Zhulanow
e0f1a56b28 Load compiler plugins via ServiceLoader 2015-02-26 15:25:44 +03:00
Yan Zhulanow
af9c5cc45d Providing plugin classpath through JPS extensions 2015-02-26 15:25:44 +03:00
Yan Zhulanow
c94844f6dc Rename artifact 2015-02-26 15:25:44 +03:00
Yan Zhulanow
660997e1b9 Loading compiler plugins implemented 2015-02-26 15:25:43 +03:00
Yan Zhulanow
72c611df22 Extensions registered before usage 2015-02-26 15:25:43 +03:00
Yan Zhulanow
a08411f925 Process normally when no plugins were found 2015-02-26 15:25:43 +03:00
Yan Zhulanow
7c496f638e Extract android-compiler-plugin from Ant into Android plugin 2015-02-26 15:25:42 +03:00
Yan Zhulanow
9f962e39ca Do not bundle Android subplugins to the main plugin 2015-02-26 15:25:42 +03:00
Yan Zhulanow
9b9d96df30 android-compiler-plugin Ant build task introduced 2015-02-26 15:25:42 +03:00
Andrey Breslav
562b563e7e Read action added in Android plugins 2015-02-26 15:25:42 +03:00
Andrey Breslav
e9e96657c3 Artifact for Android extensions plugin 2015-02-26 15:25:41 +03:00
Andrey Breslav
71d082c12c Missing public added 2015-02-26 15:25:41 +03:00
Andrey Breslav
8844ecdbc4 Find Usages extension extracted 2015-02-26 15:25:41 +03:00
Andrey Breslav
5811b13ce7 ExpressionCodegenExtension extracted 2015-02-26 15:25:40 +03:00
Andrey Breslav
e10d8a6fe0 ExternalDeclarationsProvider introduced 2015-02-26 15:25:40 +03:00
Andrey Breslav
1f10ab21ac android-ide-plugin module extracted 2015-02-26 15:25:40 +03:00
Andrey Breslav
1e70369cf8 Logic related to command-line options moved to android-compiler-plugin 2015-02-26 15:25:40 +03:00
Andrey Breslav
febfdde89e Compiler plugins can provide extra command line parameters in JPS 2015-02-26 15:25:39 +03:00
Andrey Breslav
d961e2f5b4 CommandLineProcessor infrastructure added 2015-02-26 15:25:39 +03:00
Andrey Breslav
565ce5a781 frontend.android renamed to android-compiler-plugin 2015-02-26 15:25:39 +03:00
Andrey Breslav
35028227a0 Plugin component registrar introduced
CompilerConfiguration moved to plugin-api
2015-02-26 15:25:38 +03:00
Andrey Breslav
dca186e94d plugin-api module introduced 2015-02-26 15:25:38 +03:00
Mikhail Mutcianko
95fd4006d9 fix android jps build test case
- add proper way of setting up android sdk for jps
- add missing android plugin runtime library
2015-02-26 15:25:38 +03:00
Mikhail Mutcianko
bf25dffb85 add android bytecode persistence test 2015-02-26 15:25:37 +03:00
Mikhail Mutcianko
2643866e31 add android find usages test 2015-02-26 15:25:37 +03:00
Mikhail Mutcianko
947e1b7f5b fix find usage handler not returning android property as secondary element 2015-02-26 15:25:37 +03:00
Mikhail Mutcianko
b2afc3b4b5 add reverse renaming to android rename tests 2015-02-26 15:25:37 +03:00
Mikhail Mutcianko
4145991bea add android rename tests 2015-02-26 15:25:36 +03:00
Mikhail Mutcianko
e922a91958 eliminate idToXml cache leftovers from android resource manger 2015-02-26 15:25:36 +03:00
Mikhail Mutcianko
934bbec06d fix kotlin property renamer npe
- fix npe when element usage has no reference(e.g. xml cross usage)
2015-02-26 15:25:36 +03:00
Mikhail Mutcianko
bc7fe3405e factor base android test case
- move common initialization code to base class
2015-02-26 15:25:35 +03:00
Mikhail Mutcianko
65ef880dd3 add all goto tests
- fix base test case failing when no res directory present
- get rid of JetProperty -> XmlAttr caching
2015-02-26 15:25:35 +03:00
Mikhail Mutcianko
04a905c35c fix android kotlin test framework
- fix android jars not indexed by java indexer
- fix goto test
2015-02-26 15:25:35 +03:00
Mikhail Mutcianko
1912b2b0ec add android jps builder test stub
wtf
2015-02-26 15:25:35 +03:00
Mikhail Mutcianko
7c4661aba5 add android goto declaration test stub 2015-02-26 15:25:34 +03:00
Mikhail Mutcianko
537933d145 regenerate android tests after rebase 2015-02-26 15:25:34 +03:00
Mikhail Mutcianko
baa442207b fix android resource path arguments after rebase 2015-02-26 15:25:34 +03:00
Mikhail Mutcianko
bc9e1ee2d2 fix android cross parser tests
- reorganize tests folder structure
- fix class attribute ignored in ide xml parser
2015-02-26 15:25:33 +03:00
Mikhail Mutcianko
84d326ed47 refactor android kotlin fixture test
- move more setup code to base class
2015-02-26 15:25:33 +03:00
Mikhail Mutcianko
95b5c94f8d delete obsolete android test 2015-02-26 15:25:33 +03:00
Mikhail Mutcianko
f507857930 fix R class field resolving
- resolve by class name and package defined in AndroidManifest.xml
2015-02-26 15:25:33 +03:00
Mikhail Mutcianko
adbe9afd4a add android completion tests
- add android plugin test classes as test library
- add base android test cases for kotlin, setting up android facet and sdk
2015-02-26 15:25:32 +03:00
Mikhail Mutcianko
08245ffe1c add android properties box tests 2015-02-26 15:25:31 +03:00
dedoz
f2ab424c41 add generated tests 2015-02-26 15:25:31 +03:00
Mikhail Mutcianko
a56fa7f192 optimize imports 2015-02-26 15:25:31 +03:00
Mikhail Mutcianko
19e6b79cae minor refactorings 2015-02-26 15:25:30 +03:00
Mikhail Mutcianko
23fbc60e50 update android synthetic properties completion test
- add missing android classes as text into fixture
2015-02-26 15:25:30 +03:00
Mikhail Mutcianko
ec0d1f5d06 fix android plugin libs dependencies 2015-02-26 15:25:30 +03:00
Mikhail Mutcianko
bafaf9e46c fix cli argument tests 2015-02-26 15:25:29 +03:00
Mikhail Mutcianko
ab8815bf74 fix android plugin dependencies not unpacked 2015-02-26 15:25:29 +03:00
dedoz
bada0ec7f8 add kotlin gradle plugin integration 2015-02-26 15:25:29 +03:00
dedoz
972e0f28d0 add android xml to properties completion test 2015-02-26 15:25:28 +03:00
Mikhail Mutcianko
376886a9c3 add configuration key to pass android manifest file 2015-02-26 15:25:28 +03:00
Mikhail Mutcianko
c6b8cbbb01 add android layout file searching to kotlin jps plugin 2015-02-26 15:25:28 +03:00
Mikhail Mutcianko
f49e28387e delegate android resource and manifest reading in ide to android support plugin 2015-02-26 15:25:28 +03:00
Mikhail Mutcianko
85e18a3d73 correct interpretation of android id usage mixed with id declarations 2015-02-26 15:25:27 +03:00
Mikhail Mutcianko
8e8b626994 implement find usages action for android synthetic properties 2015-02-26 15:25:27 +03:00
Mikhail Mutcianko
d310b2021c add android xml reference and rename handling to JetSimpleNameReference 2015-02-26 15:25:27 +03:00
Mikhail Mutcianko
9c9bad2f78 android goto declaration handler reference fix
- goto handler now utilizes full featured reference resolving instead of simple name based resolving
2015-02-26 15:25:26 +03:00
Mikhail Mutcianko
37c851cafc fix excess xml parsing when renaming resources
- rebuild resource name -> xml attribute mappings same time as rebuilding synthetic properties
- update mappings during rename
2015-02-26 15:25:26 +03:00
Mikhail Mutcianko
9f20c36959 add synthetic property renaming by renaming R light class field 2015-02-26 15:25:26 +03:00
Mikhail Mutcianko
885d963c3f add bound property renaming by renaming xml attribute value 2015-02-26 15:25:26 +03:00
Mikhail Mutcianko
621193681f refactor AndroidResourceManager
- move more common methods from xml processor implementations to resource manager
- optimize imports, reformat code
2015-02-26 15:25:25 +03:00
Mikhail Mutcianko
b5e267ed56 fix double renaming issue
- rebuild resource mapping cache on external layout file changes
- move duplicated code to AndroidResourceManager
2015-02-26 15:25:25 +03:00
Mikhail Mutcianko
1b50b226ae move android rename handler out of kotlin property renamer, extract resource manager class 2015-02-26 15:25:25 +03:00
Mikhail Mutcianko
395959bf21 reformat code, optimize imports 2015-02-26 15:25:24 +03:00
Mikhail Mutcianko
2f97e7fadb revert cli converter to stream parsing 2015-02-26 15:25:24 +03:00
Mikhail Mutcianko
996636aa62 add goto declaration support for synthetic android properties 2015-02-26 15:25:24 +03:00
Mikhail Mutcianko
934a3b0436 rename android synthetic id property also renames respective xml resource 2015-02-26 15:25:24 +03:00
Mikhail Mutcianko
d464d89e3d add android synthetic element detecting helpers 2015-02-26 15:25:23 +03:00
dedoz
9899e78329 replace sax with psi based android ui xml parsing in plugin 2015-02-26 15:25:23 +03:00
Mikhail Mutcianko
c24fccc659 fix xml resolving
- replace VirtualFileListener based approach with direct PsiFile reading
2015-02-26 15:25:23 +03:00
Mikhail Mutcianko
35b1cb4fc7 check if android metadata is present before inlining property 2015-02-26 15:25:22 +03:00
Mikhail Mutcianko
79cbfcd750 fix compiler argument tests 2015-02-26 15:25:22 +03:00
Mikhail Mutcianko
21408da521 insert missing copyrights, move ByteArrayClassLoader up 2015-02-26 15:25:22 +03:00
dedoz
8495e06285 add android xml bridge invocation test 2015-02-26 15:25:22 +03:00
Mikhail Mutcianko
2801253a9c add byte code generation 2015-02-26 15:25:21 +03:00
Mikhail Mutcianko
7536170e1d add android manifest support 2015-02-26 15:25:21 +03:00
Mikhail Mutcianko
a4fb49c3dd fix R class not resolved in dummy file 2015-02-26 15:25:21 +03:00
Mikhail Mutcianko
ab0c922f53 refactor XmlHandler, optimize imports, remove unused files 2015-02-26 15:25:20 +03:00
Mikhail Mutcianko
6371197041 add missing module and build dependencies 2015-02-26 15:25:20 +03:00
Mikhail Mutcianko
3c9ec30c20 add writePackage to KotlinWriter 2015-02-26 15:25:20 +03:00
Mikhail Mutcianko
d107ad92a0 refactor converter initialization
- push lazyInit() down to IDE and Cli implementations
- no file listeners created in cli implementation anymore
- fix tests
2015-02-26 15:25:20 +03:00
Mikhail Mutcianko
d557fa8d5d event based file processing
- use VirtualFileListener to wait for ui xml file updates
- optimize imports
2015-02-26 15:25:19 +03:00
Mikhail Mutcianko
208735d92e suppress xml errors in converter
- simply ignore malformed layouts, xml editor in ide will highlight them anyway
2015-02-26 15:25:19 +03:00
Mikhail Mutcianko
eb7534f369 add converter output caching
- add two level caching: per xml conversion result and complete resulting JetFile,
  so that only modified xmls are actually converted, and if no change has been
  made to any of those, last successfully built psi file is returned
- merge AndroidUIXmlPathProvider and AndroidUIXmlParser
- update tests
2015-02-26 15:25:19 +03:00
Mikhail Mutcianko
f5b9b155cd fix ant build
- add frontend.android content to sources path
2015-02-26 15:25:18 +03:00
Mikhail Mutcianko
ec6f9c9fc5 add compiler key for providing android resources path 2015-02-26 15:25:18 +03:00
Mikhail Mutcianko
afee95a37c fix npe when layout xml search path does not exist 2015-02-26 15:25:18 +03:00
Mikhail Mutcianko
d5565db488 obey android project structure when searching for ui xmls
- search for android layout xmls in ProjectRoot/res/layout/ when using IDEPathProvider
2015-02-26 15:25:18 +03:00
Mikhail Mutcianko
2c44f5c4b7 missing files handling in converter
- silently continue if no files were found to convert
2015-02-26 15:25:17 +03:00
Mikhail Mutcianko
155d2fa979 ide analyzer integration stub
- add android ui xml path providers/stubs
- add generated file injection during analysis
2015-02-26 15:25:17 +03:00
Mikhail Mutcianko
aa01d6d7cf auto cast widget to its original type
- change property return type signatures from View to actual widget type
- simplify and update tests
2015-02-26 15:25:17 +03:00
Mikhail Mutcianko
31dc8194f1 add converted result compilation test 2015-02-26 15:25:16 +03:00
Mikhail Mutcianko
1e8769b5f7 android UI xml bridge initial
- add frontend.android module
- add xml ids to kotlin extension properties converter
- add converter basic functional test
2015-02-26 15:25:16 +03:00
Nikolay Krasko
c8c1ce521b Add kotlin runtime to idea-jps-common module dependency
#KT-6826 Fixed
2015-02-26 12:37:32 +03:00
Nikolay Krasko
98a2aa506e Minor: show conflicting elements 2015-02-26 12:37:29 +03:00
Alexander Udalov
6f0ccbfab8 Reuse class loader for kotlin-runtime.jar in codegen tests
Also delete questionable ClassPathInParentClassLoaderTest
2015-02-25 20:13:47 +03:00
Alexander Udalov
b99b1883bc Drop unused parameter in JavaToKotlinClassMap and subclasses 2015-02-25 20:13:46 +03:00
Alexander Udalov
fca7a8c4a2 Drop PrimitiveTypesUtil, store desc in JvmPrimitiveType 2015-02-25 20:13:46 +03:00
Alexander Udalov
27978a7e25 Clarify inapplicable platformName diagnostic message 2015-02-25 20:13:45 +03:00
Dmitry Jemerov
35e8e4d49a Support spellchecking in Kotlin string literals; remove unused and unnecessary support for custom suppressions of spelling errors 2015-02-25 18:00:59 +01:00
Natalia Ukhorskaya
e0e203d7db Debugger: classLoader can be null (ex. classes from android application). JDIEval will use CallerClassLoader for find classes
#KT-6825 Fixed
2015-02-25 16:42:17 +03:00
Natalia Ukhorskaya
957d1c19c5 JDIEval: allow classLoader to be null (load class from caller classloader) 2015-02-25 16:42:17 +03:00
Andrey Breslav
b0422990d9 KT-6527 Wrong diagnostics when compare dynamic to null
#KT-6527 Fixed
2015-02-25 14:59:22 +03:00
Andrey Breslav
a00a118f94 EA-63343 - assert: DescriptorUtils.getClassDescriptorForTypeConstructor
#KT-6835 Fixed
2015-02-25 14:59:22 +03:00
Andrey Breslav
d70d2ca146 Nullability of error types is not known
#KT-6829 Fixed
2015-02-25 14:59:21 +03:00
Nikolay Krasko
f3919db592 Find usages and reference to delegation origin 2015-02-24 21:52:52 +03:00
Nikolay Krasko
377209f0c3 Do not report CONFLICTING_JVM_DECLARATIONS on delegated origin element 2015-02-24 21:33:55 +03:00
Stanislav Erokhin
c6f8a1cfcc Add support local return from lambda with implicit unit type. 2015-02-24 14:14:49 +03:00
Stanislav Erokhin
57fd5cc84c Support local return in lambda without explicit return type 2015-02-24 14:14:49 +03:00
Stanislav Erokhin
def81d30dc Minor: simplify expression 2015-02-24 14:14:48 +03:00
Nikolay Krasko
8ea9d39e98 Do not generate long lines and simplify merge in generated tests 2015-02-24 13:15:09 +03:00
Alexander Udalov
768a67d1f1 Output version upon REPL start 2015-02-24 11:10:26 +03:00
Alexander Udalov
cf0842b135 Fix initialization order in REPL
#KT-6843 Fixed
2015-02-22 16:12:38 +03:00
Andrey Breslav
e47a156e36 KT-6810 Don't report warnings in dummy.kt
#KT-6810 Fixed
2015-02-21 13:51:13 +03:00
Alexey Sedunov
95675176df Change Signature: Add test for KT-5784 "Generate import on function refactoring when parameter changes type"
#KT-5784 Fixed
2015-02-20 19:08:22 +03:00
Alexey Sedunov
a21163b8c4 Change Signature: Add test for KT-4013 "'Change signature' does not add necessary imports"
#KT-4013 Fixed
2015-02-20 19:08:19 +03:00
Alexey Sedunov
8e2b0875c2 Intentions: Forbid conversion of vararg parameter to receiver 2015-02-20 19:08:17 +03:00
Alexey Sedunov
2af83c58c9 Create from usage: Use separate editor for templates which should be placed in Java files 2015-02-20 19:08:14 +03:00
Alexey Sedunov
6bdff82c3a Create from usage: Do not create functions/properties from import directives 2015-02-20 19:08:11 +03:00
Alexey Sedunov
41d51e0a13 Create from usage: Assume String return type for function whch is called inside of string template
#KT-6083 Fixed
2015-02-20 19:08:08 +03:00
Alexey Sedunov
0ae69e0d3e Create from usage: Do not generate function body if it's declared as a trait member
#KT-6078 Fixed
2015-02-20 17:28:41 +03:00
Alexey Sedunov
60d02dab0f Create from usage: Support generation of nested Java classes from usages in Kotlin code 2015-02-20 17:28:40 +03:00
Alexey Sedunov
5cd477279b Create from usage: Support static Java members 2015-02-20 17:28:39 +03:00
Alexey Sedunov
19fc9adffa Create from usage: Support generation of Java fields from usages in Kotlin code 2015-02-20 17:28:38 +03:00
Alexey Sedunov
34d8e1c08c Create from usage: Support generation of Java methods from usages in Kotlin code 2015-02-20 17:28:37 +03:00
Alexey Sedunov
97b0f50d35 Create from usage (function/property): Suggest separate actions for extensions and non-extension declarations
#KT-6023 Fixed
2015-02-20 17:28:36 +03:00
Alexey Sedunov
41a4dd4128 Create from usage: Rename package: createFunction -> createCallable 2015-02-20 17:28:34 +03:00
Alexey Sedunov
ecd9ee45c8 Move: Do not process 'super' references
#KT-6769 Fixed
2015-02-20 17:28:33 +03:00
Alexey Tsvetkov
ae970044e2 JS: extracted ThrowExceptionReporter 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
b01aa5e0a5 JS: simplified parser exceptions 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
802a512899 JS: removed AstConsumer from tests 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
fabcfc7b7f JS: added js() diagnostics tests 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
1e7de9d5d0 JS: removed cli test for js() errors 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
180272e4cb JS: underline js() errors for non-string-literal constants 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
1087ae4779 JS: use ConstantEvaluator at CallExpressionTranslator 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
4f992eeeb4 JS: report right end of js() error 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
05ef358177 JS: check js() call at frontend 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
f5eb39e1f1 JS: added TranslationResult 2015-02-20 16:01:26 +03:00
Alexey Tsvetkov
aa5f237154 JS: use one BindingTrace for translation 2015-02-20 16:01:25 +03:00
Alexey Tsvetkov
baccfa914f JS: removed unused rhino error reporter method 2015-02-20 16:01:25 +03:00
Alexey Tsvetkov
b431bf6fc9 JS: made JsCodeErrorReporter class static 2015-02-20 16:01:25 +03:00
Alexey Tsvetkov
200e3afbe1 JS: moved PatternBuilder to JS frontend 2015-02-20 16:01:25 +03:00
Alexey Tsvetkov
f9648c6f21 Minor in JS: renamed file according to class name 2015-02-20 16:01:25 +03:00
Alexey Tsvetkov
33f6759966 Minor in JS: updated copyrights 2015-02-20 16:01:25 +03:00
Pavel V. Talanov
9cf3a11efc Add quick fixes for newly introduced diagnostics 2015-02-20 14:47:37 +03:00
Pavel V. Talanov
ca3096a948 Prohibit inner classes in objects
Using inner classes in objects makes little sense since objects have single static instance
2015-02-20 14:47:37 +03:00
Pavel V. Talanov
460c1e328f Improve error message for inner class in trait 2015-02-20 14:47:36 +03:00
Pavel V. Talanov
2053da91dd Fix EXPRESSION_TYPE target for QualifierReceiver
Affected completion from objects in some cases
2015-02-20 14:47:36 +03:00
Alexey Tsvetkov
8bc6ce0f0a Minor. Added object file template 2015-02-20 13:43:03 +03:00
Michael Bogdanov
37006ad566 Annotate additional files through bytecode toolwindow analysis 2015-02-20 10:16:22 +03:00
Michael Nedzelsky
ab29c59210 CompileTimeConstantUtils.isArrayCall: use full fqName instead of argument of Intrinsic annotation 2015-02-20 02:33:38 +03:00
Michael Nedzelsky
608b603f58 serialization of compile time constant: add support for expressions <const>: <type> 2015-02-20 02:33:35 +03:00
Michael Nedzelsky
5889112a94 add test for compile time constants without expicit type 2015-02-20 02:33:32 +03:00
Michael Nedzelsky
fac2e38054 Do not serizalize null as compile time constant 2015-02-20 02:33:30 +03:00
Michael Nedzelsky
ead3a1dc65 fix getting compile time initializer before computing deferred type 2015-02-20 02:33:27 +03:00
Dmitry Jemerov
a030585566 EA-64906 - NPE: KdocPackage$KDocReference$c.getParamDescriptors 2015-02-19 14:01:00 +01:00
Dmitry Jemerov
ce4b2db8f6 vendor and homepage 2015-02-19 15:35:46 +03:00
Dmitry Jemerov
8130b98862 correct vendor and homepage in plugin.xml 2015-02-19 15:35:46 +03:00
Valentin Kipyatkov
a0b96231d3 Fixed assertion in internal action 2015-02-19 14:44:38 +03:00
Svetlana Isakova
204e9a0c34 KT-6751 References to type arguments of a type argument not resolved when wrong number of them
#KT-6751 Fixed
2015-02-19 14:43:18 +03:00
Nikolay Krasko
f1774bd6fb Fixed test data according to fixed bug in IDEA JPS. 2015-02-19 14:36:23 +03:00
Valentin Kipyatkov
c9a05aac0f Minor changes after review 2015-02-19 14:11:16 +03:00
Valentin Kipyatkov
67027e2a2d Minor 2015-02-19 11:07:03 +03:00
Valentin Kipyatkov
660ac8d63c Fixed bug 2015-02-19 11:07:03 +03:00
Valentin Kipyatkov
a137503ee9 More sophisticated import setting supported: *-import when more than N names used (default set to 5) 2015-02-19 11:07:03 +03:00
Valentin Kipyatkov
c58536f1d9 Optimize imports: fixed bug with references in class declaration header 2015-02-19 11:07:03 +03:00
Valentin Kipyatkov
84027124db Made code more clear 2015-02-19 11:07:03 +03:00
Valentin Kipyatkov
5c904b6a94 Fixed keeping of folded state for imports on optimize 2015-02-19 11:07:03 +03:00
Valentin Kipyatkov
480ddcb20e Minor 2015-02-19 11:07:03 +03:00
Valentin Kipyatkov
d60145d3e8 Optimize imports: references via aliases are treated correctly 2015-02-19 11:07:03 +03:00
Valentin Kipyatkov
8c034d4ac7 New optimize imports algorithm supports *-imports code style 2015-02-19 11:07:02 +03:00
Valentin Kipyatkov
2e3ed6b66f Refactored AbstractOptimizeImportsTest to inherit from AbstractImportsTest 2015-02-19 11:07:02 +03:00
Valentin Kipyatkov
03f7c265d7 Initial implementation of new optimize imports algorithm 2015-02-19 11:07:02 +03:00
Valentin Kipyatkov
63182a53c6 Fixed getFileTopLevelScope implementation 2015-02-19 11:07:02 +03:00
Valentin Kipyatkov
0a363fc371 Import is placed in some specific order on adding 2015-02-19 11:07:02 +03:00
Valentin Kipyatkov
371e0baed1 Dropped methods not used anymore 2015-02-19 11:07:02 +03:00
Valentin Kipyatkov
7ad1933695 Dropped obsolete tests 2015-02-19 11:07:01 +03:00
Valentin Kipyatkov
20cf100714 Shorten references inserts imports for global functions and properties too 2015-02-19 11:07:01 +03:00
Michael Bogdanov
664e2781e8 Enable inline in bytecode toolwindow by default 2015-02-19 10:32:04 +03:00
Michael Bogdanov
758c147835 Analyze inlined declarations in bytecode toolwindow 2015-02-19 10:32:00 +03:00
Pavel V. Talanov
5c9554e703 Minor: remove redundant class object 2015-02-18 19:34:02 +03:00
Pavel V. Talanov
d6a942a574 Remove all deprecated OBJECT$ usages from project code 2015-02-18 19:33:56 +03:00
Evgeny Gerashchenko
48a6fb37f9 Worked around private method. There should be API available, anyway. 2015-02-18 18:53:37 +03:00
Alexey Sedunov
f1b3bb6ae7 Join Lines: Fix test data since IDEA now converts single-line comments to block ones when joining lines 2015-02-18 18:53:36 +03:00
Zalim Bashorov
2a593fc437 IDEA: fixed breakpoints in JavaScript debugger. 2015-02-18 18:53:34 +03:00
Nikolay Krasko
fd616a3c8d Update to IDEA 140.2493.5 2015-02-18 18:53:21 +03:00
Evgeny Gerashchenko
460a77275a Added tests with conversion between Java and Kotlin and moving class. 2015-02-18 18:51:59 +03:00
Nikolay Krasko
07d58b55eb Synchronize KotlinJavaPsiFacade with JavaPsiFacadeImpl 2015-02-18 18:51:58 +03:00
Evgeny Gerashchenko
f870388962 Fixed compilation error for IDEA 14.1+ (140 branch) 2015-02-18 18:51:58 +03:00
Alexander Udalov
042230fefc Using factory method instead of deprecated constructor. 2015-02-18 18:51:57 +03:00
Nikolay Krasko
45a3b47664 Fix compilation once again 2015-02-18 18:51:56 +03:00
Nikolay Krasko
440cc20ed9 Add expected action 2015-02-18 18:51:56 +03:00
Nikolay Krasko
20b7a55bf2 Add overrides in order to fix compilation errors 2015-02-18 18:51:55 +03:00
Nikolay Krasko
a49a206de3 Get containing file from original method 2015-02-18 18:51:54 +03:00
Nikolay Krasko
3ec591a6d6 Manually register extension points 2015-02-18 18:51:54 +03:00
Nikolay Krasko
5d3d446ea4 Now PsiElementFinderImpl is registered via extension but it hadn't been added to JavaCoreProjectEnvironment 2015-02-18 18:51:53 +03:00
Alexey Kudravtsev
28b7d71ab7 Registering extension points manually in JetCoreEnvironment. They are not registered by IDEA's core environment code anymore. 2015-02-18 18:51:52 +03:00
Natalia Ukhorskaya
43249e928c Fix tests with annotations: enum constants are now resolved as constants in JavaConstantExpressionEvaluator 2015-02-18 18:51:52 +03:00
Natalia Ukhorskaya
601a33f772 Fix stepping test's testData 2015-02-18 18:51:51 +03:00
Evgeny Gerashchenko
f9f75f1155 Fixed compilation error (IDEA API changed). 2015-02-18 18:51:50 +03:00
Evgeny Gerashchenko
f09fd923f3 Fixed test data according to fixed bug in IDEA JPS. 2015-02-18 18:51:50 +03:00
Evgeny Gerashchenko
501cb08154 Fixed compilation (IDEA API changed). 2015-02-18 18:51:49 +03:00
Evgeny Gerashchenko
1c1ead0471 Minor. Fixed case of test data file. 2015-02-18 14:26:20 +03:00
Evgeny Gerashchenko
a8179a497e KT-5146 "Remove explicit type arguments" should highlight type arguments as unused (not as warning)
#KT-5146 fixed
2015-02-18 13:37:36 +03:00
Evgeny Gerashchenko
b1840ebd99 Suppressing unused parameter annotation when function is entry point. 2015-02-18 13:37:36 +03:00
Evgeny Gerashchenko
943131b7b0 Added button to configure annotations for methods which shouldn't be marked as unused. 2015-02-18 13:37:35 +03:00
Evgeny Gerashchenko
4ddaa5cdda Filtering out non-existent directories from generated classpath. The check is so simple, because there may be, e.g. non-existent production output directory for just created module.
#KT-6703 fixed
2015-02-18 13:37:35 +03:00
Evgeny Gerashchenko
7e9ea23ce0 Minor. Clarified property name. 2015-02-18 13:37:34 +03:00
Evgeny Gerashchenko
d1a2fd9c66 KT-6586 accessing Kotlin class static class object variable's value from Java does not properly update between compiles
#KT-6586 fixed
2015-02-18 13:37:34 +03:00
Alexander Udalov
15a3496dbd Gradle plugin tests: change kotlin-stdlib dependency scope to compile
This way is advertised in the docs anyway. Otherwise J+K projects do not
compile, see 640adec for the explanation
2015-02-18 11:43:50 +03:00
Andrey Breslav
2dcae465f7 Work around the redirect problem on SourceForge 2015-02-17 19:28:11 +03:00
Andrey Breslav
ab93b530f1 Don't use annotations after nullability was forced upon a platform type
#KT-6762 Fixed
 #KT-6763 Fixed
2015-02-17 18:44:46 +03:00
Alexander Udalov
0217121814 Revert "Fixed compilation. Some class files generated by kotlinc may have no annotation (that should be fixed later)."
This reverts commit 4b6112d380.

This workaround is not needed anymore after the fix in e705ff2
2015-02-17 15:32:46 +03:00
Alexander Udalov
a960d2d785 Fix "No descriptor for enum entry" exception
EA-52557, EA-64887
2015-02-17 15:31:45 +03:00
Alexander Udalov
640adecde6 Fix KotlinJpsBuildTest, run J+K tests with runtime
Otherwise javac is not able to find class KotlinClass$Kind, which is used in
annotation argument and for some reason this leads to an exception (in javac)
which gets swallowed and unresolved reference is reported in Java code.

java:INFO:com.sun.tools.javac.code.Symbol$CompletionFailure: class file for
kotlin.jvm.internal.KotlinClass$Kind not found
java:INFO:Errors occurred while compiling module 'm1'
2015-02-16 21:46:23 +03:00
Alexander Udalov
e705ff2517 Write KotlinSyntheticClass annotation on when-by-enum mapping classes 2015-02-16 21:46:22 +03:00
Alexander Udalov
6ce8d6bd2e Serialize descriptors for local/anonymous classes on JVM
Reflection needs this information to work for local classes and anonymous
objects
2015-02-16 21:46:21 +03:00
Alexander Udalov
98b554d995 Fix path to runtime when building kotlin-ant.jar
${kotlin-home}/lib/kotlin-runtime.jar is the newly built runtime, which is not
compiled yet when invoking a clean "ant dist"
2015-02-16 20:19:54 +03:00
Alexander Udalov
0d05fca838 Support serialization/deserialization of local classes
Most of these changes are aimed to support and correctly transform ClassId for
local classes, no actual bytes are written or read at the moment (see next
commits). See the comment on ClassId for clarification.

A hack in DescriptorSerializer which erased anonymous types to Any (which had
been breaking the consistency between descriptors resolved from sources and
from serialized information) is now gone
2015-02-16 20:19:54 +03:00
Alexander Udalov
add9bb34cb Refactor ReadKotlinClassHeaderAnnotationVisitor
Extract a hierarchy of four nested classes instead of anonymous
2015-02-16 20:19:53 +03:00
Alexander Udalov
5d8ae3ed6a Minor, refactor some constants in JvmAnnotationNames
Declare KotlinClass similarly to KotlinSyntheticClass, this will be used later
2015-02-16 20:19:52 +03:00
Alexander Udalov
fdfe3fd73b Minor, serialize/deserialize local visibility
Also support non-subsequent enum values in Flags
2015-02-16 20:19:51 +03:00
Alexander Udalov
cd9898fc43 Minor, rename and invert meaning of ClassId.isTopLevelClass
Also use a simpler constructor and simplify ClassDeserializer.ClassKey
2015-02-16 20:19:50 +03:00
Alexander Udalov
e812c4e67f Introduce KotlinSyntheticClass.Kind.LOCAL_TRAIT_IMPL 2015-02-16 20:19:50 +03:00
Alexander Udalov
ce26ce0458 Drop "extra visibility" from binary format
Descriptors of Kotlin symbols should always have a visibility known to Kotlin
2015-02-16 20:19:49 +03:00
Alexander Udalov
1609bbcd10 Minor, add FQ name to avoid clash
Maven build compiles runtime.jvm and reflection.jvm together and
IllegalAccessException is ambiguous between java.lang and kotlin.reflect
2015-02-16 20:19:48 +03:00
Alexander Udalov
45fec9257a Minor, move replaceHashWithStar to JetTestUtils 2015-02-16 20:19:48 +03:00
Alexander Udalov
37da154ea2 Minor, move builtins serializer test data 2015-02-16 20:19:47 +03:00
Alexander Udalov
c3909ebbd7 Minor, update outdated comment 2015-02-16 20:19:46 +03:00
Alexander Udalov
245b16dccc Drop unneeded factory methods due to ABI version increase
Either ReflectionFactory or direct creation is now used instead
2015-02-16 20:19:14 +03:00
Alexander Udalov
17c930c84f Use abstract factory for reflection objects on JVM
Introduce an abstract factory class ReflectionFactory which is responsible for creating
reflection objects (KClass, KProperty, ...). The meaningful implementation is
located in "reflection.jvm" where KClassImpl/KPropertyImpl/... are accessible
and can be instantiated. The default implementation will be used in the lite
runtime with no reflection and will return nulls / throw exceptions there.

Put all functions, calls to which are generated by JVM back-end, in one place:
the class named Reflection which contains only static methods. Previously these
functions were scattered across different files in module "reflection.jvm".

The code using reflection may now be compiled against either runtime, but
reflection features will work if and only if reflection is accessible at
runtime
2015-02-16 20:19:13 +03:00
Alexander Udalov
1e50078f6f Delete dependency of 'serialization' on trove4j
Use HashMap of wrapped objects instead of THashMap with custom hashing strategy
2015-02-16 20:19:12 +03:00
nbilyk
121ada0cab JS lib: added missed arguments to Blob constructor.
#KT-6654 Fixed
2015-02-16 19:17:10 +03:00
nbilyk
6afe64dd14 JS lib: added canvas attributes parameter to HTMLCanvasElement::getContext 2015-02-16 19:17:10 +03:00
nbilyk
f4411773c3 JS lib: added missed fields naturalWidth and naturalHeight to HTMLImageElement. 2015-02-16 19:17:10 +03:00
Andrey Breslav
54483dbb95 KT-6118 Redundant type cast can be not redundant?
#KT-6118 Fixed
2015-02-16 18:50:10 +03:00
Andrey Breslav
47f772e75a Assert no lookup in meaningless scope created by commonSupertype() 2015-02-16 18:50:10 +03:00
Andrey Breslav
c61a29d4f5 KT-6774 Cannot find equals() when comparing with null
#KT-6774 Fixed
2015-02-16 18:50:09 +03:00
Andrey Breslav
99b049af20 Minor. Typo fixed 2015-02-16 18:50:09 +03:00
Pavel V. Talanov
df90f16492 Increase stub version 2015-02-16 15:38:49 +03:00
Pavel V. Talanov
32aff01969 Increase abi version 2015-02-16 15:38:48 +03:00
Pavel V. Talanov
1e772e3d1a KDoc: remove visitClassObject override 2015-02-16 15:38:48 +03:00
Pavel V. Talanov
9e48631ccb Minor: Remove redundant implementation getDefaultObjectDescriptor() in missingDependencies.kt 2015-02-16 15:38:47 +03:00
Pavel V. Talanov
1174010f33 JS backend: support named class objects
Temporary solution until named objects in classes are supported in js backend
2015-02-16 15:38:47 +03:00
Pavel V. Talanov
f0003449e5 Test named class object reference resolve 2015-02-16 15:38:46 +03:00
Pavel V. Talanov
96e54b4872 Test accessing class object from java 2015-02-16 15:38:45 +03:00
Pavel V. Talanov
ed5e2a21d1 Restore some of the tests for deprecated OBJECT$ field 2015-02-16 15:38:45 +03:00
Pavel V. Talanov
2d59791cf2 Improve LazyClassDescriptor#getDefaultObjectDescriptor()
To cover the case when default object's name is not unique (redeclaration)
(Calling getClassifier is wrong for this case)
2015-02-16 15:38:44 +03:00
Pavel V. Talanov
b6b83a4683 Minor: Add validation for ClassDescriptor#getDefaultObjectDescriptor() new contract 2015-02-16 15:38:44 +03:00
Pavel V. Talanov
766912c590 Generate additional deprecated "OBJECT$" field for class object
To avoid breaking some code for now
It should be removed later
2015-02-16 15:38:43 +03:00
Pavel V. Talanov
7d5c0dc8bf Refactor: ImplementationBodyCodegen#generateFieldForSingleton() 2015-02-16 15:38:43 +03:00
Pavel V. Talanov
f482768acf Introduce ClassDescriptor#getDefaultObjectDescriptor()
ClassDescriptor#getClassObjectDescriptor (with old semantics) is now a utility
Process usages and replace with calls to a new method where appropriate
2015-02-16 15:38:42 +03:00
Pavel V. Talanov
945072a129 Drop DeserializedResolverUtils and it's usages 2015-02-16 15:38:41 +03:00
Pavel V. Talanov
11ed783e1e Refactor: get rid of MemberFqNameProvider 2015-02-16 15:38:41 +03:00
Pavel V. Talanov
d52d1035d0 Fix newly introduced NPE in UnusedSymbolInspection
getName() and getNameIdentifier() are not in sync for class objects
2015-02-16 15:38:40 +03:00
Pavel V. Talanov
1adf15d01d Update test data for j2k converter tests 2015-02-16 15:38:40 +03:00
Pavel V. Talanov
d689c11848 Update test for class object completion 2015-02-16 15:38:39 +03:00
Pavel V. Talanov
2b0e823695 Improve test for deprecated class object 2015-02-16 15:38:38 +03:00
Pavel V. Talanov
514a551c04 Update diagnostics test for many class objects 2015-02-16 15:38:38 +03:00
Pavel V. Talanov
0ea69dea95 Update duplicate jvm signature test for class objects 2015-02-16 15:38:37 +03:00
Pavel V. Talanov
1972c2f177 Update test data for various tests
Due to slight semantic changes after class object refactor
2015-02-16 15:38:37 +03:00
Pavel V. Talanov
7b837e2631 Updata test data: txt files for diagnostics tests 2015-02-16 15:38:36 +03:00
Pavel V. Talanov
75f55dd99a Update test data that mentioned old <class-object-for-..> name 2015-02-16 15:38:35 +03:00
Pavel V. Talanov
35b88fb1a5 Update test data for write flags test 2015-02-16 15:38:34 +03:00
Pavel V. Talanov
a1f4c06a49 Update test data that mentioned old JvmAbi constants 2015-02-16 15:38:34 +03:00
Pavel V. Talanov
be5f00ad1c Update test data for various stub tests 2015-02-16 15:38:33 +03:00
Pavel V. Talanov
e4b206726d Minor: slightly improve positioning strategy for redeclaration on class object 2015-02-16 15:38:32 +03:00
Pavel V. Talanov
4132946be2 Minor: Override getTextOffset() in JetObjectDeclaration
Availability of some intentions depends on this
2015-02-16 15:38:32 +03:00
Pavel V. Talanov
d9d3f68a39 Drop JetClassObject element and its usages
as class objects are now represented by JetObjectDeclaration element
2015-02-16 15:38:31 +03:00
Pavel V. Talanov
be7f5d01bb Update JetObjectDeclaration after parser changes to parser 2015-02-16 15:38:31 +03:00
Pavel V. Talanov
f1942b1a74 Parser: do not produce CLASS_OBJECT element
"class object" is parsed into OBJECT_DECLARATION instead
2015-02-16 15:38:30 +03:00
Pavel V. Talanov
42d2b97c09 Remove all class object related constants and utils from JvmAbi 2015-02-16 15:38:30 +03:00
Pavel V. Talanov
894c3bceac Test: add jvm backend test for named class object 2015-02-16 15:38:29 +03:00
Pavel V. Talanov
72f94963ab Tests: add resolve test for named class object 2015-02-16 15:38:28 +03:00
Pavel V. Talanov
2e837c6586 Parser: allow names to be specified for class objects 2015-02-16 15:38:28 +03:00
Pavel V. Talanov
c29ba63a74 Minor: Simplify getClassObjectType() 2015-02-16 15:38:27 +03:00
Pavel V. Talanov
0343fd8fc7 Rework class objects
Class objects have name "Default" by default
Do not produce synthetic class objects
Class objects have new semantics:
    class "A" has class object "B" if literal "A" can be used as a value of type "B"
Class objects act like ordinary nested objects
    i.e. are accessible from class scope via getClassifier()
Jvm backend: class object fields and class have the name of class object ("Default")
	as opposed to special "OBJECT$" and "object"
Serialization: only the name of class object is needed to serialize data
2015-02-16 15:38:27 +03:00
Evgeny Gerashchenko
4b6112d380 Fixed compilation. Some class files generated by kotlinc may have no annotation (that should be fixed later). 2015-02-16 15:34:35 +03:00
Evgeny Gerashchenko
dd89311d22 Not reading class file three times incremental caches. 2015-02-13 21:51:51 +03:00
Evgeny Gerashchenko
3c410aab5b Updated source roots of idea libraries. 2015-02-13 21:51:51 +03:00
Evgeny Gerashchenko
7ed36f08e6 Moved cli-common before idea-full. cli-common exports dependency on cli-parser library of version different from packaged in idea-full. 2015-02-13 21:51:51 +03:00
Evgeny Gerashchenko
9f159b1fea Extracted cli-parser to separate library. Removed full dependency jps-plugin -> idea-full. 2015-02-13 21:51:50 +03:00
Evgeny Gerashchenko
1f10cbb0d5 Moved constant to idea module and removed redundant dependency. 2015-02-13 21:51:50 +03:00
Evgeny Gerashchenko
1484ce4a46 Renamed and moved module ide-compiler-runner to idea-jps-common.
Motivation: it has only a bunch of constants and a trivial class needed in idea and jps modules.
2015-02-13 21:51:50 +03:00
Evgeny Gerashchenko
bca8711182 Removed redundant dependencies. 2015-02-13 21:51:50 +03:00
Evgeny Gerashchenko
6d9240c52f Minor. Simplified by subclassing from abstract class. 2015-02-13 21:51:50 +03:00
Evgeny Gerashchenko
cdf29fb2f6 Removed old migration code for incremental compilation setting. 2015-02-13 21:51:49 +03:00
Evgeny Gerashchenko
3e1b869070 Moved parts of ide-compiler-runner to direct modules. 2015-02-13 21:51:49 +03:00
Nikolay Krasko
0f3971323f Go to Declaration does not work on usage of constant from class object in Java (KT-6172)
#KT-6172 Fixed
2015-02-13 20:28:51 +03:00
Nikolay Krasko
56c2870ac6 Refactoring: make parameters not-null 2015-02-13 20:28:50 +03:00
Nikolay Krasko
52f1c4048a More test for conflicting declarations with delegation 2015-02-13 20:28:50 +03:00
Zalim Bashorov
a851c406b4 Minor: specify maxmemory for new-kotlinc explicitly to avoid run VM with default values which sometimes leads to fail build. 2015-02-13 19:07:51 +03:00
Zalim Bashorov
905ce426c7 IDEA: don't try to create run configuration by JUnit and TestNG producers for Kotlin JS modules. 2015-02-13 19:03:01 +03:00
Evgeny Gerashchenko
4704941488 Worked around yet another case of exception from inspection when code has "native" annotation.
#KT-6764 fixed
2015-02-13 18:10:54 +03:00
Valentin Kipyatkov
d579e4906b Minor changes after code review 2015-02-12 19:47:25 +03:00
Valentin Kipyatkov
dd0664939c Commented out 3 tests to be fixed later 2015-02-12 19:47:11 +03:00
Valentin Kipyatkov
ce26437cd0 Corrected test data because it will be fixed by KT-6545 2015-02-12 18:18:07 +03:00
Valentin Kipyatkov
d2f11cdc05 Fixed test data which was incorrect (no nested classes inside inner class allowed!) 2015-02-12 18:18:06 +03:00
Valentin Kipyatkov
3710d4105c Do not shorten too much 2015-02-12 18:18:06 +03:00
Valentin Kipyatkov
78d927c3c3 Added TODO 2015-02-12 18:18:06 +03:00
Valentin Kipyatkov
49e6b97752 Fixed important bug in reference shortening 2015-02-12 18:18:05 +03:00
Valentin Kipyatkov
6acba00599 Working on new imports insertion on copy/paste 2015-02-12 18:18:05 +03:00
Valentin Kipyatkov
4031357ae4 Dropped class object 2015-02-12 18:18:05 +03:00
Valentin Kipyatkov
2e275e7624 Removed useless nested object 2015-02-12 18:18:04 +03:00
Valentin Kipyatkov
25f4987299 Minor code improvements 2015-02-12 18:18:04 +03:00
Valentin Kipyatkov
b4a8be4a7e No skipping of super and this expression on copy/paste needed (probably has been copied from java version before) 2015-02-12 18:18:03 +03:00
Valentin Kipyatkov
1912f5b919 writeImportToFile removed from interface 2015-02-12 18:18:03 +03:00
Valentin Kipyatkov
2d6ed5dd42 One more usage switched to use of new import insertion method 2015-02-12 18:18:03 +03:00
Valentin Kipyatkov
2d4b1d9219 Switched to use of new import insertion API in a test (but had to use a hack!) 2015-02-12 18:18:02 +03:00
Valentin Kipyatkov
8a64f7ae84 Removed utility not needed anymore 2015-02-12 18:18:02 +03:00
Valentin Kipyatkov
b091eaa3cd Fixed KT-2483 "Add import" quick fix offers adding import to non-API class
#KT-2483 Fixed
2015-02-12 18:18:02 +03:00
Valentin Kipyatkov
546836d5dd Fixed bug with importing some of SAM-constructors and factory functions
#KT-3449 Fixed
2015-02-12 18:18:01 +03:00
Valentin Kipyatkov
2c5953dbe6 Dropped confusing method signature 2015-02-12 17:34:51 +03:00
Valentin Kipyatkov
e57799ca00 KT-3521 Import suggestions icons are always classes
#KT-3521 Fixed
2015-02-12 17:34:51 +03:00
Valentin Kipyatkov
8f7cf38e67 Switched to use of new method for import insertion 2015-02-12 17:34:51 +03:00
Valentin Kipyatkov
20c62a2835 *-imports inserted by default in non-test mode 2015-02-12 17:34:50 +03:00
Valentin Kipyatkov
4fff1f44bb Fixed bug in import insertion: it did not work with descriptors taken before modifications 2015-02-12 17:34:50 +03:00
Natalia Ukhorskaya
7a4b291c85 Debugger: implement compiling evaluator 2015-02-12 12:16:48 +03:00
Natalia Ukhorskaya
91e745704a Debugger: temporary copy some utils functions from idea 2015-02-12 12:16:47 +03:00
Natalia Ukhorskaya
3864f182da Debugger: return void value for empty code fragment 2015-02-12 12:16:46 +03:00
Natalia Ukhorskaya
187806d061 Debugger: remove usage of JDIEval during finding local variable in frame because it invokeMethod (loadClass) for find field type which invalidates frame 2015-02-12 12:16:46 +03:00
Natalia Ukhorskaya
3802957c15 Debugger: add tests for accessing outer class members from lambda inside inner class 2015-02-12 12:16:45 +03:00
Evgeny Gerashchenko
d3d30106a4 Corrected updating Java mappings for package facade classes. We report all source files for it, not only currently compiled. 2015-02-11 19:19:55 +03:00
Evgeny Gerashchenko
1a486bf969 Reverted wrong test data for tests where files are added to package. Let them fail. 2015-02-11 19:19:55 +03:00
Evgeny Gerashchenko
02faa02a35 Checking Java mappings after rebuild (failing now for partially compiled package facades) 2015-02-11 19:19:55 +03:00
Alexander Udalov
29c501e813 Remove useless InjectorForLazyResolveWithJavaUtil, move methods to LazyResolveTestUtil 2015-02-11 18:37:13 +03:00
Alexander Udalov
9f74d64d03 Avoid using FQNAME_TO_CLASS_DESCRIPTOR slice where module exists 2015-02-11 18:37:13 +03:00
Alexander Udalov
25775ee516 Drop TraceBasedJavaResolverCache, inline into LazyResolveBasedCache 2015-02-11 18:37:12 +03:00
Alexander Udalov
021315f049 Minor, make ModuleDescriptor public in injectors
It's much more convenient to call injector.getModule() than
injector.getResolveSession().getModuleDescriptor()
2015-02-11 18:37:12 +03:00
Alexander Udalov
5dcf9df6ab Drop InjectorForJavaDescriptorResolver and dependencies
Use InjectorForLazyResolveWithJava instead, it does essentially the same
2015-02-11 18:37:11 +03:00
Alexander Udalov
745ac7355b Simplify ResolveSessionUtils and LazyResolveBasedCache 2015-02-11 18:37:11 +03:00
Alexander Udalov
1e8d8d0a99 Cleanup FqNamesUtil.kt
Delete unused, move some utilities to fqNameUtil.kt in IDE, rewrite comments
2015-02-11 18:37:11 +03:00
Alexander Udalov
9b28e19551 Use CodegenContext to determine outer class & enclosing method 2015-02-11 18:10:49 +03:00
Alexander Udalov
c417d984c4 Minor, move tests under common directory 2015-02-11 18:10:46 +03:00
Alexander Udalov
32c371dd41 Minor, uncomment previously failing checks
#KT-5092 Fixed
2015-02-11 18:10:44 +03:00
Alexander Udalov
22e5efc7cd Remove useless parameter of FunctionCodegen.generateDefault
JvmMethodSignature can now be perfectly obtained by JetTypeMapper.mapSignature
2015-02-11 18:10:43 +03:00
Alexander Udalov
f4d4fc042b Remove useless parameter of FunctionCodegen.generateMethod
JvmMethodSignature can now be perfectly obtained by JetTypeMapper.mapSignature
2015-02-11 18:10:42 +03:00
Alexander Udalov
e7a744b315 Make JetTypeMapper aware of SAM constructor arguments
This obsoletes 'replaceName' workaround that was present in ClosureCodegen but
missing in other crucial call sites of mapSignature, e.g. generation of
EnclosingMethod info

 #KT-6691 Fixed
2015-02-11 18:10:41 +03:00
Alexander Udalov
ca2cfb9859 Refactor SAM constructor invocation in JVM codegen
Compute all necessary info in CodegenAnnotatingVisitor and save to trace to be
read by ExpressionCodegen later
2015-02-11 18:10:39 +03:00
Alexander Udalov
c84486f860 Refactor CodegenContext and subclasses
Drop unused methods, inline parameters, fix warnings, etc.
2015-02-11 18:10:38 +03:00
Alexander Udalov
6ee4c70f2f Minor, extract OuterClassInfo 2015-02-11 18:10:37 +03:00
Alexander Udalov
61a27da8d5 Move and simplify AsmUtil.writeOuterClassAndEnclosingMethod 2015-02-11 18:10:36 +03:00
Alexander Udalov
a280599969 Fix wrong checkcast for === on objects
#KT-6747 Fixed
2015-02-11 18:10:35 +03:00
Alexander Udalov
37ec103d6a Regenerate tests 2015-02-11 18:10:33 +03:00
Evgeny Gerashchenko
145bd077fc Merge pull request #570 from JetBrains/rr/yole/generate-more-stdlib
Replace some manually duplicated stdlib method implementations with generated code
2015-02-11 17:26:30 +04:00
Alexey Sedunov
3614a0a3de Quickfix Test (multifile): Check changes in extra files 2015-02-11 14:45:15 +03:00
Alexey Sedunov
e75bd1b41b Create from usage: Support extension members for Java classes 2015-02-11 14:45:14 +03:00
Alexey Sedunov
9f3ba50dc5 Extract function: Do not report conflicts for fake overrides/delegates of the same callable declaration 2015-02-11 14:45:12 +03:00
Alexey Sedunov
cef9996ba7 Intentions: Convert extension receiver to parameter and vice versa 2015-02-11 14:40:28 +03:00
Alexey Sedunov
7b6160b92f Change Signature: Make JetChangeSignatureData read-only and use JetDelegatingMethodDescriptor for refactoring configuration 2015-02-11 14:40:27 +03:00
Alexey Sedunov
fecfc93e63 Change Signature: Support conversion between extension and non-extension functions (UI) 2015-02-11 14:40:27 +03:00
Alexey Sedunov
96866a108f Change Signature: Support conversion between extension and non-extension functions 2015-02-11 14:40:26 +03:00
Alexey Sedunov
b31da56e09 Shorten References: Introduce shortening options 2015-02-11 14:40:25 +03:00
Alexey Sedunov
8928c0282a Minor: Generalize visitor type of JetElement.acceptChildren() 2015-02-11 14:40:24 +03:00
Alexey Sedunov
e68481557e Shorten References: Support 'this' simplification 2015-02-11 14:40:22 +03:00
Alexey Sedunov
3a7ae4303a Change Signature: Translate JetParameterUsage to Kotlin 2015-02-11 14:40:21 +03:00
Alexey Sedunov
a406068aa1 Change Signature: Rename JetParameterUsage.java to .kt to keep history 2015-02-11 14:40:20 +03:00
Dmitry Jemerov
2963aea6b9 doc review 2015-02-11 12:38:07 +01:00
Dmitry Jemerov
ff49310b7e remove redundant filter() 2015-02-11 12:28:23 +01:00
Dmitry Jemerov
fe704d6042 More standard library documentation updates. 2015-02-10 19:44:17 +01:00
Alexander Udalov
63959c2ebf Drop temporary workaround, problem is fixed now 2015-02-10 16:32:47 +03:00
Alexander Udalov
cd6d04b3ba Fix incompleteHierarchyInJava test on Windows
Normalize path delimiters to '/' via CliBaseTest
2015-02-10 16:31:58 +03:00
Dmitry Jemerov
4352023d60 generate more methods and properties in the standard library 2015-02-10 14:31:20 +01:00
Valentin Kipyatkov
b03b96f202 Fixed optimization in IterableTypesDetector which did not work from the beginning + make it work on FuzzyType 2015-02-10 16:13:51 +03:00
Valentin Kipyatkov
b2275ae424 Better equals in FuzzyType + do not need to treat not used parameters as free 2015-02-10 16:13:51 +03:00
Valentin Kipyatkov
3c573d555a Smart completion: heuristic parameter types for some methods like Collection.contains() 2015-02-10 16:13:51 +03:00
Valentin Kipyatkov
3b6b9a45e2 Refactored code to avoid code duplication 2015-02-10 16:13:51 +03:00
Valentin Kipyatkov
6d06436c34 KT-6376 Smart completion should work after "in" and "!in"
#KT-6376 Fixed
2015-02-10 16:13:50 +03:00
Valentin Kipyatkov
8f688ab7b7 Renamed 2015-02-10 16:13:50 +03:00
Valentin Kipyatkov
eae244c308 Grouped test data for smart completion by folders 2015-02-10 16:13:50 +03:00
Valentin Kipyatkov
fb7cd623ae Moves and renames 2015-02-10 16:13:50 +03:00
Valentin Kipyatkov
a32029f1fc Smart completion for for loop range to use loop variable type if defined 2015-02-10 16:13:50 +03:00
Valentin Kipyatkov
f057445f6e KT-5035 Smart completion should work after "in" keyword in for loop
#KT-5035 Fixed
2015-02-10 16:13:50 +03:00
Evgeny Gerashchenko
86debfecf2 Merge pull request #561 from artem-zinnatullin/readme-building-section-jdk
Added info about JDK 1.6 into "Building" section of ReadMe.md
2015-02-10 17:13:19 +04:00
Andrey Breslav
0b41136c7c Minor. Logic clarified 2015-02-10 06:55:49 +01:00
Andrey Breslav
fcb6055913 SenselessComparisonChecker used for @NotNull values from Java 2015-02-10 06:55:49 +01:00
Andrey Breslav
d31b9be5fb SenselessComparisonChecker extracted 2015-02-10 06:55:49 +01:00
Andrey Breslav
f36d6ce5b2 Reporting USELESS_ELVIS and UNNECESSARY_NOT_NULL_ASSERTION on Java's @NotNull values 2015-02-10 06:55:48 +01:00
Andrey Breslav
30f5c1b953 Reporting unnecessary safe calls on Java's @NotNull values 2015-02-10 06:55:48 +01:00
Andrey Breslav
1d4109aec1 Retaining annotations on Java array types 2015-02-10 06:55:48 +01:00
Andrey Breslav
fc3cd20456 Minor. Formatting fixed 2015-02-10 06:55:47 +01:00
Andrey Breslav
fcac449c70 Nullability-related warnings for receivers
#KT-6723 In Progress
2015-02-10 06:55:47 +01:00
Andrey Breslav
5db6bb04e3 Basic Java nullability warnings implemented
#KT-6723 In Progress
2015-02-10 06:55:47 +01:00
Andrey Breslav
29d24374d6 Type approximation factored out as an additional checker 2015-02-10 06:55:47 +01:00
Andrey Breslav
a35c6b1566 AdditionalTypeCheckers introduced to factor out approximation logic later 2015-02-10 06:55:46 +01:00
Andrey Breslav
82ace2b251 ResolutionContext used always for checkType() 2015-02-10 06:55:46 +01:00
Andrey Breslav
0e972acf8c == turned into a safe-call 2015-02-10 06:55:46 +01:00
Alexander Udalov
560b2346a6 Fix ScriptTest, use full JDK instead of mock
Mock JDK has an incomplete hierarchy (OutputStream -> Flushable) and this is
relevant in ScriptTest because it collects all compiler output messages
2015-02-10 00:34:18 +03:00
Dmitry Jemerov
7827bbf64b Standard library documentation updates. 2015-02-09 19:19:29 +01:00
Alexander Udalov
6763d61aae Minor, fix warning, don't create empty map 2015-02-09 21:14:03 +03:00
Alexander Udalov
a6ac56ae5a Sort source files in JetCoreEnvironment
Is supposed to help make error situations more deterministic
2015-02-09 21:14:03 +03:00
Alexander Udalov
339a38b69b Minor, use module.resolveTopLevelClass() utility 2015-02-09 21:14:03 +03:00
Alexander Udalov
192e69e90b Minor, add toString() to JavaElementFinder.FindClassesRequest 2015-02-09 21:14:03 +03:00
Alexander Udalov
4128655893 Report incomplete hierarchy error
This is the case when you reference a Java class in Kotlin whose superclass is
not resolved. Previously this fact was swallowed by LazyJavaClassDescriptor
leading to mysterious compilation errors

 #KT-5129 Fixed
2015-02-09 21:14:02 +03:00
Alexander Udalov
28d8c8906a Use module instead of trace in light class search
Fixes weird and infrequent compilation errors in KotlinLightClassForPackage.kt
2015-02-09 21:14:02 +03:00
Dmitry Jemerov
246cce0502 Merge pull request #569 from yole/kdoclinkparser-npe
fix NPE in KDocLinkParser
2015-02-09 18:38:15 +01:00
Dmitry Jemerov
084470e840 fix NPE in KDocLinkParser 2015-02-09 18:21:50 +01:00
Alexander Udalov
ebed59e26a Fix temporary workaround: bridge was not generated 2015-02-09 19:23:19 +03:00
Alexey Sedunov
baaabecaf9 Shorten references: Do not process shortened elements since they become invalid (and can't be analyzed) 2015-02-09 13:02:05 +03:00
Valentin Kipyatkov
c915d2b0cd Auto-import popup uses new algorithm for import insertion 2015-02-09 13:02:04 +03:00
Valentin Kipyatkov
0967ccb1cd Filtering out nested elements for reference shortening 2015-02-09 13:02:04 +03:00
Valentin Kipyatkov
033b626a08 Fixed test data 2015-02-09 13:02:04 +03:00
Valentin Kipyatkov
78be48ace8 Minor refactoring 2015-02-09 13:02:03 +03:00
Valentin Kipyatkov
a3f546c6f9 Moved classes to other packages 2015-02-09 13:02:03 +03:00
Valentin Kipyatkov
09a99ae605 Moved import policy into ImportInsertHelper 2015-02-09 12:56:01 +03:00
Valentin Kipyatkov
952c64f947 Rewritten shortening references algorithm to work correctly with new smart import insertion 2015-02-09 12:56:01 +03:00
Valentin Kipyatkov
33ae316899 Minor 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov
33f979768d More elegant shortening of user type 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov
3bc2f89a1b Corrected test data after changes in import insertion + added when more test which fails with the current reference shortening algorithm 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov
5d516a5f72 No need to shorten non-affected references in quickfixes 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov
2fd51c30cf No redundant import optimization 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov
f62391ca1d Minor code improvements 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov
22d805aede Fixed a bug in import insertion algorithm 2015-02-09 12:55:59 +03:00
Valentin Kipyatkov
ef8be9560a Import insertion helper is not confused by inaccessible classes + check visibility of imported declarations through PackageViewDescriptor instead of PackageFragmentDescriptor 2015-02-09 12:55:59 +03:00
Valentin Kipyatkov
dfe71ef7ae Import insertion algorithm 2015-02-09 12:55:59 +03:00
Valentin Kipyatkov
975b67ed29 Minor refactoring after conversion 2015-02-09 12:55:22 +03:00
Valentin Kipyatkov
f6df6eaeea Converted to Kotlin (step 2) 2015-02-09 12:55:22 +03:00
Valentin Kipyatkov
98be4566d2 Converted to Kotlin (step 1) 2015-02-09 12:55:22 +03:00
Valentin Kipyatkov
ca2a46e42f Auto-import popup to work for ambiguous class name 2015-02-09 12:55:22 +03:00
Valentin Kipyatkov
0686629e49 Code refactoring after conversion 2015-02-09 12:55:21 +03:00
Valentin Kipyatkov
c8ecbcf088 Converted file to Kotlin (step 2) 2015-02-09 12:55:21 +03:00
Valentin Kipyatkov
b9080d41d4 Converted file to Kotlin (step 1) 2015-02-09 12:55:21 +03:00
Valentin Kipyatkov
02e63196f8 Performance optimization 2015-02-09 12:55:21 +03:00
Alexander Udalov
720942b05f Temporary workaround for compilation errors in KotlinLightClassForPackage 2015-02-09 12:41:59 +03:00
Nikolay Krasko
6f6a65cb8d Convert to LinkedHashSet 2015-02-06 23:53:17 +03:00
Nikolay Krasko
9173c59969 Fix deprecated warning 2015-02-06 23:53:16 +03:00
Nikolay Krasko
de22bfbde9 Refactoring: extract method createFakeClsFile 2015-02-06 23:53:16 +03:00
Nikolay Krasko
8dd910bd36 Convert to Kotlin KotlinLightClassForPackage: fixes for j2k converter 2015-02-06 23:53:15 +03:00
Nikolay Krasko
a4e2c3b6fa Convert to Kotlin KotlinLightClassForPackage: j2k converter 2015-02-06 23:53:14 +03:00
Nikolay Krasko
082ac7a05f Convert to Kotlin KotlinLightClassForPackage: file rename 2015-02-06 23:53:13 +03:00
Nikolay Krasko
c9c3a1c924 Get containing with deferred stub evaluation
Tested in org.jetbrains.kotlin.idea.quickfix.QuickFixMultiFileTestGenerated.CreateFromUsage.CreateVariable.Parameter#testPlatformType
Resolve of Java element triggers resolve for all classes in package in IDE. One of them is Kotlin light class for package. In case when
some declarations in that packages has references to Java class from current package, compiler goes to recursion.
2015-02-06 23:53:12 +03:00
Dmitry Jemerov
c366da95ac move KDocFinder to plugin because it's not used in compiler; wrap it in an object to avoid package facade conflicts; add test to findKDoc() and fix it so that it actually works 2015-02-06 18:13:35 +01:00
Dmitry Jemerov
fdfb843fdc add @sample known tag; handle @constructor tag in findKDoc() 2015-02-06 16:58:36 +01:00
Dmitry Jemerov
70cf3e9c60 KDoc link parsing rewrite.
Support qualified names immediately after tag (@see or @param). Detect whether a tag is followed by a reference immediately while lexing, remove TEXT_OR_LINK token type. Remove duplicate nested KDocLink nodes from the PSI structure.
2015-02-06 16:33:55 +01:00
Dmitry Jemerov
cc5edc332d inherit documentation for properties as well as functions 2015-02-06 16:32:41 +01:00
Evgeny Gerashchenko
478118c12a Extracted common function getRecompilationDecision. 2015-02-06 17:44:42 +03:00
Evgeny Gerashchenko
e5fd6bc067 Minor. Inlined trivial functions. 2015-02-06 17:44:42 +03:00
Evgeny Gerashchenko
432408e1a8 Checking source to output mapping after rebuild. 2015-02-06 17:44:41 +03:00
Evgeny Gerashchenko
c5593a5b80 Correctly processing disappeared protos, files with constants/inline function. 2015-02-06 17:44:41 +03:00
Evgeny Gerashchenko
5b89f88447 Minor. Simplified getObsoletePackageParts() and similar functions. 2015-02-06 17:44:40 +03:00
Evgeny Gerashchenko
89f3d21ba4 Clearing incremental cache for removed files without scanning output directory. 2015-02-06 17:44:40 +03:00
Evgeny Gerashchenko
602642715c Checking incremental cache dump after make. Comparing it with dump after rebuild. 2015-02-06 17:44:40 +03:00
Evgeny Gerashchenko
f071802e19 Simplified process of filtering out obsolete package parts and loading descriptors from incremental caches.
Now when file is deleted or dirty (compiled right now), its old package part is used. Current package of file doesn't matter.
2015-02-06 17:44:39 +03:00
Evgeny Gerashchenko
512ea72e69 Minor. Green code and formatting. 2015-02-06 15:56:33 +03:00
Evgeny Gerashchenko
84ca0a5b4e Minor. Green code. 2015-02-06 15:56:33 +03:00
Evgeny Gerashchenko
5663383fea Minor. Removed unused property. 2015-02-06 15:56:33 +03:00
Natalia Ukhorskaya
12cdcc6e05 Minor: fix warnings 2015-02-06 11:21:17 +03:00
Natalia Ukhorskaya
2f931f36c8 Implement extra variables for debugger 2015-02-06 11:21:17 +03:00
Natalia Ukhorskaya
3a03cb48df Debugger Tests: create context in onBreakpoint method 2015-02-06 11:21:16 +03:00
Alexey Sedunov
03e076aba3 Intentions: function <-> property conversion 2015-02-05 23:12:38 +03:00
Alexey Sedunov
15ebbdb349 Refactoring: Extract callable hierarchy logic from JetChangeSignature 2015-02-05 23:12:35 +03:00
asedunov
3ca51a516e Merge pull request #564 from JetBrains/rr/yole/kdoc-completion
completion in kdoc
2015-02-05 23:10:02 +03:00
Dmitry Jemerov
49cecc35fd completion in kdoc 2015-02-05 18:30:02 +01:00
Dmitry Jemerov
f450ff8ece quick test for unresolved reference inspection 2015-02-05 16:28:34 +01:00
Dmitry Jemerov
66887db42e highlight unresolved references in KDoc 2015-02-05 16:28:34 +01:00
Dmitry Jemerov
56d85c2033 don't parse links which aren't Kotlin identifiers and have an explicitly specified destination 2015-02-05 16:27:37 +01:00
Natalia Ukhorskaya
1ab51a08aa Optimize search of package part files for JetPositionManager 2015-02-05 16:42:23 +03:00
Natalia Ukhorskaya
360a496724 Gradle plugin: update to 1.1.0-rc1
#KT-6729 Fixed
2015-02-05 16:42:22 +03:00
Evgeny Gerashchenko
97a54e88af Merge pull request #563 from JetBrains/kdoc-render-package
as a workaround for KT-4502, wrap KDoc rendering functions in an object
2015-02-05 16:26:33 +04:00
Dmitry Jemerov
2bdb222516 as a workaround for KT-4502, wrap KDoc rendering functions in an object 2015-02-05 12:44:26 +01:00
Evgeny Gerashchenko
6eead1b1a1 Merge pull request #559 from JetBrains/rr/yole/template-context-comments
live template context type for comments in Kotlin; disable other context...
2015-02-05 12:32:45 +04:00
Artem Zinnatullin
6c1f7393b8 Added info about JDK 1.6 into "Building" section of ReadMe.md 2015-02-05 03:39:18 +03:00
Alexey Sedunov
11b60f6604 Light Classes: Delegate getUseScope() to original elements
#KT-6699 Fixed
2015-02-04 23:38:18 +03:00
Alexey Sedunov
25ef47a450 Change Signature: Do not render qualified names of parameter types by default
#KT-6725 Fixed
2015-02-04 23:38:17 +03:00
Alexey Sedunov
57763e10e0 Create from usage: make new member function/property private by default
#KT-6689 Fixed
2015-02-04 23:38:16 +03:00
Alexey Sedunov
eac735e91a Change parameter type: Make parameter type nullable (instead of Nothing?) if null is passed as an argument
#KT-6634 Fixed
2015-02-04 23:38:14 +03:00
Alexey Sedunov
1e9f95d896 Create from usage: Place caret in the declaration body/at the identifier
and select function body
 #KT-6613 Fixed
 #KT-6688 Fixed
2015-02-04 23:38:13 +03:00
Dmitry Jemerov
26dd9a8c6a test for live template context type; fix a couple of bugs in existing context types 2015-02-04 19:57:58 +01:00
Dmitry Jemerov
621276aafe live template context type for comments in Kotlin; disable other contexts inside doc comments
#KT-6735 fixed
2015-02-04 18:37:44 +01:00
Dmitry Jemerov
3253754395 code review 2015-02-04 17:26:48 +01:00
Dmitry Jemerov
c0e7d1faf2 add references to kdoc; support resolve and rename 2015-02-04 17:26:47 +01:00
Dmitry Jemerov
40f459306a parse qualified names in kdoc 2015-02-04 17:26:46 +01:00
Dmitry Jemerov
223882d292 correctly parse tag in the beginning of doc comment 2015-02-04 17:26:46 +01:00
Alexander Udalov
1c87464695 Change properties to methods in light class hierarchy
There's a Kotlin-Java-Kotlin hierarchy with an abstract property in a
superclass and its implementation (as a get-method) in the Java subclass, which
caused problems because Kotlin subclass can't have both (different symbols,
same JVM signatures)
2015-02-04 14:57:49 +03:00
Alexander Udalov
cafc1ea24d Fix resolution of inherited Kotlin properties in Java classes
#KT-6720 Fixed
2015-02-04 14:57:47 +03:00
Alexander Udalov
5170ab3588 Fix Intrinsics.sanitizeStackTrace for depth > 1 2015-02-03 21:40:40 +03:00
Alexander Udalov
5c2d0c6173 Generate not-null assertions on extension receiver parameters 2015-02-03 21:40:39 +03:00
Alexander Udalov
39c9216edc Fix shameful assertion message error introduced after extracting method 2015-02-03 21:20:25 +03:00
Evgeny Gerashchenko
0d0222e1aa Expanded workaround for EA-64030 (IDEA doesn't allow keywords in cls annotations). 2015-02-03 17:31:25 +03:00
Dmitry Jemerov
71dbe671fa rename tag value to link 2015-02-03 13:24:58 +01:00
Dmitry Jemerov
31d6ca8731 highlight links in KDoc; correctly highlight first word following tag name 2015-02-03 13:24:58 +01:00
Michael Nedzelsky
df8fed096c add support for compile time constant serialization 2015-02-03 14:41:24 +03:00
Natalia Ukhorskaya
d45a1f3e44 Implement getFqName for KotlinLightClassForCompiledDeclaration 2015-02-03 14:35:57 +03:00
Andrey Breslav
0f0f205248 Serializing information about star projections 2015-02-02 19:52:02 +03:00
Andrey Breslav
fecf6f9fdf Star projection information preserved in substitutions
#KT-6700 Fixed
2015-02-02 19:52:01 +03:00
Andrey Breslav
da639039bd KT-6698 Bad class file when using a star-projection on a Java's recursive generic parameter
#KT-6698 Fixed
2015-02-02 19:52:00 +03:00
Alexander Udalov
8d5a6d729e build.xml: use preloader to serialize built-ins to improve performance 2015-02-02 16:46:53 +03:00
Alexander Udalov
5b70995ce1 build.xml: simplify new-kotlinc macro
- passing sources to "-classpath" is no longer needed because the logic was
  implemented in K2JVMCompiler
- skipping javac2 for stdlib is no longer needed because the corresponding
  error is no longer reproducible since "skip" was added to javac2
- get rid of unneeded properties in favor of Ant's toString feature
2015-02-02 16:46:49 +03:00
Nikolay Krasko
e802044c60 Additional cache for not-found packages 2015-02-02 14:15:04 +03:00
Nikolay Krasko
a8557180f1 Register KotlinJavaPsiFacade as component 2015-02-02 14:15:01 +03:00
Nikolay Krasko
c8de43f93e findPackage() parametrize with scope 2015-02-02 14:14:59 +03:00
Nikolay Krasko
07e74f3179 Refactoring: rename class 2015-02-02 14:14:57 +03:00
Nikolay Krasko
aff9ac65cf Remove unnecessary intermediate class 2015-02-02 14:14:55 +03:00
Nikolay Krasko
f5da351e8a Move KotlinPsiElementFinderImpl and add wrapper interface to avoid creating many unsupported methods 2015-02-02 14:14:54 +03:00
Nikolay Krasko
4a0e7489dd Remove all unused code from JavaPsiFacadeImpl 2015-02-02 14:14:52 +03:00
Nikolay Krasko
f9f6ae4625 Fight with "File accessed outside allowed roots" 2015-02-02 14:14:50 +03:00
Alexey Sedunov
2dbfd1fc4c Move Statement: Fix comma placement for class parameter
#KT-6672 Fixed
2015-01-30 21:16:27 +03:00
Alexander Udalov
6235741f7f Merge pull request #555 from JetBrains/rr/yole/putfield-null
Don't generate redundant initializers for 'var' properties.
2015-01-30 19:19:35 +03:00
Dmitry Jemerov
37651ae886 use temporary binding trace 2015-01-30 16:00:59 +01:00
Evgeny Gerashchenko
a492e248fe Added workaround for the problem that IDEA doesn't allow keywords in cls annotations. 2015-01-30 17:50:55 +03:00
Dmitry Jemerov
6442b61db8 Don't generate redundant initializers for 'var' properties.
Since only 'val' properties store initializers as compile time constants in descriptors, we need to take the initializer expression from the PSI and try to evaluate it as a constant.

 #KT-6661 fixed
2015-01-30 14:05:25 +01:00
Evgeny Gerashchenko
c1b6e3a63d Minor. Swapped test data. "other" and "same" packages were confused. 2015-01-30 14:01:33 +03:00
Evgeny Gerashchenko
3ee35ff34e Minor. Added source path for library. 2015-01-30 14:01:33 +03:00
Evgeny Gerashchenko
1e3558afc6 Simple changing temp directory in JPS test for easier debugging. 2015-01-30 14:01:32 +03:00
Evgeny Gerashchenko
0e7d7ac709 Workaround for type inference bug (KT-6694, for IDEA 140 branch) 2015-01-30 14:00:46 +03:00
Svetlana Isakova
6511086034 Rename: PartialBodyResolveProvider -> StatementFilter 2015-01-30 13:33:37 +03:00
Svetlana Isakova
a2f03f2d52 Fix: constraint T? >: Int! should transform to T >: Int 2015-01-30 13:33:37 +03:00
Svetlana Isakova
f5fb3246ae Rename: deparenthesizeArgument -> getLastElementDeparenthesized 2015-01-30 13:33:36 +03:00
Svetlana Isakova
95209d37dd Used partial resolve filter to find the last statement in a block 2015-01-30 13:33:36 +03:00
Svetlana Isakova
8c1ef59963 Minor refactoring: removed unnecessary parameter,
inlined method
2015-01-30 13:33:36 +03:00
Valentin Kipyatkov
0cffdeb973 Added 2 failing tests for bugs in resolve 2015-01-30 13:33:36 +03:00
Svetlana Isakova
0f370a7cf6 Refactoring: extracted several functions to make kotlin compile 2015-01-30 13:33:36 +03:00
Svetlana Isakova
279f09ee45 Removed method 'hasTypeConstructorMismatchAt' from status
Used ConstraintError's instead
2015-01-30 13:33:36 +03:00
Svetlana Isakova
1d67c1edea Converted Renderers to kotlin 2015-01-30 13:33:36 +03:00
Svetlana Isakova
8766120b9c Rename file to .kt 2015-01-30 13:33:35 +03:00
Svetlana Isakova
6cac6350a6 Fixed rendering of error message for 'cannot capture type' error
Type variable should be chosen correctly
2015-01-30 13:33:35 +03:00
Svetlana Isakova
971ad53bcc Introduced ConstraintError for storing errors in the constraint system 2015-01-30 13:33:35 +03:00
Zalim Bashorov
4f61ead1de K2JS: fix breakpoints when use JavaScript debugger. 2015-01-29 22:25:30 +03:00
Evgeny Gerashchenko
8f8a9b52e7 Fixed compilation error for IDEA 14.1+ (140 branch) 2015-01-29 21:48:46 +03:00
Evgeny Gerashchenko
da7762e003 Fixed compilation error for IDEA 14.1+ (140 branch) 2015-01-29 21:04:54 +03:00
Andrey Breslav
c3e65d1684 Work around compiler bug: rewriting one trait in Java 2015-01-29 16:07:30 +03:00
Andrey Breslav
9d7f12b69e Minor. Code simplified 2015-01-29 16:07:30 +03:00
Andrey Breslav
8754ebb939 Minor. Rename method 2015-01-29 16:07:30 +03:00
Andrey Breslav
25dffeef28 Do not modify already existing components 2015-01-29 16:07:30 +03:00
Andrey Breslav
9c469a7dff Don't make generated methods of local data classes LOCAL 2015-01-29 16:07:30 +03:00
Andrey Breslav
eebe013de2 getEnclosingElementForLocalDeclaration() made stub-friendly 2015-01-29 16:07:29 +03:00
Andrey Breslav
da238cffaf Visibility of local classes is LOCAL 2015-01-29 16:07:29 +03:00
Andrey Breslav
4d66551067 Call analyzeDeclarations() that includes files where it was called before refactoring 2015-01-29 16:07:29 +03:00
Andrey Breslav
6035260e68 LOCAL classes are ACC_PUBLIC in byte code 2015-01-29 16:07:29 +03:00
Andrey Breslav
54a50ef0b5 Unused infrastructure of MutableClassDescriptor removed 2015-01-29 16:07:29 +03:00
Andrey Breslav
ff133b66ed Minor. Method made private 2015-01-29 16:07:28 +03:00
Andrey Breslav
ff9e6d849f Code from ImportsResolver moved, the class renamed to PlatformTypesMappedToKotlinChecker 2015-01-29 16:07:28 +03:00
Andrey Breslav
794bb07eb5 Unused code removed from ImportsResolver 2015-01-29 16:07:28 +03:00
Andrey Breslav
51c1e1268e Minor. Pointless annotations removed 2015-01-29 16:07:28 +03:00
Andrey Breslav
43a0f29a85 Unused code removed from VarianceChecker 2015-01-29 16:07:28 +03:00
Andrey Breslav
3a494ac040 Unused code removed from OverrideResolver 2015-01-29 16:07:27 +03:00
Andrey Breslav
828507de78 Unused code removed from DeclarationResolver 2015-01-29 16:07:27 +03:00
Andrey Breslav
2b432dd085 TopDownAnalyzer and TypeHierarchyResolver deleted 2015-01-29 16:07:27 +03:00
Andrey Breslav
6395fd819f Got rid of non-lazy local classifier analyzer 2015-01-29 16:07:27 +03:00
Andrey Breslav
c59cb09398 Don't fail on nameless classes (syntax errors) 2015-01-29 16:07:27 +03:00
Andrey Breslav
ed4da90dcd Outer DataFlowInfo delivered to local class members 2015-01-29 16:07:26 +03:00
Andrey Breslav
7323ef7002 Minor. Noisy warnings removed from test data 2015-01-29 16:07:26 +03:00
Andrey Breslav
b4b0b84228 Support LOCAL visibility for lazy classes 2015-01-29 16:07:26 +03:00
Andrey Breslav
0fe191b028 Registering local classes with the outer scope 2015-01-29 16:07:26 +03:00
Andrey Breslav
7036cb8f42 Object expressions fixed 2015-01-29 16:07:26 +03:00
Andrey Breslav
202c44e969 Create LazyClassDescriptors for local classes 2015-01-29 16:07:25 +03:00
Andrey Breslav
d016aa8f4d Take inherited setters into account 2015-01-29 16:07:25 +03:00
Andrey Breslav
483e20affc LazyLocalClassifierAnalyzer introduced 2015-01-29 16:07:25 +03:00
Andrey Breslav
5b4682dd0e LazyTopDownAnalyzer does not depend on ResolveSession or ScopeProvider any more 2015-01-29 16:07:25 +03:00
Andrey Breslav
e16885c301 LazyTopDownAnalyzerForTopLevel extracted 2015-01-29 16:07:25 +03:00
Andrey Breslav
6285efe32d LazyDeclarationResolver extracted from ResolveSession 2015-01-29 16:07:24 +03:00
Andrey Breslav
b5503f3acf DeclarationScopeProviderImpl extracted 2015-01-29 16:07:24 +03:00
Andrey Breslav
dae5ec24e2 LazyTopDownAnalyzer is always called in LAZY mode 2015-01-29 16:07:24 +03:00
Andrey Breslav
48ae469d13 Minor. @Override added 2015-01-29 16:07:24 +03:00
Andrey Breslav
b8abfbb10d LazyClassContext introduced 2015-01-29 16:07:24 +03:00
Alexander Udalov
de3f096ae1 Test classpath order of sources vs library dependencies 2015-01-28 19:58:37 +03:00
Alexander Udalov
2253567e36 Tests: use preloader instead of URLClassLoader in MockLibraryUtil
This fixes runtime dependency of the compiler and thus allows to run tests
which use MockLibraryUtil in case of an ABI-incompatible change; also it's
slightly more efficient (noticeable when running a single test)
2015-01-28 19:58:36 +03:00
Alexander Udalov
5903b8c4a7 Reorder and optimize dependencies between modules and libraries
- drop 'kotlin-runtime' and other dependencies which are exported by
  other modules ('util' and 'util.runtime' in case of 'kotlin-runtime')
- make all Kotlin modules from the compiler depend on 'util' for clarity
- put 'util' and 'util.runtime' to the bottom of the list everywhere: when
  kotlin-runtime gets reflection, classes from core/ should have higher
  priority than their previous versions from kotlin-runtime.jar
2015-01-28 19:58:35 +03:00
Alexander Udalov
2c8cad6628 Minor, inline some CompileEnvironmentUtil utilities 2015-01-28 19:58:34 +03:00
Alexander Udalov
7e988b04b4 Refactor compiler source root duplicate check 2015-01-28 19:58:34 +03:00
Alexander Udalov
93f02aeead Add source directories to classpath in CLI compiler
Move this logic from Ant and Maven plugins
2015-01-28 19:58:33 +03:00
Alexander Udalov
3ea59117ac Simplify code in module script/xml generation
Pass classpath and annotation roots explicitly instead of wrapped in a callback
2015-01-28 19:58:32 +03:00
Alexander Udalov
fa2116040e Modules.xml: add Java sources right after Kotlin sources
Java sources should appear before classpath dependencies because they should
have higher priority if the same symbol is located in the module source and in
the classpath. This is so because by default module source has the highest
priority in IDEA except the JDK. Ideally this will be handled later by full
support of modules in the compiler
2015-01-28 19:58:31 +03:00
Alexander Udalov
eb3588bd0a Minor, don't add external annotation roots multiple times 2015-01-28 19:58:31 +03:00
Alexander Udalov
59937aad14 CLI compiler: add runtime after user's classpath
Otherwise weird compilation errors in our project are expected as soon as
kotlin-runtime.jar will contain modules from "core". Suppose a Java class from
core/ has changed; the CLI compiler will then see its own (old) version of that
class from kotlin-runtime.jar before the actual new version from sources
2015-01-28 19:58:30 +03:00
Alexander Udalov
d6b67523f6 Improve error message on error types in JetTypeMapper
#KT-6684
2015-01-28 15:25:37 +03:00
Nikolay Krasko
825a194429 Temp workaround for build test failed when parser tests are executed first 2015-01-28 15:12:28 +03:00
Evgeny Gerashchenko
897854b3dc KT-6671 Report unused constructor parameters
#KT-6671 fixed
2015-01-27 22:38:27 +03:00
Evgeny Gerashchenko
f96f1b8cb0 Don't run inspection for test data. 2015-01-27 19:44:31 +03:00
Evgeny Gerashchenko
a6362dda22 Added workaround for linkage error in IDEA 14.0-14.0.2 2015-01-27 16:43:01 +03:00
Natalia Ukhorskaya
9057e84c6d Remove isKtFileInWrongFolder 2015-01-26 16:48:36 +03:00
Natalia Ukhorskaya
11f7b45ce3 Gradle: collect kotlin files from java source root 2015-01-26 16:48:35 +03:00
Natalia Ukhorskaya
71ec5591f1 Cleanup SpecialFiles for Android tests 2015-01-26 16:48:35 +03:00
Nikolay Krasko
234f56a3c4 Compiler jar locator 2015-01-26 14:25:07 +03:00
Evgeny Gerashchenko
6ffe49f1d2 KT-6582 "Expand selection" in string literal should select word in string
#KT-6582 fixed
2015-01-22 19:10:01 +03:00
Alexey Sedunov
0159f95111 Update to IDEA 139.1116 2015-01-22 17:00:21 +03:00
Dmitry Jemerov
0aa14c35f7 Merge pull request #553 from JetBrains/text-or-link
include TEXT_OR_LINK in the list of content tokens; fix incorrect testdata
2015-01-22 14:24:42 +01:00
Dmitry Jemerov
dbba0b769b include TEXT_OR_LINK in the list of content tokens; fix incorrect testdata 2015-01-22 14:05:03 +01:00
Andrey Breslav
a8cb7c832b Fix compilation 2015-01-22 15:42:27 +03:00
Evgeny Gerashchenko
386854d73f Unused object.
unusedButEntryPointMain for class was actually a wrong test: it didn't check anything, because objects are were not checked for unusedness before.
2015-01-22 15:26:49 +03:00
Evgeny Gerashchenko
a797f4a328 Minor. Reduced code duplication. 2015-01-22 15:26:48 +03:00
Evgeny Gerashchenko
2ef9634091 Clarified weird NPE: EA-64049 2015-01-22 15:26:47 +03:00
Evgeny Gerashchenko
378d00bbad Quick fix for unused symbol inspection. 2015-01-22 15:26:45 +03:00
Evgeny Gerashchenko
6e621ab114 Lazy usage search (using SearchQuery as Iterable leads to computing all results, which is wasting time). 2015-01-22 15:20:32 +03:00
Evgeny Gerashchenko
71bcce6410 Highlighting unused type parameter. 2015-01-22 15:20:32 +03:00
Evgeny Gerashchenko
aff2547ff8 Searching for properties declared in class constructor signature. 2015-01-22 15:20:31 +03:00
Evgeny Gerashchenko
156184b0eb Extracted function which gets component function name for data class property.
It used to rely on the fact that class is already resolved before. Added force resolution of class, to make this function reusable in other context.
2015-01-22 15:20:30 +03:00
Evgeny Gerashchenko
b0e2afc8cb Searching for property accessors, too. 2015-01-22 15:20:30 +03:00
Evgeny Gerashchenko
8fd5e72632 Finding unused properties. 2015-01-22 15:20:29 +03:00
Evgeny Gerashchenko
460fae275b Looking for text usages in all project (e. g., class can be referred from test data). 2015-01-22 15:20:28 +03:00
Evgeny Gerashchenko
9ba86501ec Not marking enum entries as unused. 2015-01-22 15:20:28 +03:00
Evgeny Gerashchenko
b91053da0b Optimized checking if reference to builtin.
It was slowing up usages search for back-references to standard library (not builtins, but in "kotlin" package)
2015-01-22 15:20:27 +03:00
Evgeny Gerashchenko
4cede47c70 Added tests with class/function used in Java 2015-01-22 15:20:26 +03:00
Evgeny Gerashchenko
4b20435ec9 Not searching for functions with conventional names.
Reasons:
1. They kind of implement interface.
2. They are too expensive to search.
2015-01-22 15:20:25 +03:00
Evgeny Gerashchenko
c5351b0760 Removed arrow operator from list of binary operators, since it is obsolete. 2015-01-22 15:20:25 +03:00
Evgeny Gerashchenko
b68b2e2e40 Added optimization: if name is too popular, don't check as unused. 2015-01-22 15:20:24 +03:00
Evgeny Gerashchenko
f652d314d8 Finding unused functions. 2015-01-22 15:20:24 +03:00
Andrey Breslav
38044c1000 LocalClassifierAnalyzer injected 2015-01-22 14:15:50 +03:00
Andrey Breslav
6d1484dbed Better diagnostics in injector generator 2015-01-22 14:15:50 +03:00
Andrey Breslav
8ee3bce75d Minor. Pointless annotations removed from TopDownAnalyzer. 2015-01-22 14:15:50 +03:00
Dmitry Jemerov
f4a25f69b1 Merge pull request #552 from JetBrains/rr/yole/kdoc-generate
structured rendering of doc comments in quick documentation dialog
2015-01-21 23:32:10 +01:00
Valentin Kipyatkov
4f2ecffee1 Better tests 2015-01-21 20:10:19 +03:00
Valentin Kipyatkov
d2016e2670 Fixing compilation 2015-01-21 20:10:19 +03:00
Valentin Kipyatkov
77a560775f KT-6628 Allow imports of classes from root package
#KT-6628 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov
fa779bbdd2 Fixed KT-4085 Usability problem: Can't import protected nested class
#KT-4085 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov
974982463c Visible classes take priority when resolving imports with * 2015-01-21 20:10:18 +03:00
Valentin Kipyatkov
b9d47ffe7a Changed priority for default imports + default imports include all built-ins explicitly for java module
#KT-4374 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov
ae9ebbec7d Corrected test data 2015-01-21 20:10:18 +03:00
Valentin Kipyatkov
e117e5aa16 It is more correct to resolve default imports this way 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov
7ce3925d71 Removed USELESS_HIDDEN_IMPORT error for it cannot happen anymore 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov
929d6b885d Current package members to have less priority than explicit imports 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov
59f24020b2 Renames 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov
3caef82184 Big refactoring of imports resolve - preparing to change current package members priority 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov
45a7c3bcdc No need to inherit from LazyEntity 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov
9317593565 Fixed test data to be compilable with new import rules 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov
a9d4fd5213 Moved tests for imports into proper group 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov
2c60201832 Fixed test data (+ renamed test) 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov
2e420fc312 Conflicting imports error for imports of classes and packages 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov
0c74f1679b Variable renames 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov
b888ea601c Changed imports semantics: imports order does not affect resolve, explicit imports have higher priority for classes 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov
8fc0063410 Refactoring of Importer - PlatformToKotlinClassMap is the same for all imports 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov
58fb303f8c Code improvements after conversion 2015-01-21 20:10:15 +03:00
Valentin Kipyatkov
de3a93264c Converted code to Kotlin - step 2 2015-01-21 20:10:15 +03:00
Valentin Kipyatkov
251d98a602 Converted code to Kotlin (step 1 to keep history) 2015-01-21 20:10:15 +03:00
Valentin Kipyatkov
b625298cd4 Reordered methods 2015-01-21 20:10:15 +03:00
Valentin Kipyatkov
2b215681c9 Code refactoring - no need to filter out classes with Kotlin analogs from inside classes 2015-01-21 20:10:15 +03:00
Dmitry Jemerov
906c0fd7f7 Merge branch 'master' into rr/yole/kdoc-generate 2015-01-21 18:00:21 +01:00
Dmitry Jemerov
609914fb4a code review; add test for brackets around subject name in tag 2015-01-21 17:23:24 +01:00
Nikolay Krasko
77cb279154 Don't restrict number of builds 2015-01-21 18:36:08 +03:00
Dmitry Jemerov
659c54d7e6 structured rendering of doc comments in quick documentation dialog 2015-01-21 16:20:20 +01:00
Alexander Udalov
5194310d6e Use javac2 filter to disable NotNull instrumentation of Kotlin code
We skip all classes annotated with kotlin/jvm/internal/<anything> (currently
KotlinClass, KotlinPackage and KotlinSyntheticClass) because Kotlin compiler
emits its own nullability assertions
2015-01-21 16:17:50 +03:00
Svetlana Isakova
9dbcd8b55f Approximate captured types only when necessary 2015-01-21 15:37:33 +03:00
Dmitry Jemerov
6c814279fc Merge pull request #550 from JetBrains/kdoc-inherit
allow inheriting doc comments from base classes
2015-01-21 13:26:01 +01:00
Natalia Ukhorskaya
8b5279897f Gradle: fix kotlinOptions for kotlin-android plugin 2015-01-21 13:58:16 +03:00
Natalia Ukhorskaya
bcbfb1bd77 Gradle: include groovy output to kotlin-gradle-plugin.jar
#KT-6635 Fixed
2015-01-21 13:58:16 +03:00
Natalia Ukhorskaya
72510beb69 Android tests: generate tests only for directories 'box' and 'boxWithStdlib' 2015-01-21 13:58:15 +03:00
Ilya Ryzhenkov
3a9e41f2d7 stdlib: Pair and Triple .toList() 2015-01-20 22:39:24 +03:00
Ilya Ryzhenkov
95d4accda7 stdlib: add flatten() 2015-01-20 22:39:24 +03:00
Ilya Ryzhenkov
1d4591d99c stdlib: add sumBy(function) 2015-01-20 22:39:23 +03:00
Ilya Ryzhenkov
4ee64d7283 Covering stdlib with tests. 2015-01-20 22:37:16 +03:00
Ilya Ryzhenkov
c3eaf1b869 Fix return type of linkedHashSetOf to be more specific. 2015-01-20 22:37:16 +03:00
Ilya Ryzhenkov
9b04f57a25 Collection tests: format and fix usages of deprecated symbols. 2015-01-20 22:37:15 +03:00
Evgeny Gerashchenko
5a77a70710 Merge pull request #551 from JetBrains/delete-operation-mode-provider
delete unused OperationModeProvider class
2015-01-20 22:52:33 +04:00
Dmitry Jemerov
431cdd2245 delete unused OperationModeProvider class 2015-01-20 19:51:24 +01:00
Dmitry Jemerov
0c2b230e4a allow inheriting doc comments from base classes 2015-01-20 19:20:59 +01:00
Alexander Udalov
ae6ffeb88a Skip inlined lambdas when determining EnclosingMethod
#KT-6368 Fixed
2015-01-20 21:02:57 +03:00
Alexander Udalov
20dc3438a2 Fix generation of InnerClasses/EnclosingMethod attributes
Generate InnerClasses for each outer class and each direct inner class in all
inheritors of MemberCodegen, i.e. for classes, objects, lambdas, local classes,
etc.

Also skip lambdas which will be inlined when calculating outer class for
EnclosingMethod

 #KT-5447 Fixed
 #KT-5478 Fixed
2015-01-20 21:02:56 +03:00
Dmitry Jemerov
432bdcd0fc Merge pull request #549 from JetBrains/rr/yole/kdoc-parser
Rr/yole/kdoc parser
2015-01-20 18:54:17 +01:00
Dmitry Jemerov
8217563aac KDocTokens.START can't be the first token of a tag 2015-01-20 18:08:02 +01:00
Dmitry Jemerov
31f5441f6b code review 2015-01-20 18:08:01 +01:00
Dmitry Jemerov
100b8c2c4d Fix tests according to new PSI structure; move doc comment text calculation from JetQuickDocumentationProvider to KDocTag.getContent() 2015-01-20 18:07:18 +01:00
Dmitry Jemerov
c3a496b9a2 introduce the concept of sections 2015-01-20 18:00:17 +01:00
Dmitry Jemerov
f3763bc2b5 some initial PSI for KDoc; changed syntax of links (Markdown style single brackets instead of Wiki style double brackets) 2015-01-20 18:00:09 +01:00
Alexey Sedunov
b40e657180 Create from usage: Create constructor parameter by reference in delegation specifier
#KT-6601 Fixed
2015-01-19 20:58:55 +03:00
Alexey Sedunov
70b202dfa6 Extract Function: Do not extract extension receiver from 'implicit invoke'
call
 #KT-6302 Fixed
2015-01-19 20:58:54 +03:00
Alexey Sedunov
d54b261c61 Extract Function: Fix 'this' label (extension case)
#KT-5456 Fixed
2015-01-19 20:58:53 +03:00
Alexey Sedunov
941e08b80f Minor: Fix warnings 2015-01-19 20:58:52 +03:00
Alexey Sedunov
8d40ca1a74 Extract Function: Merge jumps with default exits if all exit points are equivalent
#KT-6598 Fixed
2015-01-19 20:58:51 +03:00
Alexey Sedunov
9278dee1a4 Pseudocode: Bind nondeterministic jump caused by local declaration to declaration iself instead of its parent element
#KT-6261 Fixed
 #KT-6416 Fixed
2015-01-19 20:58:50 +03:00
Nikolay Krasko
81715d1fca Don't pass message bus to avoid unnecessary registering
#KT-6640 Fixed
2015-01-19 20:26:01 +03:00
Andrey Breslav
35049de94e Merge pull request #548 from JetBrains/remove-exPuzzlers
Remove outdated version of puzzlers from the Kotlin repository.
2015-01-19 18:01:32 +03:00
Dmitry Jemerov
2e01c3b90a Remove outdated version of puzzlers from the Kotlin repository. An up-to-date version is available at https://github.com/kotlin-projects/ex-puzzlers 2015-01-19 15:58:33 +01:00
Evgeny Gerashchenko
c60797e306 Rebuilding dependants fully only when constants/inline functions changed. This is not 100% precise, but it is faster. It is a compromise until we implement preciser incremental compilation. 2015-01-19 15:36:57 +03:00
Evgeny Gerashchenko
72687758a5 Rebuilding dependent modules. 2015-01-19 15:36:56 +03:00
Evgeny Gerashchenko
00f2ba5124 Test with Java and Kotlin changed simultaneously. 2015-01-19 15:36:56 +03:00
Evgeny Gerashchenko
967f470b16 Added multi-module tests on incremental compilation.
Changing code wasn't required, Java's incremental caches were enough.
2015-01-19 15:36:55 +03:00
Alexander Udalov
baea660a0b Rewrite hack in codegen for lambdas in anonymous object super calls
Synthetic ClassDescriptor created in codegen for lambdas and such should have
correct container, because it'll be used in generation of InnerClasses
2015-01-16 21:48:57 +03:00
Alexander Udalov
c23352d81b Remove ParentCodegenAware
Inline its fields to subclasses, fix parent codegen nullability
2015-01-16 21:47:51 +03:00
Evgeny Gerashchenko
2b438a286f Updated test data according to changes in IDEA. 2015-01-16 20:19:37 +03:00
Nikolay Krasko
bc9287b60f Change description of 'iter' template to make it searchable by 'for' prefix
#KT-6603 Fixed
2015-01-15 20:35:39 +03:00
Pavel V. Talanov
2d68637fd9 ResolveElementCache: Use softly (not weakly) retained values
Fixes performance problems with long running searches analyzing function bodies several times
2015-01-15 19:54:25 +03:00
Alexey Sedunov
90e7d2151b Create From Usage: Restrict type guess search scope to prevent performance problem with highlighting 2015-01-15 19:43:01 +03:00
Denis Zharkov
6f94ebb9d6 Refined redundant null check optimization 2015-01-15 15:13:05 +03:00
Denis Zharkov
5675d2b26b Dead code elimination
#KT-6602 Fixed
 #KT-6305 Fixed
 #KT-5656 Fixed
2015-01-15 15:13:05 +03:00
Denis Zharkov
aecb925b7b Refined skipping last goto when inlining try/catch/finally block 2015-01-15 15:13:05 +03:00
Denis Zharkov
5a0a05e5c7 Removed unused inline markers 2015-01-15 15:13:04 +03:00
Natalia Ukhorskaya
d2cf83902b Debugger: do not evaluate calls on mouse cover when 'Value auto tooltip' switched on 2015-01-15 11:45:16 +03:00
Natalia Ukhorskaya
f5aefc96fb Local variable shouldn't be visible in debugger before initialization 2015-01-15 11:45:15 +03:00
Alexey Tsvetkov
89f8442705 Fixed weird compilation issue by moving function to other package 2015-01-14 21:49:52 +03:00
Alexey Tsvetkov
ddcd2e7344 Regenerated injectors 2015-01-14 21:49:52 +03:00
Alexey Tsvetkov
c3dde69a7a Minor in Frontend: Moved NeedSyntheticChecker to jvm frontend 2015-01-14 21:49:52 +03:00
Alexey Tsvetkov
17baee740b Frontend: AdditionalCheckerProvider.Empty->AdditionalCheckerProvider.DefaultProvider 2015-01-14 21:49:52 +03:00
Alexey Tsvetkov
0344f467d5 Frontend: KotlinJsDeclarationCheckerProvider->KotlinJsCheckerProvider 2015-01-14 21:49:52 +03:00
Alexey Tsvetkov
491ac7db12 Frontend: JavaDeclarationCheckerProvider->KotlinJvmCheckerProvider 2015-01-14 21:49:52 +03:00
Alexey Tsvetkov
21e28fa866 Frontend: use AdditionalCheckerProvider instead of CallResolverExtensionProvider 2015-01-14 21:49:52 +03:00
Alexey Tsvetkov
597a191c84 Frontend: extracted InlineCallCheckerWrapper to create InlineCallCheckers during run 2015-01-14 21:49:52 +03:00
Alexey Tsvetkov
5e16516d8e Frontend: CallResolverExtension->CallChecker 2015-01-14 21:49:52 +03:00
Valentin Kipyatkov
c915eb4eac KT-6566 Generate Override/Implement method does not work for locally declared classes
#KT-6566 Fixed
2015-01-14 20:59:23 +03:00
Valentin Kipyatkov
eed0def1cb Completion auto-popup works at the start of function literal 2015-01-14 20:57:28 +03:00
Valentin Kipyatkov
dc1d06db9c Do not select item by typing dot only for auto-popup completion 2015-01-14 20:57:28 +03:00
Valentin Kipyatkov
9e526fca58 Completion for "file" keyword in annotations 2015-01-14 20:57:28 +03:00
Valentin Kipyatkov
fde1890de9 More tests
#KT-1670 Fixed
 #KT-2690 Fixed
2015-01-14 20:57:27 +03:00
Valentin Kipyatkov
ec1541a692 No completion auto-popup where parameter name can be 2015-01-14 20:57:27 +03:00
Valentin Kipyatkov
000cde3f7f KT-6225 Completion of annotations for method parameters
#KT-6225 Fixed
2015-01-14 20:57:27 +03:00
Dmitry Jemerov
95d29e0f8a Merge pull request #546 from JetBrains/rr/coverage-test-fix
fix code coverage test to match the new implementation logic
2015-01-14 17:15:34 +01:00
Dmitry Jemerov
548b52d529 don't store .class files in testdata 2015-01-14 14:49:07 +01:00
Nikolay Krasko
25794beb56 Refactoring: extract macrodef 2015-01-14 16:22:56 +03:00
Evgeny Gerashchenko
23f2e08f0c Minor. Simplified code after review. 2015-01-14 15:48:51 +03:00
Evgeny Gerashchenko
b6dffb8f0b Added test with class used only in import. 2015-01-14 15:48:50 +03:00
Evgeny Gerashchenko
f7553bafa9 Split method. 2015-01-14 15:48:50 +03:00
Evgeny Gerashchenko
2d4e0be076 Added test with class referred in XML. 2015-01-14 15:48:49 +03:00
Evgeny Gerashchenko
47ae2364f3 JetLanguage says that it is case-sensitive language now.
Otherwise redundant fake usages may be processed when searching usages of Kotlin symbols.
2015-01-14 15:48:49 +03:00
Evgeny Gerashchenko
9b22fc06c7 Class used in text is not unused. 2015-01-14 15:48:48 +03:00
Evgeny Gerashchenko
8297411e5f Not marking entry points as unused. 2015-01-14 15:48:46 +03:00
Evgeny Gerashchenko
b781a09caf Implemented simplest version of unused symbol inspection. 2015-01-14 15:48:45 +03:00
Dmitry Jemerov
cc1a628110 fix code coverage test to match the new implementation logic 2015-01-14 12:12:27 +01:00
Nikolay Krasko
cb76c2a971 Fix build by temporary test disable 2015-01-14 02:20:00 +03:00
Nikolay Krasko
a8193cd832 Auto-search for build number from idea version 2015-01-14 00:31:02 +03:00
Nikolay Krasko
87316ddfeb Update to 139.1038.6 2015-01-14 00:31:01 +03:00
Dmitry Jemerov
f90b605d5d Merge pull request #545 from JetBrains/kotlin-coverage-perf
Improve code coverage performance
2015-01-13 17:23:54 +01:00
Dmitry Jemerov
657b507371 Improve code coverage performance: always get the .class files corresponding to a source file by looking at the output directory, not by analyzing the source file. 2015-01-13 15:42:15 +01:00
Alexander Udalov
76d11330ee Fix === comparison for primitive types
#KT-6590 Fixed
2015-01-13 17:40:21 +03:00
Natalia Ukhorskaya
3a04bd7e44 Add getTargetPlatform method in ProjectConfigurator
#KT-6605 Fixed
2015-01-13 17:00:30 +03:00
Alexander Udalov
ba46df61de Rename jet -> kotlin in stub index external ids 2015-01-13 15:11:08 +03:00
Alexander Udalov
053b5a7700 Drop JetTestCaseBuilder, move methods to JetTestUtils 2015-01-13 15:11:06 +03:00
Alexander Udalov
edf054ddf3 Remove duplicate copyright file, use license/LICENSE.txt instead 2015-01-13 15:02:17 +03:00
Alexander Udalov
348d9dfce4 Add test against code in package org.jetbrains.jet 2015-01-13 15:02:16 +03:00
Alexander Udalov
f3b2193afd Delete traces of "jet" in test data and unimportant code 2015-01-13 15:02:16 +03:00
Nikolay Krasko
8a77fca449 Add icon for declarations without modifier list 2015-01-13 12:37:22 +03:00
Nikolay Krasko
6215b3962c Fix warning and and test fail 2015-01-13 12:37:19 +03:00
Nikolay Krasko
4bde4a2be4 VfsRootAccess for BuiltInsReferenceResolverTest.java 2015-01-13 12:37:18 +03:00
Nikolay Krasko
d149ecdc15 Add base test KotlinMultiFileTestCase with access root disable 2015-01-13 12:35:04 +03:00
Alexander Udalov
21b2fa2509 Update copyrights to 2015 2015-01-13 01:15:18 +03:00
Alexander Udalov
662e8707b2 Minor, drop copyright from test data 2015-01-13 01:15:17 +03:00
Alexander Udalov
ff5517621f Minor, fix package check in parser test 2015-01-13 01:15:16 +03:00
Alexander Udalov
6873e34a09 Drop org.jetbrains.jet exception in proguard 2015-01-13 01:15:16 +03:00
Alexander Udalov
093839b860 Rename jet -> kotlin in run configurations 2015-01-13 01:15:15 +03:00
Alexander Udalov
c82308d3be Rename jet -> kotlin in idea 2015-01-13 01:15:14 +03:00
Alexander Udalov
af24a17a92 Rename jet -> kotlin in idea: actions, compiler, formatter, project 2015-01-13 01:15:12 +03:00
Alexander Udalov
49f3c31e29 Rename jet -> kotlin in idea: configuration, editor, framework, search 2015-01-13 01:15:11 +03:00
Alexander Udalov
44840d07a8 Rename jet -> kotlin in idea: caches, findUsages, references, stubindex 2015-01-13 01:15:10 +03:00
Alexander Udalov
a9a15978e0 Rename jet -> kotlin in idea: completion, debugger, decompiler, highlighter
org.jetbrains.jet.plugin.* -> org.jetbrains.kotlin.idea.*
2015-01-13 01:15:09 +03:00
Alexander Udalov
044f7b6156 Rename jet -> kotlin in idea: refactoring, codeInsight
org.jetbrains.jet.plugin.* -> org.jetbrains.kotlin.idea.*
2015-01-13 01:15:08 +03:00
Alexander Udalov
fe544eaf71 Rename jet -> kotlin in idea: intentions
org.jetbrains.jet.plugin.intentions -> org.jetbrains.kotlin.idea.intentions
2015-01-13 01:14:37 +03:00
Alexander Udalov
0b64f028b6 Rename jet -> kotlin in idea: quickfixes
org.jetbrains.jet.plugin.quickfix -> org.jetbrains.kotlin.idea.quickfix
2015-01-13 01:14:36 +03:00
Alexander Udalov
17227bb4fe Rename org.jetbrains.kotlin.plugin -> org.jetbrains.kotlin.idea 2015-01-13 01:14:31 +03:00
Nikolay Krasko
d4507226a1 Equals and hashCode() methods are not created for data classes without properties 2015-01-12 23:38:18 +03:00
Alexey Sedunov
86d5bd9365 Extract Function: Do not suggest "unit" as function name
#KT-6402 Fixed
2015-01-12 22:55:33 +03:00
Alexey Sedunov
64ddd52e60 Extract Function: Fix type candidates for parameters with flexibly nullable types
#KT-6546 Fixed
2015-01-12 22:55:32 +03:00
Alexey Sedunov
c8cb5f8c29 Find Usages: Fix reference matching for declarations located in libraries
#KT-5762 Fixed
2015-01-12 22:55:31 +03:00
Alexey Sedunov
59d646bc16 Extract Function: Generate function in property's enclosing declaration if original expression belongs to initializer of that property
#KT-6290 Fixed
2015-01-12 22:55:30 +03:00
Evgeny Gerashchenko
22f4caa78d Fixed test for KT-6530 Do not report "useless cast" when RHS is unresolved 2015-01-12 21:34:12 +03:00
Evgeny Gerashchenko
c64cb06180 KT-6530 Do not report "useless cast" when RHS is unresolved
#KT-6530 fixed
2015-01-12 19:26:44 +03:00
nik
6e9f94d1ea incremental compiler caches: code cleanup and simplification 2015-01-12 17:15:13 +03:00
Alexander Udalov
09942d7c09 Rename jet -> kotlin in idea tests
org.jetbrains.jet -> org.jetbrains.kotlin (except 'plugin' subpackage)
2015-01-12 15:40:24 +03:00
Alexander Udalov
0e8b00c1f4 Rename jet -> kotlin in compiler-tests: resolve
org.jetbrains.jet.resolve -> org.jetbrains.kotlin.resolve
2015-01-12 15:40:22 +03:00
Alexander Udalov
0866d0517f Rename jet -> kotlin in idea resolve tests
org.jetbrains.jet.resolve -> org.jetbrains.kotlin.plugin.resolve
2015-01-12 15:40:22 +03:00
Alexander Udalov
587a92717c Update copyright in frontend (cfg), tests 2015-01-12 15:40:16 +03:00
Alexander Udalov
7d496377c4 Remove bootstrap workarounds 2015-01-12 15:40:15 +03:00
Alexander Udalov
6a11983f9e Minor, delete unused deprecated method 2015-01-12 15:40:14 +03:00
Alexander Udalov
869cfaaabe Remove "Integration Tests" run configuration
Integration tests are now merged into All Tests
2015-01-12 15:40:14 +03:00
Natalia Ukhorskaya
e363e70e44 Suggest 'Make Abstract' quickfix for class which doesn't implement all methods from its base class interfaces
#KT-6321 Fixed
2015-01-12 14:16:31 +03:00
Natalia Ukhorskaya
2aaa94cccb Debugger: implement Jump to Source for localVariables 2015-01-12 14:16:29 +03:00
Natalia Ukhorskaya
8dcb4ab5bb Debugger: suppress UNSAFE_CALL diagnostic in debug mode 2015-01-12 14:16:26 +03:00
Natalia Ukhorskaya
b709baa9b4 Minor: rename 2015-01-12 14:16:24 +03:00
Alexander Udalov
3b81d63334 Rename jet -> kotlin in compiler-tests (except resolve)
Move test-related code to org.jetbrains.kotlin.test, also move some tests to
packages with better names
2015-01-12 00:24:12 +03:00
Alexander Udalov
663d31709b Remove outdated code from compiler-tests 2015-01-11 18:01:48 +03:00
Alexander Udalov
63cefea6e9 Rename jet -> kotlin in frontend
org.jetbrains.jet -> org.jetbrains.kotlin

Also rename package slicedmap to slicedMap
2015-01-11 15:20:51 +03:00
Alexander Udalov
36a469ccd5 Rename jet -> kotlin in idea: JetBundle 2015-01-11 07:03:44 +03:00
Alexander Udalov
9f4513dd75 Rename jet -> kotlin in idea: icons 2015-01-11 05:09:03 +03:00
Alexander Udalov
2b8c358614 Minor, drop irrelevant package from test data comment 2015-01-11 05:09:03 +03:00
Alexander Udalov
64a9585a4d Rename jet -> kotlin in ide-common
org.jetbrains.jet.plugin -> org.jetbrains.kotlin.plugin
2015-01-11 05:09:02 +03:00
Alexander Udalov
64c6055030 Rename jet -> kotlin in frontend, descriptors: resolve
org.jetbrains.jet.lang.resolve -> org.jetbrains.kotlin.resolve
2015-01-11 05:09:01 +03:00
Alexander Udalov
634ed0b652 Rename jet -> kotlin in frontend: lazy resolve
org.jetbrains.jet.lang.resolve.lazy -> org.jetbrains.kotlin.resolve.lazy
2015-01-11 05:09:00 +03:00
Alexander Udalov
8affc31303 Rename jet -> kotlin in descriptor.loader.java, frontend.java
Split package 'lang/resolve/java' into two semantically different packages:
'resolve/jvm' and 'load/java'. Also rename 'lang/resolve/kotlin' to
'load/kotlin'
2015-01-11 05:08:57 +03:00
Alexander Udalov
0499ec94ca Rename jet -> kotlin in frontend: call resolution
org.jetbrains.jet.lang.resolve.calls -> org.jetbrains.kotlin.resolve.calls
2015-01-10 20:25:15 +03:00
Alexander Udalov
88670eb78a Rename jet -> kotlin in frontend: diagnostics
org.jetbrains.jet.lang.diagnostics -> org.jetbrains.kotlin.diagnostics
2015-01-10 17:38:07 +03:00
Alexander Udalov
f81a3c353d Rename jet -> kotlin in frontend: evaluate
org.jetbrains.jet.lang.evaluate ->
org.jetbrains.kotlin.resolve.constants.evaluate
2015-01-10 17:15:06 +03:00
Alexander Udalov
fe67b374e7 Rename jet -> kotlin in frontend: parsing
org.jetbrains.jet.lang.parsing -> org.jetbrains.kotlin.parsing
2015-01-10 16:06:09 +03:00
Alexander Udalov
524fdc2527 Rename jet -> kotlin in descriptors, types, names
org.jetbrains.jet.lang.descriptors -> org.jetbrains.kotlin.descriptors
org.jetbrains.jet.lang.types -> org.jetbrains.kotlin.types
org.jetbrains.jet.lang.resolve.name -> org.jetbrains.kotlin.name
2015-01-10 15:52:20 +03:00
Alexander Udalov
2ac4c65720 Move PlatformToKotlinClassMap to org.jetbrains.kotlin.platform
Also JavaToKotlinClassMap
2015-01-10 15:52:17 +03:00
Alexander Udalov
e88f89d1c6 Rename jet -> kotlin in descriptors: built-ins
org.jetbrains.jet.lang.types.lang -> org.jetbrains.kotlin.builtins
2015-01-10 15:52:16 +03:00
Alexander Udalov
d384e50a97 Rename jet -> kotlin in frontend: PSI
org.jetbrains.jet.lang.psi -> org.jetbrains.kotlin.psi
2015-01-10 15:52:14 +03:00
Alexander Udalov
ead8c8ac1d Rename jet -> kotlin in frontend: lexer, kdoc
org.jetbrains.jet.lexer -> org.jetbrains.kotlin.lexer
org.jetbrains.jet.kdoc -> org.jetbrains.kotlin.kdoc

Also rename Jet.flex -> Kotlin.flex
2015-01-10 15:52:12 +03:00
Alexander Udalov
cb649dd204 Minor, rename jet -> kotlin in control flow test system property 2015-01-10 15:52:11 +03:00
Alexander Udalov
378d04e301 Rename jet -> kotlin in frontend: cfg
org.jetbrains.jet.lang.cfg, org.jetbrains.jet.cfg -> org.jetbrains.kotlin.cfg
2015-01-10 15:52:06 +03:00
Alexander Udalov
2c414d880c Rename jet -> kotlin in descriptors: renderer
org.jetbrains.jet.renderer -> org.jetbrains.kotlin.renderer
2015-01-10 15:51:59 +03:00
Alexander Udalov
05eaf81ba6 Rename jet -> kotlin and regroup files in serialization
org.jetbrains.jet.descriptors.serialization ->
org.jetbrains.kotlin.serialization

Deserialization goes to subpackage deserialization, built-ins-related stuff
goes to subpackage builtins
2015-01-09 16:37:22 +03:00
Alexander Udalov
00878cc31a Rename java -> jvm, jet -> kotlin in module serialization.java
org.jetbrains.jet.descriptors.serialization ->
org.jetbrains.kotlin.serialization.jvm
2015-01-09 14:27:13 +03:00
Alexander Udalov
de6e8a7493 Rename package jet -> kotlin in backend
org.jetbrains.jet.codegen -> org.jetbrains.kotlin.codegen
2015-01-08 23:32:09 +03:00
Alexander Udalov
f447a860b1 Rename package jet -> kotlin in util.runtime (StorageManager)
org.jetbrains.jet.storage -> org.jetbrains.kotlin.storage
2015-01-08 23:32:08 +03:00
Alexander Udalov
f37e2f173d Rename package jet -> kotlin in util, util-runtime
org.jetbrains.jet.config -> org.jetbrains.kotlin.config
org.jetbrains.jet.utils -> org.jetbrains.kotlin.utils

Also move coreLib.kt to package 'org.jetbrains.kotlin.utils'
2015-01-08 23:32:08 +03:00
Alexander Udalov
8ca803775f Rename package jet -> kotlin in cli, cli-common
org.jetbrains.jet.cli -> org.jetbrains.kotlin.cli

Also fix some minor warnings
2015-01-08 23:32:07 +03:00
Alexander Udalov
54714e7fb4 Revert accidental KAnnotator Jps Plugin Test change in 2fdd63f 2015-01-07 18:23:44 +03:00
Alexander Udalov
759b5bd85c Move *OutputFile to package org.jetbrains.kotlin.backend.common.output 2015-01-06 05:15:13 +03:00
Alexander Udalov
329d9da8c8 Rename package jet -> kotlin in backend-common
org.jetbrains.jet.backend.common -> org.jetbrains.kotlin.backend.common
org.jetbrains.jet.codegen.bridges ->
org.jetbrains.kotlin.backend.common.bridges
2015-01-06 05:15:12 +03:00
Alexander Udalov
2e0fab3f98 Rename package jet -> kotlin in light-classes
org.jetbrains.jet.asJava -> org.jetbrains.kotlin.asJava

Also fix some minor warnings and deprecated API usage
2015-01-06 05:15:11 +03:00
Alexander Udalov
98faeb8647 Rename package jet -> kotlin in ide-compiler-runner
org.jetbrains.jet.compiler.runner -> org.jetbrains.kotlin.compilerRunner
org.jetbrains.jet.compiler -> org.jetbrains.kotlin.config
2015-01-06 05:15:11 +03:00
Alexander Udalov
3f7d2e461e Rename package jet -> kotlin in jps-plugin
org.jetbrains.jet.jps -> org.jetbrains.kotlin.jps
2015-01-05 19:54:21 +03:00
Alexander Udalov
36feb4dfdc Move module script-related code to org.jetbrains.kotlin.modules 2015-01-05 19:43:16 +03:00
Alexander Udalov
03e3969544 Rename package k2js -> kotlin.js in js.frontend
org.jetbrains.k2js -> org.jetbrains.kotlin.js
2015-01-05 05:10:33 +03:00
Alexander Udalov
36eb5eff1f Rename package k2js -> kotlin.js in js.tests
org.jetbrains.k2js.test -> org.jetbrains.kotlin.js.test
2015-01-05 05:10:26 +03:00
Alexander Udalov
2bc3aa2199 Rename package k2js -> kotlin.js in js.translator
org.jetbrains.k2js -> org.jetbrains.kotlin.js
2015-01-05 04:19:06 +03:00
Alexander Udalov
6f2a0b06e1 Rename package k2js -> kotlin.js in js.inliner
org.jetbrains.k2js.inline -> org.jetbrains.kotlin.js.inline
2015-01-05 04:19:05 +03:00
Alexander Udalov
c1bc4e0c46 Rename package jet -> kotlin in kotlin-android-plugin
org.jetbrains.jet.android -> org.jetbrains.kotlin.android
2015-01-05 04:19:04 +03:00
Alexander Udalov
1bf3ca2e26 Rename package jet -> kotlin in preloader and instrumentation
org.jetbrains.jet.preloading -> org.jetbrains.kotlin.preloading
2015-01-05 04:19:04 +03:00
Alexander Udalov
e73ffe76a0 Keep org.jetbrains.kotlin.** when shrinking compiler 2015-01-05 04:19:03 +03:00
Alexander Udalov
64c00efc92 Fix Instrumentation artifact dependencies and readme 2015-01-03 15:16:19 +03:00
Alexander Udalov
fbb7baa5db Minor, get rid of ClassSerializationUtil 2015-01-03 15:16:19 +03:00
Alexander Udalov
59c7171a21 Rename package jet -> kotlin in builtins-serializer
org.jetbrains.jet.utils.builtinsSerializer ->
org.jetbrains.kotlin.serialization.builtins
2015-01-03 15:16:18 +03:00
Alexander Udalov
fad40ac11e Rename package jet -> kotlin in ant
org.jetbrains.jet.buildtools.ant -> org.jetbrains.kotlin.ant

The old antlib.xml is kept for migration purposes
2015-01-03 15:16:17 +03:00
Alexander Udalov
b5c7f885a8 Rename package jet -> kotlin in grammar
org.jetbrains.jet.grammar -> org.jetbrains.kotlin.grammar
2015-01-03 13:00:38 +03:00
Alexander Udalov
2fdd63fa53 Rename package jet -> kotlin in kannotator-jps-plugin-test
org.jetbrains.jet.jps.build.kannotator ->
org.jetbrains.kotlin.jps.build.kannotator
2015-01-03 12:46:05 +03:00
Alexander Udalov
f58b151d58 Rename package jet -> kotlin in bare-plugin
org.jetbrains.jet.plugin.bare -> org.jetbrains.kotlin.plugin.bare
2015-01-03 12:41:47 +03:00
Alexander Udalov
b1809f8d40 Rename module jet.as.java.psi -> light-classes 2015-01-03 12:38:41 +03:00
Alexander Udalov
be95a4fee7 Remove temporary bootstrap hack 2015-01-03 12:32:25 +03:00
Alexander Udalov
5c9750ae6b Remove module integration-tests, merge into compiler-tests 2015-01-03 12:28:54 +03:00
Alexander Udalov
cd79c4573d Ant task: use preloader instead of AntClassLoader
Speeds up AntTaskJvmTest by 50%
2015-01-03 12:08:12 +03:00
Alexander Udalov
511b19fcfd Fix codegen tests on Android 2015-01-03 11:41:58 +03:00
Alexander Udalov
b4e71bb0b6 Minor, rename package in some j2k tests 2015-01-03 04:22:01 +03:00
Alexander Udalov
366f0daaa8 Rename package jet -> kotlin in j2k
org.jetbrains.jet.j2k -> org.jetbrains.kotlin.j2k

Also update calls to deprecated functions: size -> size(), length -> length(),
withIndices() -> withIndex()
2015-01-03 04:16:24 +03:00
Alexander Udalov
3c859caf2b j2k: flatten test cases and testData directory structure
Move j2k/test/tests -> j2k/tests, j2k/test/testData -> j2k/testData
2015-01-03 00:52:59 +03:00
Alexander Udalov
ed2f123b54 j2k: remove obsolete manifest 2015-01-03 00:24:51 +03:00
Alexander Udalov
7f90dc3934 Regenerate tests 2015-01-03 00:20:28 +03:00
Alexander Udalov
eb2f34e6cf Fix codegen tests on Android, update SpecialFiles 2015-01-03 00:19:04 +03:00
Alexander Udalov
11ff051924 Regenerate built-ins, keywords, operations map 2015-01-03 00:19:03 +03:00
Alexander Udalov
d5288b88fd Minor, fix double typo 2015-01-03 00:19:03 +03:00
Alexander Udalov
fcbfc53dc8 Rename package jet -> kotlin in injectors
org.jetbrains.jet.di -> org.jetbrains.kotlin.di
2015-01-03 00:19:02 +03:00
Alexander Udalov
4f8e6c1dcc Rename package jet -> kotlin in generators
org.jetbrains.jet.generators -> org.jetbrains.kotlin.generators
2015-01-03 00:19:02 +03:00
Alexander Udalov
80997acba3 Minor, extract constant "org.jetbrains.jet.di" 2015-01-02 20:45:44 +03:00
Alexander Udalov
159a2dc585 Rename package jet -> kotlin in injector-generator
org.jetbrains.jet.di -> org.jetbrains.kotlin.generators.di
2015-01-02 20:45:44 +03:00
Alexander Udalov
77be31c149 Move injector-generator under generators 2015-01-02 20:45:43 +03:00
Alexander Udalov
60fcaf5a6e Rename package jet -> kotlin in android-tests
org.jetbrains.jet.compiler.android -> org.jetbrains.kotlin.android.tests
2015-01-02 20:45:43 +03:00
Alexander Udalov
53079fd3f7 Upgrade year in copyright to 2015 2015-01-02 19:23:40 +03:00
Alexander Udalov
e58b8229be Assert kotlin-runtime.jar is present in tests 2015-01-02 18:38:19 +03:00
Nikolay Krasko
5a310237e7 Cache constructed scope for file. Don't recount it each time in additional function resolve. 2014-12-31 21:56:21 +03:00
Nikolay Krasko
31de60738a Temporary allow import 2014-12-31 21:56:20 +03:00
Nikolay Krasko
e65c0d44bb Reuse JavaPsiFacadeImpl impl for package caching and search in dumb mode + Add filter for packages 2014-12-31 21:56:20 +03:00
Nikolay Krasko
be008714fb Copy JavaPsiFacadeImpl version to modify it for Kotlin needs 2014-12-31 21:56:19 +03:00
Natalia Ukhorskaya
93d1dff181 Minor: make BaseGradleIT test abstract 2014-12-31 12:05:49 +03:00
Natalia Ukhorskaya
288b2e86ae Minor: rename 2014-12-31 12:05:48 +03:00
Natalia Ukhorskaya
4d48905ef1 Minor: fix warnings 2014-12-31 12:05:48 +03:00
Natalia Ukhorskaya
453c5752cb Minor: typo 2014-12-31 12:05:47 +03:00
Natalia Ukhorskaya
dfa30a7bb1 kotlin-gradle-plugin: remove maven-invoker-plugin used for tests 2014-12-31 12:05:47 +03:00
Natalia Ukhorskaya
292f82b767 Remove kotlin-gradle-plugin-test module 2014-12-31 12:05:46 +03:00
Natalia Ukhorskaya
5fbf440e33 kotlin-gradle-plugin: manage dependencies correctly 2014-12-31 12:05:45 +03:00
Nikita Skvortsov
8cf5d92b57 minor cleanup 2014-12-31 12:05:45 +03:00
Nikita Skvortsov
111791fa10 Move tests from core 2014-12-31 12:05:44 +03:00
Nikita Skvortsov
2a75d3f52a fix tests 2014-12-31 12:05:44 +03:00
Nikita Skvortsov
6f26972c50 fix tests 2014-12-31 12:05:43 +03:00
Nikita Skvortsov
f8c65e8a62 disconnect wrapper from core, delegate API calls using Gradle dynamic objects 2014-12-31 12:05:42 +03:00
Nikita Skvortsov
4e99a61aea fix compilation 2014-12-31 12:05:42 +03:00
Nikita Skvortsov
140bbe28fd move kotlin-gradle plugin classes from core to wrapper 2014-12-31 12:05:41 +03:00
Nikita Skvortsov
e6d6281a3f move java cross-compile-related code to kotlin2jvm task 2014-12-31 12:05:41 +03:00
Zalim Bashorov
619854a7a3 JS frontend: additional check for nativeSetter -- check that the return type is either Unit or a supertype of the second parameter's type. 2014-12-30 19:10:38 +03:00
Zalim Bashorov
76bafb9634 Added spec about JavaScript interop. 2014-12-30 17:30:05 +03:00
Zalim Bashorov
9869ae10e5 JS frontend: allow to omit body for native functions and initializer for native properties. Additionally suppress UNUSED_PARAM for new nativeX annotations too. 2014-12-29 21:37:18 +03:00
Zalim Bashorov
41dff74037 resolve/*Diagnostics* -> resolve/diagnostics/*Diagnostics*
And remove unused TraceUtil.java
2014-12-29 21:37:18 +03:00
Alexander Udalov
d4e90b5bc3 Regenerate tests 2014-12-29 19:32:10 +03:00
Alexander Udalov
e9badcbcc7 Rename AsmTypeConstants -> AsmTypes 2014-12-29 19:32:10 +03:00
Alexander Udalov
6cd6704bcf Remove obsolete codegen test data 2014-12-29 19:32:09 +03:00
Zalim Bashorov
7668f44655 JS lib: added hasNext to Kotlin.ListIterator and fixed next.
#KT-6506 Fixed

Additionally made abstract AbstractList::get and AbstractCollection::size.
2014-12-29 19:15:32 +03:00
Alexander Udalov
480f990c1d Preloader: HashMap constructor takes capacity, not expected size 2014-12-29 18:19:24 +03:00
Alexander Udalov
8306ccd8ec Preloader: extract nested classes to top-level 2014-12-29 18:19:24 +03:00
Alexander Udalov
9273b0dfec Preloader: support loading classpath dependencies from manifest
Move this logic from ide-compiler-runner. This fixes running 'kotlinc' CLI
compiler locally when the runtime is changed binary incompatibly
2014-12-29 18:19:23 +03:00
Alexander Udalov
91f110acd4 Preloader: support many resources by given name 2014-12-29 18:19:22 +03:00
Alexander Udalov
0d671141d0 Don't store class loader in CompilerEnvironment
Modules jps-plugin and ide-compiler-runner are loaded by the same class loader
2014-12-29 18:19:21 +03:00
Alexander Udalov
5e261e344e Move ExitCode to cli-common, simplify KotlinCompilerRunner
- check exit code's toString instead of integer code: more readable and stable
  this way
- call newInstance() on arguments' classes instead of pointless constants
2014-12-29 18:19:20 +03:00
Alexander Udalov
a14e0ac59e Simplify KotlinCompilerRunner and CompilerRunnerUtil 2014-12-29 18:19:19 +03:00
Alexander Udalov
9807643b0e Synchronize access to mutable class loader reference in CompilerRunnerUtil 2014-12-29 18:19:18 +03:00
Alexander Udalov
51e9675138 Include different runtime into plugin for bootstrap build 2014-12-29 18:19:18 +03:00
Alexander Udalov
ef1fef65c2 Minor, rename module to conform to naming style 2014-12-29 18:19:17 +03:00
Alexander Udalov
7de9a3f029 Load compiler dependencies in a separate class loader in IDE compiler runner
To be able to invoke the intermediate compiler built on the first step of
bootstrap: in contrast to the distributed compiler, it's incompatible with the
runtime produced by itself and should instead be run with the runtime in the
classpath which was used to compile it.

Drop the non-preloader mode of running compiler, because it would require using
a special parent-last class loader with exceptions specified by ClassCondition
2014-12-29 18:19:13 +03:00
Alexander Udalov
45c6d486fc Refactor CompilerRunnerUtil
Eliminate code duplication, add NotNull, make everything private, etc
2014-12-29 18:17:22 +03:00
Alexander Udalov
b8328f9190 Rename MessageRenderer constants 2014-12-29 18:17:21 +03:00
Alexander Udalov
a30a3f1926 Rework bootstrapping compiler with runtime in build.xml
Do not pack the runtime into the compiler on the first step of bootstrap, but
rather leave it as a separate file named kotlin-runtime-internal-bootstrap.jar.

This new solution will allow compiler to use its own classes from "core", not
the ones used by the runtime it depends on
2014-12-29 18:17:21 +03:00
Alexander Udalov
ffbae46e3c Compile kotlin-runtime-minimal.jar, run proguard against it
ProGuard complains if we're trying to shrink compiler with the full runtime in
dependencies because for the compiler produced on the first step of bootstrap
these two jars contain conflicting classes. This won't matter in the final
distribution because we will strip 'core' modules from compiler.jar. But this
matters in the first step because core will be different in the compiler (used
to load compiled class files) and in the reflection (used to introspect symbols
at runtime).

kotlin-runtime-minimal.jar still contains the complete reflection API and some
stub implementations in module 'reflection.stub.jvm', but doesn't have core, so
it won't cause a proguard error
2014-12-29 18:17:10 +03:00
Alexander Udalov
6c145de39e Minor, remove pointless comment and broken URL 2014-12-29 18:00:18 +03:00
Alexander Udalov
14dab749a2 Use reflection in Ant task to invoke compiler
This will allow a more controlled management of the runtime that the compiler
is linked against. Incidentally this also allows Ant task to use any of
compiler arguments via <compilerarg> because Ant task is now just a facade for
the CLI compiler.

The test "wrongArguments" is deleted because the full compiler usage is now
printed out on a wrong <compilerarg>, and this will become inconvenient to
update with each change in compiler arguments

 #KT-5618 Fixed
2014-12-29 18:00:18 +03:00
Alexander Udalov
3bde619ca3 Add test for obsolete issue
#KT-4434 Obsolete
2014-12-29 18:00:17 +03:00
Alexander Udalov
91754c0c4b Move test files to test data root 2014-12-29 18:00:16 +03:00
Nikolay Krasko
1ec7104132 Search in index under read lock to prevent entering to isDumb() mode (EA-63656) 2014-12-29 17:55:22 +03:00
Nikolay Krasko
3d254748b4 Minor: better function used and reformat 2014-12-29 17:55:21 +03:00
Valentin Kipyatkov
d297f4ad8f Minor 2014-12-29 17:27:30 +03:00
Valentin Kipyatkov
4b2ee7e645 Fixed KT-6429 Wrong replacement range in smart completion in some particular case
#KT-6429 Fixed
2014-12-29 17:27:30 +03:00
Valentin Kipyatkov
51678d0a45 KT-5874 Support code completion of label names after "continue@" and "break@"
#KT-5874 Fixed
2014-12-29 17:27:30 +03:00
Valentin Kipyatkov
4800a02e69 More correct list of keywords with no space after 2014-12-29 17:27:30 +03:00
Valentin Kipyatkov
0b687ddb05 Added tests for space insertion after return@xxx + do not overwrite space after keyword 2014-12-29 17:27:30 +03:00
Valentin Kipyatkov
e39443d53a Refactored tests for keywords insertion to be all generated 2014-12-29 17:27:30 +03:00
Valentin Kipyatkov
276b99857a Insertion of space after "return" depending on return type 2014-12-29 17:27:29 +03:00
Valentin Kipyatkov
cdb5ec3492 KT-5875 Support code completion after "return@"
#KT-5875 Fixed
2014-12-29 17:27:29 +03:00
Valentin Kipyatkov
95285f7a2e Auto-popup completion after @ 2014-12-29 17:27:29 +03:00
Valentin Kipyatkov
39a5486db8 Completion of this@...: supported labeled function literals 2014-12-29 17:27:29 +03:00
Valentin Kipyatkov
05be100f53 Corrected test data which was incorrect before 2014-12-29 17:27:29 +03:00
Valentin Kipyatkov
3b0fe8831b Code completion of "this@..."
#KT-2035 Fixed
2014-12-29 17:27:29 +03:00
Valentin Kipyatkov
2adcaef39c Completion: use class icon instead of method icon for instantiation 2014-12-29 17:27:29 +03:00
Valentin Kipyatkov
ddd63d69e9 KT-6442 Completion of inner class name contains outer name
#KT-6442 Fixed
2014-12-29 17:27:28 +03:00
Valentin Kipyatkov
b94e9e63c3 KT-6534 Code completion of global function does not insert import in very specific context
#KT-6534 Fixed
2014-12-29 17:27:28 +03:00
Dmitry Jemerov
eca8ed2768 Merge pull request #541 from JetBrains/rr/yole/coverageView2
Implement APIs added in IDEA 14.1 for Packages view and Coverage view to work
2014-12-29 14:49:14 +01:00
Dmitry Jemerov
e0677dffd4 a bit more cleanup 2014-12-29 14:48:26 +01:00
Dmitry Jemerov
d1123e116f refactor for clarity; don't ignore XxxPackage files not related to Kotlin 2014-12-29 13:57:56 +01:00
Dmitry Jemerov
553fd4dd12 code review; adapted to IDEA API change (Predicate -> Condition) 2014-12-29 12:29:01 +01:00
Andrey Breslav
42113b5e58 Filtering error types and accounting for platform types when computing intersections
KT-6508 Build impossible because of NoSuchElementException

 #KT-6508 Fixed
2014-12-29 14:13:14 +03:00
Svetlana Isakova
2d1891c63f Minor: moved checkTraitRequirements 2014-12-27 15:15:11 +03:00
Svetlana Isakova
b8cef2925f Refactoring: simplified resolveFunctionCall
Extracted resolveCallForConstructor, resolveCallForThisExpression
2014-12-27 00:55:45 +03:00
Svetlana Isakova
333a91395a Moved TailRecursionKind to cfg package 2014-12-27 00:55:44 +03:00
Svetlana Isakova
509a8adae5 Refactoring: moved capturing in closure check to call resolver extension 2014-12-27 00:55:44 +03:00
Svetlana Isakova
bc060dd145 Moved call resolver extensions to subpackage 2014-12-27 00:55:43 +03:00
Svetlana Isakova
37abdc2ca6 Rewritten captured type approximation test
Approximation bounds may be non-trivial both (in this case we ignore 'in' projection);
no need for special interpretation of 'Nothing?'
2014-12-27 00:55:28 +03:00
Svetlana Isakova
7daf9b53ce Minor: added a comment 2014-12-27 00:55:27 +03:00
Svetlana Isakova
74a08c9747 Added tests for simple approximation (of Captured(out/in Int)) 2014-12-27 00:55:26 +03:00
Svetlana Isakova
9d09a4d1b4 Fixed message for TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH error 2014-12-27 00:55:26 +03:00
Svetlana Isakova
7b09e85717 Added check for incompatible variance modifiers and repeated modifiers 2014-12-27 00:55:25 +03:00
Svetlana Isakova
d2becce1ac Make vararg argument of java annotation have 'out' type 2014-12-27 00:55:23 +03:00
Svetlana Isakova
d1556331ef Simplified signatures propagation for vararg types
(do not change flexible types)
2014-12-27 00:55:23 +03:00
Svetlana Isakova
179c9ef2d6 Refactoring. Moved error checks (for abstract, super)
to CandidateResolver

 Added error SUPER_CANT_BE_EXTENSION_RECEIVER (it was SUPER_IS_NOT_AN_EXPRESSION)
2014-12-27 00:55:22 +03:00
Svetlana Isakova
62c8a6f79a Fixed resolve for callable references
functions and properties have the same priority
2014-12-27 00:55:22 +03:00
Alexander Udalov
f0bb6c58fc Add 'build-bootstrap-artifacts' target to build.xml
Will be used in bootstrap build; no reason to build kotlin-for-upsource and
zip-test-data there
2014-12-26 22:55:32 +03:00
Alexander Udalov
fa9e1ca602 Fix runtime for kotlin-for-upsource and simplify classpath 2014-12-26 22:52:52 +03:00
Alexander Udalov
11dfdfc123 Minor, add test for obsolete issue
#KT-4228 Obsolete
2014-12-26 22:52:39 +03:00
Valentin Kipyatkov
18a536c846 Added test for correct package names resolve inside local classes 2014-12-26 16:23:19 +03:00
Valentin Kipyatkov
b61b45f794 Renamed class + inherited NoSubpackagesInPackageScope from adapter class to get printScopeStructure implementation 2014-12-26 16:23:19 +03:00
Valentin Kipyatkov
a383a82ddd No subpackages of current package resolved by short name 2014-12-26 16:23:19 +03:00
Valentin Kipyatkov
817b86a820 Temporary added explicit imports of java.util.Collections into stdlib 2014-12-26 16:23:18 +03:00
Valentin Kipyatkov
0b701950ac Removed js package usages 2014-12-26 15:45:01 +03:00
Valentin Kipyatkov
6275a19a10 Fixing compilation 2014-12-26 15:45:01 +03:00
Valentin Kipyatkov
1f17d7adcd Changed language sematics: imports with '*' do not import packages anymore 2014-12-26 15:45:01 +03:00
Valentin Kipyatkov
d540f3b724 JetScope.getAllDescriptors made final 2014-12-26 15:45:01 +03:00
Andrey Breslav
06c5be6489 Fix tests: No dangling annotations in stubs 2014-12-26 15:10:13 +03:00
Zalim Bashorov
6c6ced2442 Minor in JS lib: avoid to use undefined literal which may be over overlapped. 2014-12-26 14:20:21 +03:00
Zalim Bashorov
51724e4b0d Drop some obsolete TODOs in MapJsTest 2014-12-26 14:20:21 +03:00
Zalim Bashorov
9ab045e598 JS declarations: added eval, typeof, undefined.
#KT-4136 Fixed
2014-12-26 14:20:20 +03:00
Nikolay Krasko
0988d6cace Update to idea 139.872.1 2014-12-26 14:00:12 +03:00
Michael Nedzelsky
eded72d633 fix KT-6192: VerifyError when using spreads with primitive arrays
#KT-6192 Fixed
2014-12-25 22:07:24 +03:00
Andrey Breslav
fb7fe81a85 Support navigation to dangling annotations in the IDE 2014-12-25 22:02:23 +03:00
Andrey Breslav
89e1588e13 LIGHT_CLASSES mode for scripts
- Do not generate constructor bodies
- Do not generate script class when package contents are requested
- NOT DONE: generate script class when its name is requested
2014-12-25 22:02:23 +03:00
Andrey Breslav
95f5e8d08c Fix exception from completion and other services 2014-12-25 22:02:23 +03:00
Valentin Kipyatkov
1fda9ed29f J2K: fixed duplicated open modifier generated 2014-12-25 19:55:29 +03:00
Andrey Breslav
292cb9baa9 Resolve dangling annotations in files and class bodies 2014-12-25 19:42:38 +03:00
Alexey Sedunov
e296390dd6 Introduce Variable: Do not create separate template to edit type reference
#KT-4314 Fixed
2014-12-25 17:12:19 +03:00
Alexey Sedunov
46ceed8586 Rename: Show error message when trying to rename dynamically invoked function/property 2014-12-25 17:12:18 +03:00
Alexey Sedunov
47aa0cba7d Change Signature: Do not fail on dynamic calls. Show error messages instead
#KT-6529 Fixed
2014-12-25 17:12:17 +03:00
Alexey Sedunov
c7a71827a7 Introduce Variable: Amend semicolons to updated expression
#KT-2098 Fixed
2014-12-25 17:12:16 +03:00
Pavel V. Talanov
2fe77d2c6c Fix problem with several runtimes configured 2014-12-25 15:49:49 +03:00
Nikolay Krasko
63e957559e Add warning when non-empty scope without project is used for IDEVirtualFileFinder 2014-12-24 18:39:57 +03:00
Nikolay Krasko
5041f00fea Do not wrap empty scope and fix kotlinSourceAndClassFiles() 2014-12-24 18:39:55 +03:00
Nikolay Krasko
cdeaa484bc Create modules with projects 2014-12-24 18:39:45 +03:00
Nikolay Krasko
2a417e822b Check for dumb mode before evaluation start 2014-12-24 18:29:59 +03:00
Andrey Breslav
0b01667ad1 Incorrect assertions removed: these methods are used by completion
Completion correctly proposes packages in type position, as part of an incomplete fqName
2014-12-24 17:53:02 +03:00
Dmitry Jemerov
732c3fac2f Implement APIs added in IDEA 14.1 for Packages view and Coverage view to work. 2014-12-24 15:32:26 +01:00
Pavel V. Talanov
d6881b78d2 Add hack to avoid stub ast mismatch when decompiling libraries built with M9 compiler 2014-12-24 16:49:59 +03:00
Pavel V. Talanov
e9ebf4e3c1 Cls stub builder test: test extension on function type 2014-12-24 16:49:58 +03:00
Valentin Kipyatkov
9f6d32f1f6 Fixed EA-63622 - IAE: FqName.validateFqName 2014-12-24 15:48:42 +03:00
Valentin Kipyatkov
64da34e78b Corrections after review + one more test added 2014-12-24 15:48:42 +03:00
Valentin Kipyatkov
bfdbbe0247 KT-6407 Completing function with "tab" (replace) shouldn't insert parentheses when type arguments are present
#KT-6407 Fixed
2014-12-24 15:48:42 +03:00
Valentin Kipyatkov
6e6289435f Fixed exception 2014-12-24 15:48:42 +03:00
Valentin Kipyatkov
91220faf06 KT-6122 Code completion in when in enum extension methods suggests non-qualified enum entry names
#KT-6122 Fixed
2014-12-24 15:48:42 +03:00
Valentin Kipyatkov
49b36cc942 Fixed EA-62981 - IOE: PsiJavaParserFacadeImpl.createExpressionFromText 2014-12-24 15:47:07 +03:00
Nikolay Krasko
ba02112b3c Rethrow IndexNotReadyException 2014-12-24 15:40:49 +03:00
Nikolay Krasko
5745a1624b Take read action instead of simply asserting it 2014-12-24 15:40:47 +03:00
Valentin Kipyatkov
24f79e4817 Fixed EA-63488 2014-12-24 15:36:24 +03:00
Pavel V. Talanov
9164c77a7e Cache java file stub for light classes build for decompiled files 2014-12-24 14:57:18 +03:00
Pavel V. Talanov
007053489c Fail on duplicate file when packing runtime sources for jvm
Fail on duplicate when packing kotlin-jslib.jar and kotlin-jslib-sources.jar
Move files from root of stdlib to avoid existing conflicts
Rename System to SystemJvm to avoid including to js lib
2014-12-24 14:55:21 +03:00
Valentin Kipyatkov
f1840a4f39 Fixed detection of parenthesis needed (otherwise it added them around if when not needed) 2014-12-24 14:19:26 +03:00
Valentin Kipyatkov
b1372f0d9e Fixed if-statements with else branch handling 2014-12-24 14:19:26 +03:00
Valentin Kipyatkov
3db51cfcd8 KT-5927 Join Lines could merge nested if's
#KT-5927 Fixed
2014-12-24 14:19:26 +03:00
Valentin Kipyatkov
bc631d7aee Fixed Join LInes on a block when there is a space in the end of line 2014-12-24 14:19:25 +03:00
Valentin Kipyatkov
478b5070ef KT-6019 Join lines should remove code block in when entry body
#KT-6019 Fixed
2014-12-24 14:19:25 +03:00
Valentin Kipyatkov
0823c1528a Fixed 2 bugs in Join Lines 2014-12-24 14:19:25 +03:00
Valentin Kipyatkov
37e40267fe KT-6521 Expand selection works wrong on a call inside for loop's range
KT-6518 Extend selection not working for expression in if

 #KT-6521 Fixed
 #KT-6518 Fixed
2014-12-24 14:17:43 +03:00
Natalia Ukhorskaya
94466da61b Evaluate expression: render InvocationExceptions correctly 2014-12-24 13:48:17 +03:00
Natalia Ukhorskaya
b6095eca58 Eval4j: return ObjectValue as argument of ExceptionThrown 2014-12-24 13:48:16 +03:00
Natalia Ukhorskaya
a894979c81 Extract function: add default name for parameter 2014-12-24 13:48:16 +03:00
nbilyk
87ab271f58 Removed redundant native annotations from canvas.kt 2014-12-24 12:55:34 +03:00
nbilyk
1edd48daa2 #KT-6467 Fixes Removed invalid drawImage signatures, renamed parameters
#KT-6467 fixed
2014-12-24 12:55:19 +03:00
Zalim Bashorov
a05ba64f93 Gradle plugin: fix tests. 2014-12-24 12:29:38 +03:00
Zalim Bashorov
35e2a46ae0 Minor in Gradle plugin: don't copy kotlin.js 2014-12-24 12:29:37 +03:00
Zalim Bashorov
1e4100afd5 Gradle plugin: ignore non kotlin-js libraries in dependencies. 2014-12-24 12:29:37 +03:00
Zalim Bashorov
eac0e99e65 Minor cleanup in Gradle plugin. 2014-12-24 12:29:36 +03:00
Zalim Bashorov
5e495d6bd9 Fix maven build. 2014-12-24 12:29:10 +03:00
Zoltan Nagy
e08fa1cab2 Kotlin2Js Gradle plugin tests 2014-12-24 12:27:55 +03:00
Zoltan Nagy
b1723668ce Kotlin2Js Gradle plugin implementation 2014-12-24 12:27:55 +03:00
Nikolay Krasko
ec47cb57c5 Minor: check cancel before each marker count 2014-12-24 01:45:37 +03:00
Nikolay Krasko
fac3b0068b Don't fail on index update when counting paths for bad abi roots
EA-63535
2014-12-24 01:45:34 +03:00
Nikolay Krasko
0b300bd7fb Minor: Fix warnings 2014-12-24 01:45:31 +03:00
Nikolay Krasko
8f84daf31e Show Kotlin icons in dumb mode 2014-12-24 01:45:26 +03:00
Nikolay Krasko
b22726d424 Fix "Index not ready" in structure view 2014-12-24 01:45:24 +03:00
Nikolay Krasko
6b71a99c12 Don't run processTransferableData() in dumb mode 2014-12-24 01:45:22 +03:00
Nikolay Krasko
b7159ab13b Remove outdated hint that was popping out on declarations
Sometimes it was clashed with warnings and errors

EA-63522
2014-12-24 01:45:19 +03:00
Nikolay Krasko
efa6cdc996 Change marker classes. Use only Java classes as to determine runtime even if abi version is outdated. 2014-12-24 01:45:17 +03:00
Valentin Kipyatkov
c882e902c3 Override property calls super when its not abstract 2014-12-23 21:38:49 +03:00
Valentin Kipyatkov
5f2446d889 Implement property uses throw UnsupportedOperationException() instead of default value or ? 2014-12-23 21:38:49 +03:00
Alexey Sedunov
367b99a156 Extraction refactorings: Do not suggest extraction of type elements
#KT-3994 Fixed
2014-12-23 20:43:23 +03:00
Alexey Sedunov
1e5769acfd Introduce Variable: Remove braces from replaced string template entries when possible
#KT-5310 Fixed
2014-12-23 20:43:22 +03:00
Alexey Sedunov
7d31c562b3 Remove braces from block string template entry: Simplify implementation 2014-12-23 20:43:20 +03:00
Alexey Sedunov
82579f489b Introduce Variable: Convert property accessor body to block when needed 2014-12-23 20:43:20 +03:00
Alexey Sedunov
05a0481efa Formatter: Fix spacing between '=' and '{' in property accessors 2014-12-23 20:43:19 +03:00
Alexey Sedunov
e76792d4f2 Introduce Variable: Do not delete original expression if its value is used in enclosing expression 2014-12-23 20:43:18 +03:00
Alexey Sedunov
6084352d37 Introduce Variable: Properly convert function body to block when needed
#KT-5353
2014-12-23 20:43:17 +03:00
Alexey Sedunov
c73253259f PSI: Move getEqualsToken() method to JetDeclarationWithBody 2014-12-23 20:43:16 +03:00
Alexey Sedunov
a9a30a1b7d PSI Pattern Matching: Respect type arguments when matching calls
#KT-6496 Fixed
2014-12-23 20:43:15 +03:00
Zalim Bashorov
7579471859 JS stdlib: fixed Set::equals. 2014-12-23 20:01:21 +03:00
Ilya Ryzhenkov
217e25855e Implement Collection<T>.size() on map's values() in JS 2014-12-23 20:00:02 +03:00
Ilya Ryzhenkov
d908678dcf Take into account collection sizes when possible #KT-6180 2014-12-23 20:00:01 +03:00
Ilya Ryzhenkov
4cd2ba1e30 Fix Array<out> variance in stdlib #KT-6482 Fixed 2014-12-23 20:00:01 +03:00
Ilya Ryzhenkov
377988cb7b toSortedMap() without comparator requires non-null keys #KT-6509 Fixed 2014-12-23 20:00:00 +03:00
Ilya Ryzhenkov
071eb87f27 Remove unnecessary constraint from filterIsInstance(Class<R>) signature #KT-6516 Fixed 2014-12-23 20:00:00 +03:00
Andrey Breslav
93326d8643 Added centralized positioning for front-end exceptions 2014-12-23 18:37:40 +03:00
Andrey Breslav
e4ce723eae Increase ReservedCodeCacheSize in tests 2014-12-23 18:37:40 +03:00
Michael Bogdanov
db40a5a3d8 Skip local declarations in visibility publicity checking 2014-12-23 16:28:44 +03:00
Michael Bogdanov
9e864f3c36 Fix java visibility publicity
#KT-6478 Fixed
2014-12-23 16:28:44 +03:00
Michael Nedzelsky
5013abe8cd JS backend: fix KT-6401 JS: wrong result for code with many spread operator
#KT-6401 Fixed
2014-12-23 16:02:40 +03:00
Michael Nedzelsky
4b2d3ba3d0 JS backend: tests for KT-6401 JS: wrong result for code with many spread operator 2014-12-23 16:02:38 +03:00
Andrey Breslav
bdefbc182a Take declaration's origin element before looking for declaration by descriptor 2014-12-23 15:18:48 +03:00
Andrey Breslav
5a7aa65d53 Failing tests temporarily disabled 2014-12-23 15:18:47 +03:00
Andrey Breslav
6728a384e4 KT-4881 Annotation resolved to package should be compile-time error
#KT-4881 Fixed
2014-12-23 15:18:47 +03:00
Andrey Breslav
8ff5cf62cc Generate annotations from descriptors, not PSI 2014-12-23 15:18:46 +03:00
Andrey Breslav
830e4dfd98 Pointless annotations removed 2014-12-23 15:07:45 +03:00
Andrey Breslav
0880c20614 Rename ONLY_CLASSES -> ONLY_CLASSES_AND_PACKAGES 2014-12-23 15:07:45 +03:00
Andrey Breslav
e86b412a61 Merge pull request #537 from JetBrains/rr/nik
fixed typo in file name
2014-12-23 15:03:18 +03:00
Valentin Kipyatkov
db6bf787fc Fixed NPEs 2014-12-23 14:52:46 +03:00
nik
2a60c6d759 fixed typo in file name 2014-12-23 14:41:00 +03:00
Natalia Ukhorskaya
9283daccb6 Debugger: fix evaluate expression for traits 2014-12-23 14:40:28 +03:00
Natalia Ukhorskaya
704f8d1446 Debugger: use intellij method to invoke method (should mute breakpoint during invocation) 2014-12-23 14:40:28 +03:00
Natalia Ukhorskaya
8896aa93b4 Fix NPE in ReferenceVariantsHelper
#KT-6500 Fixed
2014-12-23 14:40:27 +03:00
Natalia Ukhorskaya
e35b960eb5 Stepping: do not write line numbers for call arguments
#KT-3080 Fixed
2014-12-23 14:40:26 +03:00
Natalia Ukhorskaya
c66af565f6 Make LineNumberTest auto-generated 2014-12-23 14:40:25 +03:00
Natalia Ukhorskaya
449ebc35ef Debugger: add ability to evaluate expressions on closing bracket 2014-12-23 14:40:25 +03:00
Natalia Ukhorskaya
261ced59c5 Correct labels for local variables 2014-12-23 14:40:24 +03:00
Natalia Ukhorskaya
1422cc4794 Minor: replace deprecated function call 2014-12-23 14:40:23 +03:00
Natalia Ukhorskaya
0dcb5b05b6 Local variables should be visible on return statement in debugger
#KT-6248 Fixed
2014-12-23 14:40:23 +03:00
Valentin Kipyatkov
311a3a75c8 Code completion: do not list instance members from context with no instance
#KT-6388 Fixed
 #KT-4422 Fixed
 #KT-5516 Fixed
2014-12-22 18:26:03 +03:00
Pavel V. Talanov
d33e60b876 Reintroduce change erroneously reverted in 2fec18ffa7 2014-12-22 16:05:15 +03:00
Pavel V. Talanov
69ec789013 Support PRIVATE_TO_THIS in cls stub builder 2014-12-22 16:05:15 +03:00
Svetlana Isakova
6489ff2cb6 Ignore constraint from implicit 'in Nothing'
From Array<T> <: Array<out Int> we may generate T >: Nothing (implicit) and T <: Int (explicit).
Without ignoring we'll infer 'Nothing' for T too often
2014-12-22 12:04:42 +03:00
Pavel V. Talanov
70f6fcadc9 Increase stub version 2014-12-21 14:23:43 +03:00
Pavel V. Talanov
15add4bd64 Remove no longer meaningful utils from JavaResolverUtils 2014-12-21 14:23:42 +03:00
Pavel V. Talanov
24f1635d2c Filter out duplicate navigation targets for references in library source 2014-12-21 14:23:42 +03:00
Pavel V. Talanov
7684e08000 Update TypeInstantiationItems
To maintain old behaviour
2014-12-21 14:23:41 +03:00
Pavel V. Talanov
e7e3ac1318 ProjectRootsUtil: fix check for library class and source file for js projects
Update JetSourceFilterScope
Extract JsProjectDetector
2014-12-21 14:23:40 +03:00
Pavel V. Talanov
fbefd08de3 Structure view for compiled kotlin files 2014-12-21 14:23:39 +03:00
Pavel V. Talanov
01804a8853 Use module file index in getModuleInfo to determine source/test module info
Do not include files that are in content of module but are not in source content
Do not log error in case there is compiled kotlin file in source content
2014-12-21 14:23:39 +03:00
Pavel V. Talanov
2fec18ffa7 Limit search scope in DecompiledNavigationUtils
To avoid finding classes that are not under relevant roots
2014-12-21 14:23:38 +03:00
Pavel V. Talanov
08241f508e KotlinDirectInheritorsSearcher: exclude library source from search 2014-12-21 14:23:37 +03:00
Pavel V. Talanov
063870d4de Enable DeclarationHintSupport for decompiled kotlin files 2014-12-21 14:23:36 +03:00
Pavel V. Talanov
14649337ae Enable basic highlighting in decompiled kotlin files 2014-12-21 14:23:36 +03:00
Pavel V. Talanov
256e9a6b86 Refactor ProjectRootsUtil
Account for cases when there library source files under classes root
2014-12-21 14:23:35 +03:00
Pavel V. Talanov
ba22c3d790 Remove all usages of JetFromJavaDescriptorHelper
Rewrite some utilities in KotlinIndicesHelper
ResolutionFacade#resolveToDescriptor() should be avoided on psi from compiled kotlin for now
2014-12-21 14:23:35 +03:00
Pavel V. Talanov
dbdf3c0e98 Update JetQuickDocumentationProvider 2014-12-21 14:23:34 +03:00
Pavel V. Talanov
5573887c29 Minor: Add TODO 2014-12-21 14:23:33 +03:00
Pavel V. Talanov
571e71606c getModuleInfo for KotlinLightClassForDecompiledDeclaration 2014-12-21 14:23:33 +03:00
Pavel V. Talanov
f72f67ed97 Update NavigateToDecompiledLibraryTest 2014-12-21 14:23:32 +03:00
Pavel V. Talanov
55589a32da NavigateFromLibrarySourcesTest: update test for library source light classs 2014-12-21 14:23:32 +03:00
Pavel V. Talanov
8d01c433f0 Build light classes for compiled kotlin files
This is needed for kotlin binaries to be resolved from java code
2014-12-21 14:23:31 +03:00
Pavel V. Talanov
ec4f506f8f Minor: move some code to super class in Kotlin light classes 2014-12-21 14:23:31 +03:00
Pavel V. Talanov
eb1feeb480 Tests for kotlin nested class members completion from java 2014-12-21 14:23:30 +03:00
Pavel V. Talanov
56e3983dc9 Move and rename JavaElementFinderMultiFileTest
It is now relevant for IDE only
2014-12-21 14:23:30 +03:00
Pavel V. Talanov
64549b5dd3 Update DecompiledTextForWrongAbiVersionTest 2014-12-21 14:23:29 +03:00
Pavel V. Talanov
15b2977b85 Refactor: refine API of LightClassGenerationSupport
Move some specific code to IDELightClassGenerationSupport
2014-12-21 14:23:28 +03:00
Pavel V. Talanov
33fc241158 Rework go to symbol/class and getNavigationElement() for kotlin declarations
Based on work by geevee
2014-12-21 14:23:28 +03:00
Pavel V. Talanov
5676b0bf7c Minor: add another mode to JetSourceFilterScope 2014-12-21 14:23:27 +03:00
Pavel V. Talanov
79ce7135a4 Update AbstractDecompiledTextTest 2014-12-21 14:23:27 +03:00
Pavel V. Talanov
6cf14f5500 Update JetClassFileViewProvider: JetClsFile is Kotlin compiled file 2014-12-21 14:23:26 +03:00
Pavel V. Talanov
6362336208 Test stubs for compiled Kotlin files 2014-12-21 14:23:26 +03:00
Pavel V. Talanov
afc6ba5e16 Build kotlin stubs for compiled Kotlin files
This means that JetPsi would be built for compiled kotlin files
2014-12-21 14:23:25 +03:00
Pavel V. Talanov
e9fa9bac47 Minor: Extract LoggingErrorReporter 2014-12-21 14:23:24 +03:00
Pavel V. Talanov
e20dd42aa4 Refactor stubs:
Convert all interface classes to kotlin and move them into one file
Convert some of Impl classes
Fix typo: hasValOrValNode
Extract ModifierMaskUtils
Minors
2014-12-21 14:23:24 +03:00
Pavel V. Talanov
72aba2b758 Change default parameter rendering in decompiled text
So the code does not contain syntax errors
2014-12-21 14:23:23 +03:00
Pavel V. Talanov
d0479aa61b DecompiledTextFactory: use own implementation of type normalizer
Do not rely on IDE utils
This makes implementing cls stub builder easier
2014-12-21 14:23:22 +03:00
Pavel V. Talanov
41f2c71081 Refactor: Extract and expose local class data finder as separate class 2014-12-21 14:23:22 +03:00
Pavel V. Talanov
9e784e7018 Minor: Add some utils to KotlinBuiltIns 2014-12-21 14:23:21 +03:00
Evgeny Gerashchenko
c6c3e5a4c6 Updated test data according to JPS. Behavior is still wrong, but it is work in progress on IDEA side. 2014-12-20 15:06:53 +03:00
Natalia Ukhorskaya
c6d134d63c Debugger: change usage of getSourcePosition method to SourcePositionManager
(cherry picked from commit f1c4e36)
2014-12-20 15:06:03 +03:00
Zalim Bashorov
c6777db64f Update to IDEA 14.0.3 EAP (139.791.2) 2014-12-20 15:06:03 +03:00
Andrey Breslav
633a4aa8f2 Self-types marked as unsupported 2014-12-19 20:36:16 +03:00
Nikolay Krasko
f8dc0d028d Remove warning about long look-ahead
It's do a annoying warn when there's a code like this:

{
  call(params)
  call(params)
  call(params)
}
2014-12-19 17:29:24 +03:00
Nikolay Krasko
db488ad295 Add utility function for getting text with context 2014-12-19 17:29:24 +03:00
Michael Nedzelsky
98fde07c9e fix check in KotlinMavenConfigurator.isConfigured 2014-12-19 16:14:52 +03:00
Alexander Udalov
6793464cd0 Drop obsolete code in built-in serialization 2014-12-19 14:41:51 +03:00
Alexander Udalov
a6566139ee Minor, fix style issues in ant tasks 2014-12-19 14:38:18 +03:00
Alexander Udalov
444ac32f98 Minor, rename JS Ant tasks
To be able to use the build file from the terminal conveniently, make names
shorter and avoid autocompletion conflict with "compiler"
2014-12-19 14:37:47 +03:00
Alexander Udalov
b27d3e91d3 Avoid redefining kotlin2js task in "ant jslib"
This helps to specify custom runtime for the newly built kotlin2js (which is
supposed to be different for the two bootstrapping steps). Also now it's not
required to launch ant-tools task before jslib to build JS library
2014-12-19 14:37:47 +03:00
Alexander Udalov
865b663015 Minor style fixes in ParentLastURLClassLoader 2014-12-19 14:37:47 +03:00
Alexander Udalov
0401b65ae4 Use findLoadedClass instead of hand-written cache in ParentLastURLClassLoader 2014-12-19 14:37:46 +03:00
Alexander Udalov
bcf6a885d8 Drop "+StdLib" from manifest entries 2014-12-19 14:37:46 +03:00
Alexander Udalov
4358b3fbc3 Do not use private Sun API in preloader 2014-12-19 14:37:46 +03:00
Nikolay Krasko
5777b23955 Avoid recounting auto-import suggesting for outdated quick-fix objects 2014-12-19 01:41:35 +03:00
Denis Zharkov
e479956f57 Note in specs about replacing reified TP with primitives 2014-12-18 21:12:52 +03:00
Denis Zharkov
04e560bc74 Get reified signature from JetTypeMapper
#KT-6485 Fixed
2014-12-18 21:12:52 +03:00
Alexey Sedunov
6df91fdda7 Change Signature: Remove useless indentation 2014-12-18 21:06:16 +03:00
Alexey Sedunov
ec608c5db2 Change Signature: Retain formatting of existing parameters when parameter count/order changes
#KT-6412 Fixed
2014-12-18 21:06:15 +03:00
Alexey Sedunov
ec5a01be31 Change Signature: Translate JetChangeInfo to Kotlin 2014-12-18 21:06:14 +03:00
Alexey Sedunov
2927fc9ede Change Signature: Rename JetChangeInfo.java to .kt to keep history 2014-12-18 21:06:13 +03:00
Alexey Sedunov
6544294f8f Change Signature: Translate JetParameterInfo to Kotlin 2014-12-18 21:06:12 +03:00
Alexey Sedunov
04a56afa23 Change Signature: Rename JetParameterInfo.java to .kt to keep history 2014-12-18 21:06:11 +03:00
Alexey Sedunov
17d5e220bb Change Signature: Translate JetMethodDescriptor.java,
JetChangeSignatureData.java to Kotlin
2014-12-18 21:06:10 +03:00
Alexey Sedunov
9d3ebb9695 Change Signature: Rename JetMethodDescriptor.java, JetChangeSignature.java to .kt to keep history 2014-12-18 21:06:09 +03:00
Alexey Sedunov
adb1155b6d Minor: Replace deprecated function 2014-12-18 21:06:08 +03:00
Alexey Sedunov
22e258dbee Change Signature: Translate JetUsagesViewDescriptor to Kotlin 2014-12-18 21:06:07 +03:00
Alexey Sedunov
a1cab8cd8e Change Signature: Rename JetUsagesViewDescriptor.java to .kt to keep history 2014-12-18 21:06:06 +03:00
Alexey Sedunov
5e34308a08 Change Signature: Translate JetValVar to Kotlin 2014-12-18 21:06:05 +03:00
Alexey Sedunov
fe455df001 Change Signature: Drop JetGeneratedInfo class (unused so far) 2014-12-18 21:06:04 +03:00
Alexey Sedunov
dd647416f8 Find Usages: Change .text extension to .txt in test data 2014-12-18 21:06:02 +03:00
Evgeny Gerashchenko
c02d850334 Minor. Reverted optimized import in generated test 2014-12-18 21:28:14 +04:00
Valentin Kipyatkov
eb35827e9a More clear code 2014-12-18 19:02:17 +03:00
Valentin Kipyatkov
7893b1d83f KT-5896 Select Word should always have step for selecting the content of string literal
#KT-5896 Fixed
2014-12-18 19:02:17 +03:00
Valentin Kipyatkov
01b70cfe8e Minor code refactoring 2014-12-18 19:02:17 +03:00
Valentin Kipyatkov
11a72632bc KT-3949 Extend selection in case of comment before several statements
#KT-3949 Fixed
2014-12-18 19:02:17 +03:00
Valentin Kipyatkov
3059a46ca7 Fixed KT-5894 Select Woes: no need to select code block + end of line
+ corrected selection of when

 #KT-5894 Fixed
2014-12-18 19:02:17 +03:00
Valentin Kipyatkov
5f9e685188 KT-5895 Select Word: no need to select argument list including parenthesis
#KT-5895 Fixed
2014-12-18 19:02:16 +03:00
Valentin Kipyatkov
dceeeb2724 No need to inherit from java-specific selectioner class 2014-12-18 19:02:16 +03:00
Valentin Kipyatkov
46906fd89c KT-5292 Expand selection should have kdoc + method as a stop point
KT-3947 Extend selection works badly with comment

 #KT-5292 Fixed
 #KT-3947 Fixed
2014-12-18 19:02:16 +03:00
Valentin Kipyatkov
acdb750c91 Renamed classes 2014-12-18 19:02:16 +03:00
Valentin Kipyatkov
f8ceb039bb Added utilities 2014-12-18 19:02:16 +03:00
Valentin Kipyatkov
47a311cb15 Added word to personal dictionary 2014-12-18 19:02:16 +03:00
Valentin Kipyatkov
848623fe8f Changed format of test data for word selection test - each test's data in own directory 2014-12-18 19:02:16 +03:00
Valentin Kipyatkov
ead2dea10d Corrected annotations: ExtendWordSelectionHandler CAN return null 2014-12-18 19:02:15 +03:00
Valentin Kipyatkov
f4c9eabd1d Refactored code 2014-12-18 19:02:15 +03:00
Valentin Kipyatkov
f22e14571f Minor code improvement 2014-12-18 19:02:15 +03:00
Valentin Kipyatkov
7b58d8b1e9 Refactored code 2014-12-18 19:02:15 +03:00
Valentin Kipyatkov
c2d37805be Converted code to Kotlin 2014-12-18 19:02:15 +03:00
Michael Nedzelsky
8074ab27ea JS backend: fix KT-6112 jsonFromTuples is broken
#KT-6112 Fixed
2014-12-18 18:10:26 +03:00
Andrey Breslav
0abf56c9ac Spec document for reified type parameters 2014-12-18 17:28:53 +03:00
Valentin Kipyatkov
d8574f38d2 Trying to rewrite code to avoid JVM crash 2014-12-18 15:48:27 +03:00
Valentin Kipyatkov
6ec10b9b6b Correct completion of nested/inner classes after dot
#KT-1889 Fixed
2014-12-18 15:48:27 +03:00
Valentin Kipyatkov
8f32a6c1f9 Partial body resolve test to test 2 resolve modes 2014-12-18 15:48:27 +03:00
Valentin Kipyatkov
2a41856af6 Changed API in ResolutionFacade to resolve to element to support 3 modes 2014-12-18 15:48:27 +03:00
Valentin Kipyatkov
9c8b7ed6f5 Fixed KT-6408 Completion auto-popup prevents smooth typing of "!in"
#KT-6408 Fixed
2014-12-18 15:48:27 +03:00
Valentin Kipyatkov
acc55c8c24 Optimization 2014-12-18 15:48:27 +03:00
Valentin Kipyatkov
0508e7e031 Safer class name insertion - do not insert artificial prefix too often because it may affect code parsing below in the file 2014-12-18 15:48:26 +03:00
Valentin Kipyatkov
8e1af2b720 Fixed occasional insertions of fq-names by completion and similar effects
#KT-6182 Fixed
 #KT-6111 Fixed
2014-12-18 15:48:26 +03:00
Valentin Kipyatkov
bdf7455578 KT-5986 No code completion for second type argument of HashMap instantiation
KT-6406 Code completion in type argument position should not include functions and variables

 #KT-5986 Fixed
 #KT-6406 Fixed
2014-12-18 15:47:59 +03:00
Valentin Kipyatkov
e9f1ae5886 More clear test data format 2014-12-18 15:47:59 +03:00
Valentin Kipyatkov
cb5c12cda3 Completion of object's in type position - they can be used there 2014-12-18 15:47:59 +03:00
Valentin Kipyatkov
ca2b1efac9 A bit more clear code 2014-12-18 15:47:59 +03:00
Valentin Kipyatkov
191d3e2766 Corrected usages of isNullableType/isMarkedNullable 2014-12-18 15:47:58 +03:00
Valentin Kipyatkov
9f845f0de4 Fixed KT-4892 Override method generates redundant type arguments in call to super
#KT-4892 Fixed
2014-12-18 15:41:34 +03:00
Valentin Kipyatkov
4b9bcce07a Fixed KT-4431 Override/implement val: generate getter instead of initializer
#KT-4431 Fixed
2014-12-18 15:41:33 +03:00
Zalim Bashorov
eae4cdbd8f Log error when cannot read properties. 2014-12-18 14:34:38 +03:00
Zalim Bashorov
465c4a397e Rename manifest.properties to kotlinManifest.properties to avoid clashing with other resources. 2014-12-18 14:34:37 +03:00
Michael Nedzelsky
543141c564 JS backend: fix KT-6323: KotlinJS library modules
#KT-6323 Fixed
2014-12-18 02:08:55 +03:00
Michael Nedzelsky
9f0f930e26 JS backend: tests for KT-6323 KotlinJS library modules 2014-12-18 02:08:52 +03:00
Valentin Kipyatkov
2074872de9 Completion: higher priority for sorting by deprecated 2014-12-17 22:19:38 +03:00
Michael Nedzelsky
d909a66d4d do not copy js files from libraries in case of compile errors 2014-12-16 21:37:46 +03:00
Svetlana Isakova
b7806be8b5 Fixed test data for builtin-classes 2014-12-16 20:01:38 +03:00
Zalim Bashorov
92984a37ea Js frontend: prohibit default values for functions annotated as nativeIndexer. 2014-12-16 18:30:05 +03:00
Zalim Bashorov
4c3073d03e JS frontend tests: add test cases with declare member extension functions. 2014-12-16 18:30:04 +03:00
Zalim Bashorov
990415b69f Minor in JS frontend: join isTopLevel and hasLocalVisibility into isMember and simplify condition. 2014-12-16 18:30:04 +03:00
Zalim Bashorov
4ed635b4a7 Minor in JS frontend: compare fq names as string to avoid crash. 2014-12-16 18:30:04 +03:00
Michael Nedzelsky
0a535432e4 JS backend: fix using old Kotlin Javascript stdlib 2014-12-16 17:48:26 +03:00
Zalim Bashorov
2484954e2f Frontend tests: serialize dynamic call descriptors and check them in diagnostic tests. 2014-12-16 17:48:26 +03:00
Zalim Bashorov
d071c44126 Minor in Frontend: fix default getter return type. 2014-12-16 17:48:26 +03:00
Zalim Bashorov
d666677958 JS backend: added dynamic.iterator to simplify the using "iterable" objects. 2014-12-16 17:48:25 +03:00
Ilya Ryzhenkov
f4b96a0a1a Add mapIndexed() function for common case withIndex().map{} #KT-3153 Fixed 2014-12-16 17:33:27 +03:00
Ilya Ryzhenkov
846014b37f Add missing sum() on Streams. 2014-12-16 17:33:27 +03:00
Ilya Ryzhenkov
f7d4ca092c Deprecate size and length property on CharSequence. 2014-12-16 17:33:26 +03:00
Ilya Ryzhenkov
053586f481 Make lazy version of assert accept function with Any return value, #KT-6459 Fixed 2014-12-16 17:33:26 +03:00
Ilya Ryzhenkov
47da114599 Document String built-in class. 2014-12-16 17:33:25 +03:00
Ilya Ryzhenkov
7b8f34388b Add Module.md and document packages. 2014-12-16 17:33:25 +03:00
Ilya Ryzhenkov
3dca4a08c3 Document Pair and Triple 2014-12-16 17:33:24 +03:00
Ilya Ryzhenkov
be717f48f8 Stop using deprecated APIs 2014-12-16 17:33:24 +03:00
Ilya Ryzhenkov
2b8ffeda28 Stop generating deprecated string functions, move to deprecated folder. 2014-12-16 17:33:23 +03:00
Ilya Ryzhenkov
835c74812e Add platformStatic to Charsets values. 2014-12-16 17:33:23 +03:00
Ilya Ryzhenkov
cdaa984270 Remove js custom emptyList()/emptyMap() implementation. 2014-12-16 17:33:22 +03:00
Ilya Ryzhenkov
9242a3d3dc Use standard emptyList() 2014-12-16 17:33:22 +03:00
Ilya Ryzhenkov
fbbb7eced1 Collect deprecated code, remove unused private ImmutableArrayList 2014-12-16 17:33:22 +03:00
Ilya Ryzhenkov
31fb24d390 Sort collections/map APIs, improve empty implementations. 2014-12-16 17:33:21 +03:00
Ilya Ryzhenkov
fa0542b801 Clean size/length/first/head/empty properties and functions. 2014-12-16 17:33:21 +03:00
Ilya Ryzhenkov
828ba385ea Cleanup ordering, improve API 2014-12-16 17:33:20 +03:00
Ilya Ryzhenkov
e890c2ee0d Deprecate withIndicies(), introduce optimized and fixed withIndex and forEachIndexed() 2014-12-16 17:33:20 +03:00
Alexey Sedunov
b5fb09b8bc Find Usages: Support text-file search of Kotlin declarations 2014-12-16 17:24:54 +03:00
Evgeny Gerashchenko
7924568355 Added test for KT-6454 Obsolete class-files for lambdas aren't removed from output when 'inline' annotation is added to function.
The bug is reproducible only for non-incremental compilation mode, which
will be deprecated soon.

 #KT-6454 can't reproduce
2014-12-16 16:33:41 +03:00
Andrey Breslav
120c344f11 Fix access to private static native functions 2014-12-16 16:23:35 +03:00
Andrey Breslav
f9fea88749 PlatformStaticGenerator reworked to use FunctionCodegen.generateMethod() 2014-12-16 16:23:35 +03:00
Andrey Breslav
6916c0f5cc Test for native property accessors 2014-12-16 16:23:34 +03:00
Andrey Breslav
e591ddc4d3 Report syntax errors in box tests 2014-12-16 16:23:34 +03:00
Andrey Breslav
c761a234c8 Spec for native declarations 2014-12-16 16:23:33 +03:00
Andrey Breslav
6596c6d943 Support native top-level functions 2014-12-16 16:23:33 +03:00
Andrey Breslav
56216c4bd8 Test for function with default parameters marked native 2014-12-16 16:23:32 +03:00
Andrey Breslav
229c7ad537 Report an error on native declarations marked ilnine 2014-12-16 16:23:31 +03:00
Andrey Breslav
5187694b22 Test for overriding with a native function 2014-12-16 16:23:31 +03:00
Andrey Breslav
3a8ca2608d Report error on native members of traits 2014-12-16 16:23:30 +03:00
Andrey Breslav
a94a1f8a6f Report error on native declaration with a body 2014-12-16 16:23:30 +03:00
Andrey Breslav
d4cf789b53 Report error on native abstract declarations 2014-12-16 16:23:30 +03:00
Andrey Breslav
76e2ae2005 Do not complain about missing bodies on native functions 2014-12-16 16:23:29 +03:00
Andrey Breslav
19d0ad7e10 Use newer dex to verify Kotlin bytecode in tests 2014-12-16 16:23:29 +03:00
Andrey Breslav
27d403ee23 Make native class object members delegate to static methods in the outer class 2014-12-16 16:23:28 +03:00
Andrey Breslav
d20651b881 Support native on [platformStatic] functions 2014-12-16 15:17:33 +03:00
Andrey Breslav
cba6652c05 Simplistic support for native flag 2014-12-16 15:17:33 +03:00
Svetlana Isakova
b0889f0760 Minor: fixed toString 2014-12-16 14:41:56 +03:00
Svetlana Isakova
bda5bab057 Captured type might be substituted in an opposite projection
out Captured (in Int) = out Int
 in Captured (out Int) = in Int
2014-12-16 14:41:56 +03:00
Nikolay Krasko
8f6f404f14 Change the way of runtime configuration in JsePsiUnifierTest 2014-12-16 13:15:35 +03:00
Nikolay Krasko
37cea8a720 Unconfigure runtime to avoid affecting further tests 2014-12-16 12:58:56 +03:00
Alexey Sedunov
bbf951ff03 Move: Fix reference binding for the case of default target package
#KT-6457 Fixed
2014-12-15 20:43:00 +03:00
Alexey Sedunov
bbbd46d9d6 Move: Do not add package directive if target package is empty
#KT-6455 Fixed
2014-12-15 20:42:59 +03:00
Nikolay Krasko
da6e1890bd Don't lookahead too far when looking for '.' between type and parameters and for comma in function literal parameters 2014-12-15 20:20:09 +03:00
Nikolay Krasko
421bb57f50 Fix parser performance: don't do the additional lookahead when looking for the comma in parameters 2014-12-15 20:20:08 +03:00
Nikolay Krasko
ba849b5940 Minor: get string with parser context during debug 2014-12-15 20:20:08 +03:00
Nikolay Krasko
4fa97c917d Warn if lookahead is too big in matchTokenStreamPredicate() 2014-12-15 20:20:07 +03:00
Evgeny Gerashchenko
6c15472bf9 Minor. Regenerated test. 2014-12-15 19:38:11 +03:00
Evgeny Gerashchenko
6abe5a425c Finding usages (which have references) in text when plaint text occurrences are not searched. 2014-12-15 19:24:04 +03:00
Alexey Tsvetkov
834725b260 JS parser minor: removed broken @see in javadoc 2014-12-15 19:16:22 +03:00
Alexey Tsvetkov
669cbb203b Reload rendrer when application changes (for tests) 2014-12-15 19:16:22 +03:00
Alexey Tsvetkov
c78b199c0a JS test minor: fixed recursion test for inliner
After changes in translator exception is no longer wrapped into another one
2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
6115e1afec JS parser: use map for keyword search 2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
b2cd437230 JS parser: removed RESERVED token type 2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
0fac9b3673 JS parser: removed unused classes and methods 2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
0d6b4c6590 JS parser: removed unused decompilation info 2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
272788cb27 JS parser: fixed JsInvocation mapping 2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
46326fe5ac JS backend: report backend diagnostics 2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
348a452e01 JS backend: report parser errors and warnings 2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
a9c21b97f9 JS parser minor: moved isEndOfLine method to Utils 2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
7c6629e38a JS parser: pass ErrorReporter to JsParser 2014-12-15 19:16:21 +03:00
Alexey Tsvetkov
3658698f4f JS backend: pass diagnostics to TranslationContext using config 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
5530ad84e5 JS parser: use different positions for parser and lexer errors 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
5323fe920d JS parser: save token positions 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
5b1319b535 JS parser: removed unused messages 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
714b719204 JS parser: static messages load 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
21d51147bf JS parser: fixed labelled break/continue 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
939a8cce4e JS parser: removed @ from @author tag because of JetCodeConformanceTest 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
8c643d78f8 JS backend minor: formatting 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
bc7afdf0b8 JS backend: expand jsCode at translator 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
41af895caa JS backend: added jsCode definition 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
c3f67c54bd JS backend: added jsCode test cases 2014-12-15 19:16:20 +03:00
Alexey Tsvetkov
97bbcab77d JS parser: added description string to constructor arguments 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
c814b9a8b8 JS parser: renamed sourceNameStub to comply with a codestyle (UPPERCASE) 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
f69398b915 JS parser: literals creation 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
5256a99c54 JS parser: added insideFunction flag 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
420df315b4 JS parser: added NUMBER_INT token type 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
570010ed5c JS parser: fixed expression statement mapping 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
8f33dea8d3 JS parser: removed source info creation 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
706b93b5b8 JS parser minor: removed unused function 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
225c9cdf54 JS parser: updated imports 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
df41400fe5 JS parser: auto-reformat JsParser.java 2014-12-15 19:16:19 +03:00
Alexey Tsvetkov
54dbdce908 JS parser: added original gwt code revision notice 2014-12-15 19:16:18 +03:00
Alexey Tsvetkov
b1c005dccf JS parser: GWT parser copied 2014-12-15 19:16:18 +03:00
Alexey Tsvetkov
85b2df8c61 JS test minor: use getNamedArgument for mandatory directive arguments 2014-12-15 19:16:18 +03:00
Alexey Tsvetkov
c52d6ba92e JS test minor: removed 'Inline' from name checkFooBoxWithInlineDirectives
checkFooBoxWithInlineDirectives was moved from InlineTest, but was not renamed
2014-12-15 19:16:18 +03:00
Zalim Bashorov
a6597e8926 Frontend: allow omit types in lambda parameters of dynamic call when lambda declareted inside parentheses. 2014-12-15 18:22:15 +03:00
Zalim Bashorov
59c4f55988 Frontend: allow to use the spread operator in dynamic calls. 2014-12-15 18:18:38 +03:00
Zalim Bashorov
4ac3cbc384 Frontend: allow omit types in lambda parameters of dynamic calls. 2014-12-15 18:12:53 +03:00
Zalim Bashorov
4dff9cf5fc Frontend: fixed explicit receiver kind for dynamic call with implicit dispatch receiver.
Additionally added tests for other cases.
2014-12-15 18:12:04 +03:00
Evgeny Gerashchenko
8de11e4664 Added test checking that we don't create Kotlin incremental caches for targets without Kotlin. 2014-12-15 16:46:27 +03:00
nik
07a1ba0ef6 Kotlin builder: avoid initialization of incremental caches in 'close' method (KT-6409) 2014-12-15 16:44:13 +03:00
Michael Nedzelsky
f1d89805f1 fix kotlin-gradle-plugin-test build 2014-12-15 15:58:51 +03:00
Alexey Sedunov
3760eed8ff Runner: Support classes and objects with [platformStatic] main()
#KT-6072 Fixed
2014-12-15 15:02:44 +03:00
Alexey Sedunov
4ecd3726b3 Create parameter from usage: Support named arguments 2014-12-14 19:32:48 +03:00
Svetlana Isakova
9a5c293b6d Fixed NameSuggester tests 2014-12-12 23:08:30 +03:00
Svetlana Isakova
cddaf89ee8 Simplified NameSuggester; added test 2014-12-12 23:08:30 +03:00
Svetlana Isakova
a589323eaf Rename: TypeCheckerTypingConstraints -> TypeCheckerProcedureCallbacks 2014-12-12 23:08:29 +03:00
Svetlana Isakova
239b9a96a0 Temporary hack to compile 'kotlin' 2014-12-12 23:08:29 +03:00
Svetlana Isakova
1f6f607f40 Type variable with non-trivial upper bound cannot capture 'in' projection 2014-12-12 23:08:29 +03:00
Svetlana Isakova
8b0707b15d Throw error for conflict in variances to combine 2014-12-12 23:08:29 +03:00
Svetlana Isakova
c097e6ee3e After approximation interpret Contr<*> as Contr<Nothing>
not Contr<out Any?>
2014-12-12 23:08:29 +03:00
Svetlana Isakova
14a53a105b Fixed 'subtype' for captured type 2014-12-12 23:08:29 +03:00
Svetlana Isakova
0149e8048c Capture notnullable type if type variable is nullable 2014-12-12 23:08:29 +03:00
Svetlana Isakova
da8fdbd23e More tests for varargs updated 2014-12-12 23:08:28 +03:00
Svetlana Isakova
7a5124215a Updated test data for Array<out T> vararg type 2014-12-12 23:08:28 +03:00
Svetlana Isakova
5b4f10e698 Made vararg parameters have Array<out T> type
instead of simply Array<T>
  #KT-1638 Fixed
  #KT-2163 Fixed
  #KT-3213 Fixed
  #KT-4172 Fixed
  #KT-5534 Fixed
2014-12-12 23:08:28 +03:00
Svetlana Isakova
d893e8283e Small refactoring 2014-12-12 23:08:28 +03:00
Svetlana Isakova
a3e949674f Preserve nullability while substituting captured types 2014-12-12 23:08:28 +03:00
Svetlana Isakova
2440c48f1c Added description of 'FILE' directive for diagnostic tests 2014-12-12 23:08:28 +03:00
Svetlana Isakova
070dba69fa Don't add a constraint T <: DONT_CARE from upper bounds 2014-12-12 23:08:27 +03:00
Svetlana Isakova
f9d4a68c6e KT-6320 AssertionError in ConstraintSystem(The constraint shouldn't contain different type variables on both sides: Y <: X)
#KT-6320 Fixed
2014-12-12 23:08:27 +03:00
Svetlana Isakova
b098220d03 Refactoring: made code in 'processDeclaredBoundConstraints' more kotlin 2014-12-12 23:08:27 +03:00
Svetlana Isakova
1fb713342b Capture types only on the top level 2014-12-12 23:08:27 +03:00
Svetlana Isakova
cd359a046c Added captured types and approximation
CapturedType captures type projection while solving the constraint system.
During the substitution type containing captured types is approximated
to get rid of captured types and (for simple cases) replace them with corresponding type projections.

Note that Array<Array< CapturedType(out Int) >> is (over)approximated by Array<out<Array<out Int>>

See 'Mixed-site variance' by Ross Tate for details.

 #KT-2570 Fixed
 #KT-2872 Fixed
 #KT-3213 Fixed
2014-12-12 23:08:27 +03:00
Svetlana Isakova
e798b7c6d1 Rename: MyDeclarations -> ConstraintSystemTestData
Simplified code (used 'firstOrNull')
2014-12-12 23:08:27 +03:00
Svetlana Isakova
4df8c250ab Fixes after merge
Added platform types fixes to rewritten to kotlin files
2014-12-12 23:08:26 +03:00
Svetlana Isakova
26a54aa95d Small refactoring in ConstraintSystemImpl
Extracted isMyTypeVariable, getMyTypeVariable
2014-12-12 23:08:26 +03:00
Svetlana Isakova
a2fa38a7f9 Rewritten ConstraintPosition to Kotlin
Added ConstraintPositionKind
 (to be able to use enum constants from Java code)
2014-12-12 23:08:26 +03:00
Svetlana Isakova
578f6d4811 Converted ConstraintSystem to Kotlin 2014-12-12 23:08:26 +03:00
Svetlana Isakova
38d38e14c8 Changed file extension to '.kt'
to preserve file history
2014-12-12 23:08:26 +03:00
Michael Nedzelsky
801ed5245b JS backend: fix Selenium test: fail on error loading javascript files 2014-12-12 22:36:32 +03:00
Michael Nedzelsky
d857d06903 fix maven kotlin-js-tests 2014-12-12 19:49:46 +03:00
Evgeny Gerashchenko
867a20e821 Merge pull request #535 from JetBrains/rr/nik
Kotlin builder: make sure that caches are lazily initialized (KT-6409)
2014-12-12 16:53:46 +04:00
nik
a9d3c2c064 Kotlin builder: make sure that caches are lazily initialized (KT-6409) 2014-12-12 14:12:58 +03:00
Natalia Ukhorskaya
73d62902d0 Debugger: use partialBodyResolve. Don't compete variables defined after context element 2014-12-12 13:42:35 +03:00
Michael Nedzelsky
73a929c78d ask and optionally delete script/kotlin.js during update libraries 2014-12-12 03:05:13 +03:00
Michael Nedzelsky
492a2a1dc8 fix 'library already disposed' error while update libraries from plugin 2014-12-12 03:04:32 +03:00
Michael Nedzelsky
a49bcc8d39 fix detection Kotlin Javascript stdlib 2014-12-12 03:04:29 +03:00
Michael Nedzelsky
2a680f4d8b fix name for jslib sources target in ant script 2014-12-12 03:04:26 +03:00
Michael Nedzelsky
1c9039d23b Rewrite to Kotlin: LibraryUtils 2014-12-12 03:04:24 +03:00
Michael Nedzelsky
5675da93f3 Rewrite to Kotlin: LibraryUtils. File rename 2014-12-12 03:04:22 +03:00
Michael Nedzelsky
bd090d0e5f add tests for jps-plugin (Kotlin Javascript projects) 2014-12-12 03:04:19 +03:00
Michael Nedzelsky
f8f7ea8998 JS backend: check libraries in cli compiler before translation 2014-12-12 03:04:17 +03:00
Michael Nedzelsky
8e052a9ade KotlinJsModuleConfigurator, KotlinJavaModuleConfigurator: refactoring 2014-12-12 03:04:15 +03:00
Michael Nedzelsky
2d1029cb29 fix: choose correct library from plugin for new Kotlin/Javascript projects 2014-12-12 03:04:12 +03:00
Michael Nedzelsky
0992b4c0f1 CreateLibraryDialog*: caption -> LibraryCaption, refactoring CustomLibraryDescriptorWithDefferConfig with subclasses 2014-12-12 03:04:10 +03:00
Michael Nedzelsky
5f57605b81 add tests for js-maven projects 2014-12-12 03:04:07 +03:00
Michael Nedzelsky
c6ce4d404a refactoring: KotlinMavenConfigurator with subclasses 2014-12-12 03:04:05 +03:00
Michael Nedzelsky
8c8c2f6e5a maven support in IDE: improve check for kotlin artifacts in pom file 2014-12-12 03:04:03 +03:00
Michael Nedzelsky
ba5a5af4ec stable order for configurators in notification 2014-12-12 03:04:00 +03:00
Michael Nedzelsky
0442e3b0ed add KotlinJavascriptMavenConfigurator 2014-12-12 03:03:58 +03:00
Michael Nedzelsky
b71101942e JS backend: maven projects: extract library js-files to target/js/lib, set scope=test for stdlib in browser-example* 2014-12-12 03:03:53 +03:00
Michael Nedzelsky
85a16c3c51 add browser-example-with-library maven project (kotlin->javascript) 2014-12-12 03:03:50 +03:00
Michael Nedzelsky
6c55e12588 add kotlin-js-library-example maven project 2014-12-12 03:03:48 +03:00
Michael Nedzelsky
9734980334 JS maven tests: fixes configuration files 2014-12-12 03:03:45 +03:00
Michael Nedzelsky
eebb012b13 JS backend: maven: fix compiler mojo 2014-12-12 03:03:43 +03:00
Michael Nedzelsky
8d10b3813b fix kotlin-js-library maven project 2014-12-12 03:03:40 +03:00
Michael Nedzelsky
44e7af7f65 K2JS: get rid of MetaInfServices 2014-12-12 03:03:37 +03:00
Michael Nedzelsky
73db22ae20 JS backend: add option 'output library runtime fiies' for Kotlin Compiler 2014-12-12 03:03:34 +03:00
Michael Nedzelsky
a026f6d25e add LibraryUtils.copyJsFilesFromLibraries 2014-12-12 03:03:32 +03:00
Michael Nedzelsky
729e7084fa new ant test for kotlin javascript library support 2014-12-12 03:03:29 +03:00
Michael Nedzelsky
ecc0751221 K2JS: add cli compiler tests for libraries 2014-12-12 03:03:27 +03:00
Michael Nedzelsky
103307432e update kotlin javascript stdlib if needed 2014-12-12 03:03:24 +03:00
Michael Nedzelsky
85a38e17de reuse for KotlinJS library common Library dialogs
remove unnecessary code for kotlin js library support

JS backend: simplify check isConfigured for kotlin js module
2014-12-12 03:03:22 +03:00
Michael Nedzelsky
a21d979186 CreateJavaLibraryDialog* -> CreateLibraryDialog* 2014-12-12 03:03:19 +03:00
Michael Nedzelsky
d588b62981 Minor: refactoring create Kotlin Java Library Dialog 2014-12-12 03:03:16 +03:00
Michael Nedzelsky
61e9cbec66 K2JS: get kotlin js module name from Kotlin-JS-Module-Name attribute in manifest 2014-12-12 03:03:13 +03:00
Michael Nedzelsky
83ec20508a JS backend: isJsRuntimeLibrary -> isKotlinJavascriptStdLibrary 2014-12-12 03:03:11 +03:00
Michael Nedzelsky
b42d00f095 JS backend: check for Implementation-Title in order to detect kotlin js stdlib 2014-12-12 03:03:08 +03:00
Michael Nedzelsky
f5d957445f JS backend: JpsJsModuleUtils: remove filtering for Kotlin Javascript libraries 2014-12-12 03:03:05 +03:00
Michael Nedzelsky
34411dcf01 JS backend: add Specification-Title to manifest and LibraryUtils.isKotlinJavascriptLibrary 2014-12-12 03:03:03 +03:00
Michael Nedzelsky
68113ff33d JS backend: change path to kotlin.js for tests 2014-12-12 03:03:00 +03:00
Michael Nedzelsky
a65b9800c2 JS backend: put kotlin.js into jslib archive, add specification-title
kotlin.js is now included in kotlin-jslib.jar, so closure-compiler outputs kotlin.js to dist folder instead of dist/kotlic/lib
2014-12-12 03:02:31 +03:00
Michael Nedzelsky
12ff5de013 K2JS: fix KT-5639 Exception in kotlin-js when directory is given instead of output file
#KT-5639 Fixed
2014-12-12 01:25:15 +03:00
Alexey Sedunov
0b54221223 Minor: Use short type names in super-function prompt dialog (find usages and refactorings)
#KT-6298 Fixed
2014-12-11 17:50:34 +03:00
Alexey Sedunov
51d4d3135e Change return type quick-fix: Add support of constant expressions
#KT-6260 Fixed
 #KT-6404 Fixed
2014-12-11 17:50:33 +03:00
Alexey Sedunov
2009cc3e9e Create parameter from usage: Support UNRESOLVE_REFERENCE_WRONG_RECEIVER diagnostic
#KT-6431 Fixed
2014-12-11 17:50:32 +03:00
Alexey Sedunov
346d9ea0c5 Quick Fixes: Add test for KT-5922 (QuickFix to change lambda signature doesn't work with SAM conversion) 2014-12-11 17:50:31 +03:00
Alexey Sedunov
14b33f8b95 Change Signature: Do not report conflict of object member with itself (available through the class object)
#KT-6345 Fixed
2014-12-11 17:50:31 +03:00
Alexey Sedunov
6bbe9b2bfe Change Signature: Add test for KT-6410 (Change signature on constructor inserts fqName for newly added parameter type) 2014-12-11 17:50:29 +03:00
Alexey Sedunov
b1f82d7a23 Quick Fixes: Add test for KT-6430 (Create parameter quick fix inserts platform types into Kotlin code) 2014-12-11 17:50:28 +03:00
Alexey Sedunov
8cc3af99a0 Change Signature: Retain parameter modifier list 2014-12-11 17:50:27 +03:00
Alexey Sedunov
7d1ed507a7 Call Hierarchy: Filter out usages inside of import directives 2014-12-11 17:50:26 +03:00
Alexey Sedunov
15d7932491 Minor: Remove unnecessary check for test sources (reverted earlier commit) 2014-12-11 17:50:25 +03:00
Alexander Udalov
d71220f8b1 Drop ArrayGenTest, move test case to generated 2014-12-11 16:04:04 +03:00
Denis Zharkov
34d408eb7b Simple workaround for problem described in KT-6437
JS backend generate invalid code when inlining within constructor using property
2014-12-11 16:04:04 +03:00
Denis Zharkov
c6d6aebd2f Added tests for stdlib Array constructors 2014-12-11 16:04:04 +03:00
Denis Zharkov
fe9599d588 Removed codegen of Array-constructor with lambda 2014-12-11 16:04:04 +03:00
Denis Zharkov
d345ba05dd Added inline function "Array" into stdlib
It has the same signature and semantics as Array constructor had
Also made Array constructor private and accepting no arguments
2014-12-11 16:04:03 +03:00
Denis Zharkov
654411a0b0 Refactored tests using Array constructor:
Some moved to tests with stdlib
Some changed to use arrayOfNulls
2014-12-11 16:04:03 +03:00
Denis Zharkov
abbcf61183 JVM Backend: always inline callable containing reified TP 2014-12-11 16:04:02 +03:00
Denis Zharkov
b86e19782c Moved containsReifiedTypeParameters to DescriptorUtils 2014-12-11 16:04:02 +03:00
Nikolay Krasko
0231aeb017 Memory leak in PermGen of Kotlin Gradle plugin when demon is used (KT-5420)
Stop background thread in Intellij Idea api and clear thread locals to allow gc the created class loader

 #KT-5420 In Progress
2014-12-11 15:30:01 +03:00
Nikolay Krasko
727c49146b Prepare for KT-5420 - Copy files before patch 2014-12-11 15:25:18 +03:00
Zalim Bashorov
6b50d74056 JS backend: use special JsScope(JsDynamicScope) for names from dynamic calls instead of use containing scope to avoid the impact on local names. 2014-12-11 13:17:49 +03:00
Zalim Bashorov
af82e69214 JS tests: added tests for dynamic. 2014-12-11 13:17:49 +03:00
Zalim Bashorov
7d9b824411 JS tests: use js files from some places by default:
* add all js files from testData/_commonFiles
* add all js files from <testDir>/_commonFiles
* add <testDir>/cases/<testName>.js if it exists
2014-12-11 13:17:48 +03:00
Zalim Bashorov
2f6a135135 JS tests: added doTest and checkFooBoxIsOkByPath to BasicTest to simplify using generated tests. 2014-12-11 13:17:47 +03:00
Zalim Bashorov
4c9fbcd525 JS frontend: introduce some JavaScript specific constants. 2014-12-10 22:48:02 +03:00
Zalim Bashorov
bc3f53afff JS backend: added the support dynamic. 2014-12-10 22:48:02 +03:00
Zalim Bashorov
45b0fd9f4c Minor in JS backend: simplify CompareToBOIF::getIntrinsic. 2014-12-10 22:48:01 +03:00
Zalim Bashorov
eadb2d8db5 Minor in JS backend: save operation token as member of BinaryOperationTranslator. 2014-12-10 22:48:01 +03:00
Zalim Bashorov
e378bde43e JS backend: fix "is Boolean" check. 2014-12-10 22:48:01 +03:00
Zalim Bashorov
2ccc027ba5 Minor in JS AST: drop unused constructors from JsBinaryOperation, JsUnaryOperation, JsPrefixOperation and JsPostfixOperation. 2014-12-10 22:48:01 +03:00
Zalim Bashorov
354af95d47 Frontend: add JetTokens.EQEQEQ and JetTokens.EXCLEQEQEQ to OperatorConventions.NOT_OVERLOADABLE 2014-12-10 22:48:01 +03:00
Zalim Bashorov
bc3859181f Frontend: add default getter and setter to dynamic property descriptors. 2014-12-10 22:48:01 +03:00
Zalim Bashorov
65ef7525ce Allow to use dynamic types for JS projects in IDEA. 2014-12-10 22:48:00 +03:00
Alexander Udalov
f08c9d9815 Rename module build-tools -> ant 2014-12-10 18:23:46 +03:00
Alexander Udalov
06984328e2 Exclude "target" and "local-repo" directories from IDEA project 2014-12-10 18:21:11 +03:00
Andrey Breslav
2c45670cc5 NPE fixed 2014-12-10 17:34:17 +03:00
Andrey Breslav
638e768226 Minor. Class renamed 2014-12-10 16:18:38 +03:00
Andrey Breslav
d17edacb65 Discriminate calls with implicit dynamic receivers 2014-12-10 16:18:38 +03:00
Evgeny Gerashchenko
fbb4ed181a Minor. Computing package FQ later. 2014-12-10 15:27:43 +03:00
Andrey Breslav
a4df1ec7ae Merge pull request #532 from yole/coverage-jacoco
add missing jars to coverage agent library
2014-12-10 15:06:47 +03:00
Dmitry Jemerov
074e284ea4 add missing jars to coverage agent library 2014-12-10 12:55:17 +01:00
Evgeny Gerashchenko
4e702e34f0 Fixed incremental compilation, when removing all callables from file. 2014-12-10 14:28:21 +03:00
Evgeny Gerashchenko
d126a9711c KT-6409 Do not create empty PersistentHashMap instances for modules without kotlin files during build
#KT-6409 fixed
2014-12-10 14:28:21 +03:00
Natalia Ukhorskaya
0ca811d7ae Rename test 2014-12-10 13:45:30 +03:00
Natalia Ukhorskaya
9338b27bcd Update to IDEA 14.0.2 (139.659.2) 2014-12-10 12:47:42 +03:00
Natalia Ukhorskaya
64dac7a19d Fix line separators in JsLibrarySourceConfig 2014-12-10 12:41:15 +03:00
Natalia Ukhorskaya
c807cebfe6 Merge pull request #530 from yole/coverage
Initial implementation of coverage support in IntelliJ IDEA plugin.
2014-12-10 12:35:10 +03:00
Dmitry Jemerov
274e529b90 code review 2014-12-09 12:36:44 +01:00
Evgeny Gerashchenko
153272a189 Updated test data for tests according to change in JPS.
These tests were not deterministic. Now they are. When package facade's sources change (files added to package, etc), all package gets recompiled now. Behavior is tolerable, but not very desirable.
2014-12-09 12:08:03 +03:00
Denis Zharkov
9910f7cfbd Added test demonstrating usage of reified TP for dependency injection 2014-12-08 21:30:54 +03:00
Denis Zharkov
010af19fe9 Delegated Properties: allowing type parameters for get/set methods
#KT-6253 Fixed
2014-12-08 21:30:54 +03:00
Nikolay Krasko
3677881e18 Change parser error for when (KT-6420)
#KT-6420 Fixed
2014-12-08 20:42:48 +03:00
Nikolay Krasko
34eb9e9cd4 Fix build version in jb-update 2014-12-08 20:42:47 +03:00
Stanislav Erokhin
d334f3b31c Fix completion for private_to_this. 2014-12-08 18:24:30 +03:00
Stanislav Erokhin
f9afdf7540 Use Visibilities.isVisible with ReceiverValue. 2014-12-08 18:24:30 +03:00
Stanislav Erokhin
f640f82ed0 Add serialization for PRIVATE_TO_THIS 2014-12-08 18:24:30 +03:00
Stanislav Erokhin
fc8cec9509 Create PRIVATE_TO_THIS visibility 2014-12-08 18:24:30 +03:00
Stanislav Erokhin
d59031fdcc Skip check variance for irrelevant classes 2014-12-08 18:24:30 +03:00
Stanislav Erokhin
fced4756bb Add variance test for nullable and function types. 2014-12-08 18:24:30 +03:00
Stanislav Erokhin
365c8a4787 Rename TaskPrioritizer.java -> .kt 2014-12-08 18:24:30 +03:00
Stanislav Erokhin
09250c89ed Convert TaskPrioritizer to kotlin. 2014-12-08 18:24:30 +03:00
Dmitry Jemerov
f31ea8bd0e in order to avoid misleading suggestions to run 'ant dist', calculate the paths to SDK annotations relatively to the home directory 2014-12-08 17:30:49 +03:00
Evgeny Gerashchenko
a94f7f10b0 Testing highlight type for all "unused" diagnostics. 2014-12-08 17:30:48 +03:00
Evgeny Gerashchenko
a3fdce8131 Highlighting "as Foo" for useless casts in gray.
#KT-6070 fixed
2014-12-08 17:30:47 +03:00
Evgeny Gerashchenko
20ee59c1e5 Simplified positioning strategy for unreachable code. 2014-12-08 17:30:47 +03:00
Evgeny Gerashchenko
cd197b9ff9 Convert PositioningStrategy to Kotlin. Cleanup. 2014-12-08 17:30:46 +03:00
Evgeny Gerashchenko
52549607f9 Convert PositioningStrategy to Kotlin. Auto-convert. 2014-12-08 17:30:45 +03:00
Evgeny Gerashchenko
d4a8aa4eaa Convert PositioningStrategy to Kotlin. Rename files. 2014-12-08 17:30:45 +03:00
Evgeny Gerashchenko
8b329fcada Highlighting "unused function literal" as other unused (gray) 2014-12-08 17:30:44 +03:00
Evgeny Gerashchenko
f8197c6b70 KT-4016 Support "Copy Reference" action on class, method, etc
#KT-4016 fixed
2014-12-08 17:30:43 +03:00
Evgeny Gerashchenko
d29cc61d42 Fixed description for "Simplify Binary Negation" inspection. 2014-12-08 17:30:42 +03:00
Evgeny Gerashchenko
858fda20b7 VARIABLE_WITH_REDUNDANT_INITIALIZER is highlighted as unused (gray) 2014-12-08 17:30:42 +03:00
Evgeny Gerashchenko
cbebb17eca Converted JetPsiChecker to Kotlin. 2014-12-08 17:30:41 +03:00
Evgeny Gerashchenko
2f283da7dd Converted JetPsiChecker to Kotlin. 2014-12-08 17:30:41 +03:00
Evgeny Gerashchenko
bf150c8dde Disabling Kotlin builder on Android Studio only for Java. 2014-12-08 17:30:40 +03:00
Evgeny Gerashchenko
7c1bc432db Removed reflection-based hack for IDEA 12. 2014-12-08 17:30:40 +03:00
Alexey Sedunov
c917459926 Change Signature: Add support of type parameter substitutions in overriding members 2014-12-08 16:30:07 +03:00
Alexey Sedunov
250940c824 Change Signature: Propagate nullability annotations to overriding methods in Java 2014-12-08 16:30:05 +03:00
Alexey Sedunov
c9873428de Change Signature: Update signatures of lambdas passed to SAM constructors 2014-12-08 16:30:04 +03:00
Alexey Sedunov
8f2c543f7e Formatter: Add wrapping support for parameter/argument lists
#KT-6032 Fixed
2014-12-08 16:30:03 +03:00
Alexey Sedunov
c6541ccc6f Change Signature: Do not insert new-lines between parameters (to be fixed later at the formatter level) 2014-12-08 16:30:02 +03:00
Alexey Sedunov
57cb125ab8 Change Signature: Do not invoke our usage processor recursively 2014-12-08 16:30:01 +03:00
Alexey Sedunov
74cdecd829 Find Usages: Restrict search scope of class object private declarations to
the containing class
2014-12-08 16:30:00 +03:00
Alexander Udalov
c012efe64e Drop compilation of built-ins/stdlib from ForTestCompileRuntime
Because the process of building kotlin-runtime.jar will likely get more
complicated soon, and that logic will already be present in build.xml.

Run "ant compiler-quick runtime" instead before All Tests
2014-12-08 15:06:35 +03:00
Alexander Udalov
ee8df85bfe Fix path duplication in "kotlin-for-upsource" in build.xml 2014-12-08 15:01:44 +03:00
Alexander Udalov
4d66ca88ee Refactor building of kotlin-runtime.jar in build.xml
- use the "new-kotlinc" macro to compile Java sources (can be disabled via an
  optional argument) as well as Kotlin
- bend over backwards not to repeat source paths passed to kotlinc and javac
- split "runtime" task into several smaller ones, which makes it possible to
  rebuild (and repack the whole jar) constituent modules separately
2014-12-08 15:01:43 +03:00
Alexander Udalov
54b94e9e00 Adapt targets in build.xml to Ant naming conventions
Also reformat the section related to Upsource
2014-12-08 14:54:04 +03:00
Dmitry Jemerov
0512b8ce1a add test to verify output files; correctly handle lambdas 2014-12-08 12:51:08 +01:00
Nikolay Krasko
7d32358bf8 Pair parenthesis before end of string template
#KT-6403 Fixed
2014-12-06 01:14:49 +03:00
Nikolay Krasko
3d7bbc0bde Rewrite to Kotlin: TypedHandlerTest 2014-12-06 01:14:47 +03:00
Nikolay Krasko
f2cfbed9e3 Rewrite to Kotlin: TypedHandlerTest. File rename 2014-12-06 01:14:45 +03:00
Dmitry Jemerov
052c0e60a4 initial implementation of showing coverage data in IDE 2014-12-05 21:29:09 +01:00
Dmitry Jemerov
8f2092fe79 extract method for creating type mapper for a file 2014-12-05 20:23:23 +01:00
Dmitry Jemerov
16481a4144 convert JetPositionManager to Kotlin 2014-12-05 20:17:32 +01:00
Dmitry Jemerov
6d7b4ad721 rename JetPositionManager to Kotlin 2014-12-05 19:17:57 +01:00
Nikolay Krasko
936fdcf219 Update to Idea 139.658 2014-12-05 19:15:02 +03:00
Nikolay Krasko
e2bf8b2eee Suppress warning to avoid spontaneous addition actions 2014-12-05 19:07:46 +03:00
Nikolay Krasko
5684ab69f5 Increase stub version 2014-12-05 16:42:29 +03:00
Andrey Breslav
ddd72e8582 Compilation fixed 2014-12-05 16:28:58 +03:00
Dmitry Jemerov
2b1727a61b Cleanup the README text 2014-12-04 19:29:42 +01:00
Michael Nedzelsky
5db35125dd JS backend: fix KT-3692: js translator: Ensure that we don't create backing fields for traits
#KT-3692 Fixed
2014-12-04 02:42:12 +03:00
Michael Nedzelsky
7c9ea16d8e JS backend: fix translation for extension property 2014-12-04 02:42:07 +03:00
Michael Nedzelsky
5bf1d73199 JS backend: tests for translation for extension property 2014-12-04 02:42:04 +03:00
Valentin Kipyatkov
b8d1f115bf Renamed JetType.isNullable() to isMarkedNullable() 2014-12-03 21:36:10 +03:00
Valentin Kipyatkov
c76e69af62 Removed check for classes in java.lang because it's not used by completion anymore and causes problems with importing of java.lang.String on paste 2014-12-03 21:21:55 +03:00
Valentin Kipyatkov
796a2b6e7c Code refactoring 2014-12-03 21:15:13 +03:00
Valentin Kipyatkov
7ba11b0f2f Fixed auto-import of operator functions broken before + fixed bug in its implementation 2014-12-03 21:09:29 +03:00
Valentin Kipyatkov
3161eb284b Added comment 2014-12-03 20:12:44 +03:00
Valentin Kipyatkov
b8a0a1a313 Reflected API changes after rebase 2014-12-03 19:12:43 +03:00
Valentin Kipyatkov
3b51b5a51b Replaced hard-coded gray color 2014-12-03 19:08:06 +03:00
Valentin Kipyatkov
de51948883 The test was not correct 2014-12-03 19:08:06 +03:00
Valentin Kipyatkov
132cb26e04 Code improvements after review 2014-12-03 19:08:06 +03:00
Valentin Kipyatkov
dfd5e773df extensionsUtils.kt uses FuzzyType + more correct treatment of receiver nullability there 2014-12-03 19:08:06 +03:00
Valentin Kipyatkov
418b16e766 Moved FuzzyType and changed package for extensionUtils 2014-12-03 19:07:32 +03:00
Valentin Kipyatkov
856be73500 Smart completion: generic functions are correctly included into the list
#KT-6375 Fixed
2014-12-03 19:07:04 +03:00
Valentin Kipyatkov
a40db1e794 Completion: for extension functions unsubstituted receiver type shown 2014-12-03 19:03:02 +03:00
Valentin Kipyatkov
522ceee559 Optimizations 2014-12-03 19:03:02 +03:00
Valentin Kipyatkov
1d288e6dcc Completion: multiple extension methods with different substitutions may be shown 2014-12-03 19:03:02 +03:00
Valentin Kipyatkov
2c08b3e229 Extension methods shown with type arguments substituted in completion list 2014-12-03 19:03:02 +03:00
Valentin Kipyatkov
3df3e57b05 Added tests 2014-12-03 19:02:20 +03:00
Valentin Kipyatkov
05bb32545f Fixed all members are grayed in global context 2014-12-03 19:02:20 +03:00
Valentin Kipyatkov
e5e27d028d Fixed smart completion at offset 0 2014-12-03 19:02:20 +03:00
Valentin Kipyatkov
cf35fc1fd5 Completion: immediate members get higher priority in the list 2014-12-03 19:02:20 +03:00
Valentin Kipyatkov
72ff719001 Completion: added package name for global functions/properties in the list 2014-12-03 19:01:48 +03:00
Valentin Kipyatkov
7c67566719 Completion: got rid of special LookupElementFactory implementation to highlight immediate members 2014-12-03 19:01:48 +03:00
Valentin Kipyatkov
66289f0b4a Completion: our own lookup elements for java classes 2014-12-03 19:00:58 +03:00
Valentin Kipyatkov
77e1210bff Completion: classes not to be used in Kotlin placed to the last place 2014-12-03 19:00:58 +03:00
Valentin Kipyatkov
6ddedb7825 Better imported/non-imported items sorting in completion 2014-12-03 19:00:58 +03:00
Valentin Kipyatkov
94b7945cd8 Added a test 2014-12-03 19:00:57 +03:00
Valentin Kipyatkov
48edd5f02a Fixed completion list ordering for java classes 2014-12-03 19:00:57 +03:00
Valentin Kipyatkov
9dc6a82fef More clear code + better test 2014-12-03 19:00:57 +03:00
Valentin Kipyatkov
6502c44928 Immediate extension members are correctly detected for platform types 2014-12-03 19:00:57 +03:00
Valentin Kipyatkov
acfd308a7e Code completion: graying members after dot completion for nullable value 2014-12-03 19:00:57 +03:00
Valentin Kipyatkov
a60f32b919 More correct and simple code 2014-12-03 18:59:45 +03:00
Valentin Kipyatkov
79cfa1f84e Code simplification 2014-12-03 18:59:45 +03:00
Alexander Udalov
07cfc173f9 Add ProtoBufConsistencyTest
This test checks that indices of all extensions on the same message type are
unique across different extension points (JVM, built-ins, ...)
2014-12-03 16:10:20 +03:00
Alexander Udalov
63bfa004fd Introduce binary representation for annotations
Will be used where annotations can't be stored elsewhere: for example,
built-ins, JS, type annotations on JDK<8
2014-12-03 16:10:19 +03:00
Alexander Udalov
9a86318908 Introduce extension for built-ins serialization, drop .kotlin_class_names 2014-12-03 15:58:14 +03:00
Alexander Udalov
f19aa2290c Minor, remove unnecessary NOTHING_TO_INLINE suppressions 2014-12-03 15:58:13 +03:00
Alexander Udalov
9bd815126b Rename NameTable -> StringTable in serialization
Since almost the beginning, it was also used to store arbitrary strings, not
just names
2014-12-03 15:58:13 +03:00
Alexander Udalov
66774c0fd1 Remove utility method from AnnotationDescriptor interface 2014-12-03 15:58:12 +03:00
Michael Bogdanov
328dedc415 Fix for KT-6383: Can't access a private static member of class object
#KT-6383 Fixed
2014-12-03 15:49:20 +03:00
Andrey Breslav
fda7f63957 isBoolean() moved to KotlinBuiltIns 2014-12-03 15:39:16 +03:00
Andrey Breslav
99ac9e1c2f Singleton made thread-safe in JavaToKotlinClassMap 2014-12-03 15:39:16 +03:00
Andrey Breslav
80a32ee875 ModuleDescriptor knows its built-ins 2014-12-03 15:39:15 +03:00
Andrey Breslav
32d2a9cdb2 KotlinBuiltIns injected into ExpressionTypingUtils 2014-12-03 15:39:14 +03:00
Andrey Breslav
ae7f38d891 Some usages of KotlinBuiltIns injected as components 2014-12-03 15:39:13 +03:00
Andrey Breslav
0bc721fd77 Singletons supported in Injector Generator 2014-12-03 15:39:13 +03:00
Andrey Breslav
6efa0032e5 GenerateInjectors cleaned up 2014-12-03 15:39:12 +03:00
Andrey Breslav
c21dd366e0 Checks for primitive types and arrays made static in KotlinBuiltIns 2014-12-03 15:39:11 +03:00
Andrey Breslav
b275b363c9 is<Annotation>() made static in KotlinBuiltIns 2014-12-03 15:39:11 +03:00
Andrey Breslav
db635c0e44 is<TYPE>() made static in KotlinBuiltIns 2014-12-03 15:39:10 +03:00
Andrey Breslav
7a41e37655 isNothing() made static 2014-12-03 15:39:10 +03:00
Andrey Breslav
ea4f0ab214 Methods in KotlinBuiltIns made static where already possible 2014-12-03 15:39:09 +03:00
Nikolay Krasko
75c887048e Drop AbstractLazyResolveRecursiveComparingTest test
Test data from compiler/testData/lazyResolve/ was moved to diagnostics tests
2014-12-03 14:08:23 +03:00
Nikolay Krasko
dd79fd9a98 Remove tests - same is tested in AbstractLoadJavaTest 2014-12-03 14:08:22 +03:00
Nikolay Krasko
f50aab4b85 Drop LazyResolveStdlibLoadingTest
- Descriptors compare is useless
- Absence of errors in stdlib is checked in NoErrorsInStdlibTest
2014-12-03 14:08:21 +03:00
Nikolay Krasko
a0a292cbf5 Drop AbstractLazyResolveDescriptorRendererTest with DescriptorRendererTest refactoring 2014-12-03 14:08:21 +03:00
Nikolay Krasko
44aba2d761 Drop lazy tests: test data is used in ResolveTestGenerated.Imports 2014-12-03 14:08:20 +03:00
Nikolay Krasko
b99d346e3a Subclass JetLightCodeInsightFixtureTestCase to avoid assert about invalid root 2014-12-03 14:08:19 +03:00
nik
ca7ce6228c initial injection support (KT-2428): allow injection inside string literals 2014-12-03 13:52:59 +03:00
Natalia Ukhorskaya
3ab7c6c8e9 Evaluate Expression: fix for anonymous objects - expressions where anonymous type can be replaced with super type can be evaluated 2014-12-03 12:49:40 +03:00
Natalia Ukhorskaya
b056fd7e2e Add test for completion with runtime type cast 2014-12-03 12:49:38 +03:00
Natalia Ukhorskaya
0c74016ab7 Remove duplicates in completion with runtime types 2014-12-03 12:49:37 +03:00
Natalia Ukhorskaya
e191130446 Move helper method 2014-12-03 12:49:35 +03:00
Natalia Ukhorskaya
732700e959 Completion: insert cast to runtime type for receiver in code fragments 2014-12-03 12:49:33 +03:00
Natalia Ukhorskaya
73e71543c6 Save runtime type evaluator to userdata of codeFragment 2014-12-03 11:19:39 +03:00
Natalia Ukhorskaya
deb80bc3ad Minor: fix warnings 2014-12-03 11:19:38 +03:00
Natalia Ukhorskaya
86af5ded76 Add surrounder for cast to runtime type 2014-12-03 11:19:38 +03:00
Stanislav Erokhin
99ec8952e1 Temporary hack for KT-6320 2014-12-02 18:09:01 +03:00
Stanislav Erokhin
b55114055e Change usage "v == Visibilities.PRIVATE" to Visibilities.isPrivate(v) 2014-12-02 14:30:17 +03:00
Stanislav Erokhin
b3f3b3946e Add receiver to Visibility#isVisible 2014-12-02 14:30:16 +03:00
Stanislav Erokhin
d997a6cb35 Fix protected visibility in class object. 2014-12-02 14:30:16 +03:00
Stanislav Erokhin
fc70c416ed Fix blinking test 2014-12-02 14:30:16 +03:00
Stanislav Erokhin
aa97bb8cfc Added Variance tests 2014-12-02 14:30:15 +03:00
Stanislav Erokhin
db457a612c Add test (recursive resolve in property declaration) to JetPsiChecker 2014-12-02 14:30:15 +03:00
Stanislav Erokhin
1664a55dcf Add VarianceChecker to TopDownAnalyzer 2014-12-02 14:30:15 +03:00
Stanislav Erokhin
c2d99a40cd Create VarianceChecker 2014-12-02 14:06:07 +03:00
Stanislav Erokhin
a8be80328f Convert Variance.java -> .kt 2014-12-02 13:48:44 +03:00
Stanislav Erokhin
9ed37ca1eb Add method getValueParameters() to JetCallableDeclaration 2014-12-02 13:48:44 +03:00
Stanislav Erokhin
a5c0dda10f Add TypeBinding. 2014-12-02 13:48:44 +03:00
Stanislav Erokhin
b2774a9cd0 Fix classpath test for openjdk 2014-12-02 13:47:48 +03:00
Denis Zharkov
5d2792d68b Removed redundant call v.done() in ClosureCodegen
It should be called by super.done()
2014-12-01 22:31:54 +03:00
Denis Zharkov
669f5e7b87 Minor, removed Contract from deparenthesize
and added some asserts
2014-12-01 22:31:53 +03:00
Denis Zharkov
0d03253f4e DependencyInjectorGenerator: reified extensions
1. Introduced reified extensions
2. Replaced extensions accepting varargs with ones
that accept single reified argument (it's looks more concise)
2014-12-01 22:31:53 +03:00
Denis Zharkov
b3bf8933df Extensions PsiElement.getParentOfType with reified T
1. Renamed *ByType -> *OfType (as in PsiTreeUtil.java)
2. Introduced PsiElement.getStrictParentOfType and PsiElement.getNonStrictParentOfType
with reified TP
3. Replaced current usages of PsiTreeUtil.getParentOfType and current
extensions
4. Made reified version of PsiElement.getParentOfTypeAndBranch with
default strict value --- false (as it used)
2014-12-01 22:28:35 +03:00
Denis Zharkov
8b80daa2a1 Replaced filterIsInstance with class-literal argument with simplified version 2014-12-01 22:28:34 +03:00
Andrey Breslav
c9c16696f1 Do not fail when delegating to an (unsupported) dynamic type on the JVM 2014-12-01 20:43:46 +03:00
Andrey Breslav
e10d29a10b JS-specific tests moved to a separate directory 2014-12-01 20:43:46 +03:00
Andrey Breslav
6187a0e9e0 Fix for UNSUPPORTED diagnostic for dynamic types in local classes 2014-12-01 20:43:46 +03:00
Andrey Breslav
8211f084e6 Dynamic types spec cleaned up 2014-12-01 20:43:46 +03:00
Andrey Breslav
b7dd63465b Allow invoke-convention on dynamic expressions 2014-12-01 20:43:45 +03:00
Andrey Breslav
53bbf20b0d Allow augmented assignments on dynamic receivers 2014-12-01 20:43:45 +03:00
Andrey Breslav
cc210c2950 Minor. Comments removed 2014-12-01 20:43:45 +03:00
Andrey Breslav
300f484535 Support operator conventions for dynamic types
TODO:
- invoke
- += etc
2014-12-01 20:43:45 +03:00
Andrey Breslav
fac53de40c Mark dynamic calls in for's, delegated properties and multi-declarations 2014-12-01 20:43:44 +03:00
Andrey Breslav
4adf74b46f Do not allow compareTo() to return Int? 2014-12-01 20:43:44 +03:00
Andrey Breslav
304d22553c Prohibit using dynamic as an argument for reified type parameters 2014-12-01 20:43:44 +03:00
Andrey Breslav
d5fdfcb797 Resolve dynamic.extensionForDynamic() statically 2014-12-01 20:43:44 +03:00
Andrey Breslav
8ee00b70ee Tests for extensions properties on dynamic types 2014-12-01 20:43:43 +03:00
Andrey Breslav
5cced5a451 Comments on bounded dynamic types 2014-12-01 20:43:43 +03:00
Andrey Breslav
1afe6fca5b Test for vararg parameter of dynamic type 2014-12-01 20:43:43 +03:00
Andrey Breslav
8cf6d24ffe Test for using dynamic types in conditions 2014-12-01 20:43:43 +03:00
Andrey Breslav
ea36024893 Report an error on dynamic types used as supertypes or upper bounds 2014-12-01 20:43:43 +03:00
Andrey Breslav
65164e95b5 Test for overrides involving dynamic types 2014-12-01 20:43:42 +03:00
Andrey Breslav
e09b624f05 dynamic is not a keyword on the left-hand side of callable references 2014-12-01 20:43:42 +03:00
Andrey Breslav
1f66c64ee0 dynamic receiver admits nullable values 2014-12-01 20:43:42 +03:00
Andrey Breslav
ef34b5c9a9 Commented code removed 2014-12-01 20:43:42 +03:00
Andrey Breslav
71b2e8bcf1 Test for substitutions with dynamic types 2014-12-01 20:43:41 +03:00
Andrey Breslav
a1c1d25575 Test for using dynamic types with smart casts 2014-12-01 20:43:41 +03:00
Andrey Breslav
712f776545 Test for using dynamic types with smart casts 2014-12-01 20:43:41 +03:00
Andrey Breslav
cdecb9d8c4 Test for using dynamic types in type inference 2014-12-01 20:43:41 +03:00
Andrey Breslav
7f0df032b4 Highlight dynamic calls in the editor 2014-12-01 20:43:41 +03:00
Andrey Breslav
52f1e037c1 Dynamic calls have priority over extensions 2014-12-01 20:43:40 +03:00
Andrey Breslav
f58b30706e Parsing dynamic in extension receiver position 2014-12-01 20:43:40 +03:00
Andrey Breslav
4f3158abb3 Mark dynamic calls in tests 2014-12-01 20:43:40 +03:00
Andrey Breslav
c8029307fa Forbid dynamic on the RHS of is and as 2014-12-01 20:43:40 +03:00
Andrey Breslav
645d931a9e Support for named arguments in dynamic calls 2014-12-01 20:43:39 +03:00
Andrey Breslav
0ebc478d50 Test for dynamic calls with lambdas 2014-12-01 20:43:39 +03:00
Andrey Breslav
d2e6767c07 Delegation and nullability turned into capabilities
Otherwise they did not sustain substitutions
2014-12-01 20:43:39 +03:00
Andrey Breslav
845f30975d Basic support for dynamic calls 2014-12-01 20:43:39 +03:00
Andrey Breslav
d5932e1a33 Nullability of dynamic types 2014-12-01 20:43:38 +03:00
Andrey Breslav
e0bd881c1e Rendering for dynamic types 2014-12-01 20:43:38 +03:00
Andrey Breslav
65794183e7 Specificity supported for dynamic types 2014-12-01 20:43:38 +03:00
Andrey Breslav
20513abe04 Allow dynamic types only in some contexts 2014-12-01 20:43:38 +03:00
Andrey Breslav
28b466d069 Parsing dynamic types 2014-12-01 20:43:37 +03:00
Andrey Breslav
0f26998b19 Spec document for dynamic types 2014-12-01 20:43:37 +03:00
Valentin Kipyatkov
d8bad58db8 Fixed JetDeclarationStub.getParent() which was incorrectly implemented before 2014-12-01 16:06:52 +03:00
Valentin Kipyatkov
2daeaa38d9 2 more indices not needed anymore 2014-12-01 16:06:52 +03:00
Valentin Kipyatkov
2a2fa5d4f2 More simple and effective top-level declarations by name search 2014-12-01 16:06:52 +03:00
Valentin Kipyatkov
e6e6fda251 More correct implementation PsiShortNamesCache (although I do not know if it matters at all) 2014-12-01 16:06:51 +03:00
Valentin Kipyatkov
486c83a174 Dropped 2 more not needed indices 2014-12-01 16:06:51 +03:00
Valentin Kipyatkov
4408944dc3 Dropped index which is not needed anymore 2014-12-01 16:06:51 +03:00
Valentin Kipyatkov
1431167afb Renamed two index classes for consistency 2014-12-01 16:06:51 +03:00
Valentin Kipyatkov
a50f9863b3 Classes by package index now contains only top-level classes 2014-12-01 16:06:51 +03:00
Valentin Kipyatkov
375a8f6049 Added indices for functions and properties in package and used them to speed up completion 2014-12-01 16:06:51 +03:00
Valentin Kipyatkov
9f6dd3ce2e Faster completion by not iterating over full class index for each package 2014-12-01 16:06:51 +03:00
Zalim Bashorov
7539eb3dfc Fix build on windows: use forward-slash in path to config files, it's important for access to files inside jar/zip. 2014-12-01 15:27:39 +03:00
Zalim Bashorov
31d4a8c226 JS frontend: added tests for nativeInvoke, nativeGetter, nativeSetter. 2014-12-01 15:27:38 +03:00
Zalim Bashorov
99745dfa90 Drop platform parameter in diagnostic tests(partial revert of 2a334fc). 2014-12-01 15:27:38 +03:00
Zalim Bashorov
a8e8f9b44e Move JsUnitTestReporter.java to utils. 2014-12-01 15:27:37 +03:00
Zalim Bashorov
3f480361f1 Move LibrarySourcesConfigWithCaching to js.frontend module. 2014-12-01 15:27:37 +03:00
Zalim Bashorov
c06d70d190 JS frontend: added checkers for nativeInvoke, nativeGetter, nativeSetter. 2014-12-01 15:27:36 +03:00
Zalim Bashorov
fdfbae05e4 Move AnnotationsUtils to js.frontend 2014-12-01 15:27:35 +03:00
Zalim Bashorov
7073f20484 JsDescriptorUtils#(isExtension, isOverride, getContainingClass) -> DescriptorUtils#(*) 2014-12-01 15:27:35 +03:00
Zalim Bashorov
e9dbb97e22 Minor in JS backend: refactoring JsInvocation. 2014-12-01 15:27:34 +03:00
Zalim Bashorov
b06096469a JS backend: added the support nativeInvoke, nativeGetter, nativeSetter. 2014-12-01 15:27:34 +03:00
Zalim Bashorov
e6b69e48d9 Minor: fix JetCoreEnvironment#(createForProduction, createForTests) call sites for JVM. 2014-12-01 15:27:33 +03:00
Zalim Bashorov
912727e5d2 Unify extension point and extension registration in plugin and cli 2014-12-01 15:27:33 +03:00
Stanislav Erokhin
14d663bcab Fix maven kotlin-stdlib-validator task. 2014-12-01 14:35:40 +03:00
Nikolay Krasko
8957a0621c Refactoring: remove method 2014-11-28 17:19:30 +03:00
Nikolay Krasko
e49d13dfac Refactoring: drop method, rename method in TopDownAnalyzerFacadeForJVM.java 2014-11-28 17:19:29 +03:00
Nikolay Krasko
840e16baa0 Test for IllegalArgumentException bug from JVM backend (KT-6149)
JVM backend fails with IllegalArgumentException: Argument for @NotNull parameter 'descriptor' of org/jetbrains/jet/codegen/PropertyCodegen.gen must not be null

 #KT-6149 Fixed
2014-11-28 17:18:48 +03:00
Nikolay Krasko
edf4ab8e64 Check no exception when static import in java is used and there's cyclic dependency between kotlin and java (KT-5848)
#KT-5848 Fixed
2014-11-28 17:18:48 +03:00
Nikolay Krasko
ce45108fe9 LTDA: Add addition scope provider component for lazy resolve and create additional injector for REPL 2014-11-28 17:18:47 +03:00
Nikolay Krasko
4342740195 Refactoring: move common code for ResolveSession init to method 2014-11-28 17:18:46 +03:00
Nikolay Krasko
d15ff6da45 LTDA: Make resolve session field non-public in JS injector 2014-11-28 17:18:45 +03:00
Nikolay Krasko
8cfdcd319b LTDA: Add the temp ability to build with eager resolve
Compiler should be executed with -Dlazy.tda=false parameter

REPL won't work with this option
2014-11-28 17:18:45 +03:00
Nikolay Krasko
1a894c7e5c LTDA: Store order of declarations in DeclarationProvider 2014-11-28 17:18:44 +03:00
Nikolay Krasko
0f852efb54 LTDA: Don't store illegal 'inner' modifier in descriptors 2014-11-28 17:18:43 +03:00
Nikolay Krasko
f2b6ea29c9 LTDA: Remove redeclaration errors under lazy resolve 2014-11-28 17:18:43 +03:00
Nikolay Krasko
cc6d7e420c LTDA: Test problem - skip LazyEntity in search for closest interface 2014-11-28 17:18:42 +03:00
Nikolay Krasko
0fa001ed01 LTDA, Minor: method rename 2014-11-28 17:18:41 +03:00
Nikolay Krasko
df115099a6 LTDA: Rename method for creating shared trace 2014-11-28 17:18:41 +03:00
Nikolay Krasko
a42edb9c8f LTDA: Assert context was created for light class generation 2014-11-28 17:18:40 +03:00
Nikolay Krasko
571f3c8524 LTDA: Initialize project components with resolve session after injector construction is finished 2014-11-28 17:18:39 +03:00
Nikolay Krasko
53b699d745 LTDA: Injector with Lazy TDA for JS target 2014-11-28 17:18:38 +03:00
Nikolay Krasko
602407cc9c LTDA: Fix REPL and make it work with lazy resolve 2014-11-28 17:18:38 +03:00
Nikolay Krasko
994c8886bc LTDA: Initialize built-ins reference resolver with lazy tda 2014-11-28 17:18:37 +03:00
Nikolay Krasko
23c6498e1e LTDA: Injector with lazy TDA for JVM target
- REPL is broken
 - Tests for Kotlin - Java - Kotlin hierarchy may fail
2014-11-28 17:18:36 +03:00
Nikolay Krasko
b57e5fa971 LTDA: Compare constructed descriptors only with test files 2014-11-28 17:18:35 +03:00
Nikolay Krasko
48f459f656 LTDA: Enable lazy analyze by default 2014-11-28 17:18:35 +03:00
Alexander Udalov
d1425c14ba Test built-ins serializer, untie built-ins from class loader resources 2014-11-28 15:39:03 +03:00
Alexander Udalov
44b8f3045f Introduce PackageFragmentProviderImpl
It works with a read-only collection of package fragments, passed to it in the
constructor
2014-11-28 15:35:59 +03:00
Alexander Udalov
fd2ddff750 Minor, simplify serialization of enum entries
Enum entries are never reordered during sort (see MemberComparator)
2014-11-28 15:35:59 +03:00
Valentin Kipyatkov
122b14dd7d More accurate filtering of extensions 2014-11-28 15:33:28 +03:00
Valentin Kipyatkov
016af0b53c Code completion: shorter presentation for member extensions 2014-11-28 15:33:28 +03:00
Valentin Kipyatkov
ffe231ec4d JetType.getTypeArguments() may not contain null's 2014-11-28 15:33:28 +03:00
Valentin Kipyatkov
bf65ddaa2f Minor code refactoring 2014-11-28 15:33:27 +03:00
Valentin Kipyatkov
3c07df36c7 Renames 2014-11-28 15:33:27 +03:00
Valentin Kipyatkov
8bc7cf3d18 Smart completion fixed filtering of non-suitable generic inheritors 2014-11-28 15:33:27 +03:00
Valentin Kipyatkov
bf130676a8 Minor 2014-11-28 15:33:27 +03:00
Valentin Kipyatkov
c1252c7963 Do not search inheritors of Any 2014-11-28 15:33:27 +03:00
Valentin Kipyatkov
9af2877f97 Inheritors in smart completion work for the classes in the same file too 2014-11-28 15:33:27 +03:00
Valentin Kipyatkov
4acf668ab8 Smart completion of inheritors: correct filtering of duplicates 2014-11-28 15:33:27 +03:00
Valentin Kipyatkov
85825e0ab1 Smart completion includes object's from scope before searching for inheritors
#KT-6123 Fixed
2014-11-28 15:33:27 +03:00
Valentin Kipyatkov
ed9dba2071 Dropped functions not needed anymore 2014-11-28 15:33:26 +03:00
Valentin Kipyatkov
52acd223a2 Fixed KT-5211 Code completion in IntelliJ for generating anonymous class creates code with compile error "Projections are not allowed for immediate arguments of a super type"
#KT-5211 Fixed
2014-11-28 15:33:26 +03:00
Valentin Kipyatkov
3566ac1510 Code completion: added type parameters for Kotlin classes too 2014-11-28 15:33:26 +03:00
Valentin Kipyatkov
820c2c7cd8 Smart completion: inheritors instantiation suggested + fixed a bug with incorrect presentation of generic java class instantiation 2014-11-28 15:33:26 +03:00
Valentin Kipyatkov
07f7a35bc9 Finally turned on non-imported extensions completion optimization as new ResolutionFacade now allows for resolving any declaration 2014-11-28 15:33:26 +03:00
Valentin Kipyatkov
4e4fbfcabc Fix 2014-11-28 15:33:26 +03:00
Michael Bogdanov
801f4ba837 Update to IDEA 139.560.4 2014-11-28 11:02:20 +03:00
Pavel V. Talanov
0a4f93ddb0 Move check for special annotation to an abstract class 2014-11-27 21:17:21 +03:00
Pavel V. Talanov
0d6555cc63 Prettify code in BinaryClassAnnotationAndConstantLoaderImpl 2014-11-27 21:17:20 +03:00
Pavel V. Talanov
bd575c39dd Fix calling toString() on ProtoContainer 2014-11-27 21:17:20 +03:00
Pavel V. Talanov
f0a9c4f683 Extract non-descriptor specific abstract ancestor for BinaryClassAnnotationAndConstantLoader 2014-11-27 21:17:19 +03:00
Pavel V. Talanov
39e1dfbcc0 Merge AnnotationLoader and ConstantLoader into single interface
Merge all implementation classes into single BinaryClassAnnotationAndConstantLoader
2014-11-27 21:17:18 +03:00
Pavel V. Talanov
1652157ec7 Prettify AnnotationDescriptorLoader, ConstantDescriptorLoader and DescriptorLoadersStorage after conversion 2014-11-27 21:17:18 +03:00
Pavel V. Talanov
09ff1128ea Convert AnnotationDescriptorLoader, ConstantDescriptorLoader and DescriptorLoadersStorage 2014-11-27 21:17:17 +03:00
Pavel V. Talanov
81ddd16df2 Rename AnnotationDescriptorLoader, ConstantDescriptorLoader and DescriptorLoadersStorage before conversion 2014-11-27 21:17:17 +03:00
Pavel V. Talanov
e4d3a65124 Make AnnotationLoader and ConstantLoader accept descriptor-independent data
Rewrite BaseDescriptorLoader to operate on data derived from proto
Intdoduce ProtoContainer to replace containing descriptor as input data
2014-11-27 21:17:16 +03:00
Pavel V. Talanov
c73ac97ecf Minor: simplify code 2014-11-27 21:17:15 +03:00
Pavel V. Talanov
d2fc7c7fd3 Inline BaseDescriptorLoader#getPackagePartClassName utilities 2014-11-27 21:17:15 +03:00
Pavel V. Talanov
38725687fc Prettify code in BaseDescriptorLoader after conversion 2014-11-27 21:17:14 +03:00
Pavel V. Talanov
bd540d5f80 Convert BaseDescriptorLoader to kotlin 2014-11-27 21:17:14 +03:00
Pavel V. Talanov
5aebc2fecd Rename BaseDescriptorLoader before conversion 2014-11-27 21:17:13 +03:00
Alexander Udalov
8dae1b62dd Add CharSequence.subSequence
This is done primarily for JVM interoperability, otherwise it's impossible to
inherit from CharSequence there. On JS subSequence at the moment just invokes
substring.

 #KT-5956 Fixed
2014-11-27 20:38:19 +03:00
Alexander Udalov
4d95bcfc7e Rename CharSequence.get to charAt
This is done for JVM interoperability. There's still a member function
String.get() and an extension function "get" on CharSequence

 #KT-1730 Fixed
 #KT-5389 Fixed
2014-11-27 20:38:18 +03:00
Alexander Udalov
a7b88e9485 Make CharSequence.length a function instead of property
And String.length as well.

This is done for JVM interoperability: java.lang.CharSequence is an open class
and has a function 'length()' which should be implemented in subclasses
somehow.

A minor unexpected effect of this is that String.length() is now a compile-time
constant (it wasn't such as a property because properties are not supported in
compile-time constant evaluation)

 #KT-3571 Fixed
2014-11-27 20:38:17 +03:00
Alexander Udalov
6b8da062a4 Increase memory for 'All * Tests' configurations
Use the same parameters as for All Tests
2014-11-27 20:38:17 +03:00
Denis Zharkov
3b2d0b88f3 Supported nested reified parameter declarations
Also switched to using type names as identifiers instead of their
indices
2014-11-27 15:15:04 +04:00
Denis Zharkov
080610c208 Wrap parentCodegen before generating from inline 2014-11-27 14:58:04 +04:00
Denis Zharkov
538a2172e5 Got rid of hack with stashing wereReified
1. Made ClosureCodegen extending MemberCodegen
2. Made ClosureContext extending ClassContext
2014-11-27 14:58:04 +04:00
Denis Zharkov
ca27be87cc Minor, removed redundant argument
from ClassBodyCodegen.generateDeclaration
2014-11-27 13:49:18 +04:00
Denis Zharkov
37d476c388 Moved DiagnosticFactories about reified to
``Type parameter declarations'' block
2014-11-27 13:49:18 +04:00
Denis Zharkov
02be1063c1 Do not report a warning on an inline function with a reified parameter
#KT-6273 Fixed
2014-11-27 13:49:17 +04:00
Denis Zharkov
f7d1bc5931 Diagnostics test: array creation of non-reified TP
#KT-1370 Fixed
2014-11-27 13:49:17 +04:00
Evgeny Gerashchenko
428109e8c4 Updated regexp for Windows. Hope it fixes test on buildserver... 2014-11-27 12:22:15 +03:00
Svetlana Isakova
724f2e6e7b KT-6081 Chained generic method calls: wrong type inference
#KT-6081 Fixed
2014-11-27 02:28:10 +03:00
Evgeny Gerashchenko
9c880de735 Compilation errors are rendered to log without "Kotlin:ERROR:" prefix and without path to file. Sometimes javac adds path to file, sometimes doesn't. This had led tests to fail on some platforms. 2014-11-26 18:42:24 +03:00
Alexander Udalov
8cb1c7f0e6 Pass NameResolver to loadClassAnnotations()
It's not used at the moment, but will be in the upcoming implementation of
annotation loader (for JS, built-ins and type annotations)
2014-11-26 17:27:08 +03:00
Evgeny Gerashchenko
19ad2406ff Moved test data into common directory. 2014-11-26 14:32:12 +03:00
Evgeny Gerashchenko
adcd4d4ca0 Fixed case of file name. 2014-11-26 14:32:11 +03:00
Alexey Sedunov
591c409854 Change Signature: Process Kotlin-based usages when changing signature of the Java function 2014-11-26 13:07:38 +03:00
Alexey Sedunov
18c10c9079 Change Signature: Allow running Java change signature from Kotlin usage/override 2014-11-26 13:07:37 +03:00
Alexey Sedunov
b5f2ce743c Change Signature: Allow running Kotlin change signature from Java usage/override 2014-11-26 13:07:36 +03:00
Alexey Sedunov
3d2cc129b5 Change Signature: Allow running Java's Change Signature in tests 2014-11-26 13:07:35 +03:00
Alexey Sedunov
5c4dd75110 Light Methods: Change PSI element language to Kotlin 2014-11-26 13:07:34 +03:00
Alexey Sedunov
1008225116 Change Signature: Processing of non-Kotlin usages
#KT-5810 Fixed
 #KT-4187 Fixed
2014-11-26 13:07:33 +03:00
Alexey Sedunov
c35c4072c6 Change Signature: Add support of multi-file tests 2014-11-26 13:07:32 +03:00
Alexey Sedunov
c80c866d82 Change Signature: Rename parameter in overriding functions
#KT-4045 Fixed
2014-11-26 13:07:31 +03:00
Alexey Sedunov
ddccc0e640 Change Signature: Update enum entries w/o delegation specifier when changing signature of enum class constructor
#KT-5978 Fixed
2014-11-26 13:07:29 +03:00
Alexey Sedunov
5bfdb8ee60 Change Signature: Do not add default values to parameters of overriding functions
#KT-6160 Fixed
2014-11-26 13:07:28 +03:00
Alexey Sedunov
d597c98445 Extract Function: Fix NPE when extracting this in object
#KT-6238 Fixed
2014-11-26 13:07:27 +03:00
Alexander Udalov
e0c842b3d8 Convert BuiltInsSerializationUtil to Kotlin 2014-11-25 23:17:01 +03:00
Alexander Udalov
a6d759ff96 Minor, add test for obsolete issue
#KT-3587 Obsolete
2014-11-25 23:16:56 +03:00
Alexander Udalov
7d43f39c80 Fix disappearing exceptions in GenerateProtoBuf.kt
Any exception caught during the generation (e.g. about an incompatible version)
is lost because of 'System.exit(0)' in 'finally'
2014-11-25 23:16:28 +03:00
Alexander Udalov
4e735878cf Minor, add "storageManager" property to context for convenience 2014-11-25 23:16:28 +03:00
Alexander Udalov
c35ddc3616 Minor, make ownTypeParameters a property in TypeDeserializer 2014-11-25 23:16:28 +03:00
Alexander Udalov
3a066dfd07 Rename "context" -> "c" in deserialization for brevity 2014-11-25 23:16:27 +03:00
Alexander Udalov
1c04a6052f Get rid of unnecessary list in Interner 2014-11-25 23:16:27 +03:00
Alexander Udalov
1f68c94ce6 Fix several bugs in serialization of inner generic classes
- Interner was working incorrectly with parents
- nested classes were serialized in codegen out of any context

 #KT-5660 Fixed
2014-11-25 23:16:26 +03:00
Alexander Udalov
36c65e4264 Minor, drop strange method from SerializerExtension 2014-11-25 23:16:26 +03:00
Alexander Udalov
b56076bd6a Merge LazyJavaResolverContext and LazyJavaResolverContextWithTypes 2014-11-25 23:16:26 +03:00
Alexander Udalov
60662e5831 Fix double laziness of annotations introduced in 149a90d 2014-11-25 23:16:21 +03:00
Alexander Udalov
75851d44cc Minor, inline method from LazyJavaPackageFragmentProvider 2014-11-25 23:15:50 +03:00
Alexander Udalov
ab6fec1540 Simplify type deserializer construction even more 2014-11-25 23:15:50 +03:00
Alexander Udalov
2b189c5193 Convert TypeDeserializer to Kotlin 2014-11-25 23:15:49 +03:00
Alexander Udalov
c9bef09085 Extract DeserializedType to top level and convert to Kotlin 2014-11-25 23:15:49 +03:00
Alexander Udalov
07c3a07ecb Make DeserializedType a static nested class 2014-11-25 23:15:49 +03:00
Alexander Udalov
5907df92db Drop secondary DeserializedPackageMemberScope constructor
Create package context only once
2014-11-25 23:15:49 +03:00
Alexander Udalov
e1a1c06c3e Rename deserialization context for Java to "components"
Simplify its injection to DeserializedDescriptorResolver
2014-11-25 23:15:49 +03:00
Alexander Udalov
823009e0df Add laziness-friendly toString() to lazy type parameter 2014-11-25 23:15:48 +03:00
Alexander Udalov
a4d4d15ca9 Improve code after conversion, fix some warnings 2014-11-25 23:15:48 +03:00
Alexander Udalov
d3635de205 Convert MemberDeserializer to Kotlin 2014-11-25 23:15:48 +03:00
Alexander Udalov
9c80801c3a Rename MemberDeserializer.java -> .kt 2014-11-25 23:15:48 +03:00
Alexander Udalov
673c15a23d Simplify component injection in annotation/constant loaders 2014-11-25 23:15:48 +03:00
Alexander Udalov
149a90d7bf Make annotations on deserialized descriptors truly lazy 2014-11-25 23:15:47 +03:00
Alexander Udalov
954678ab2b Minor, simplify MemberDeserializer.getAnnotations() 2014-11-25 23:15:47 +03:00
Alexander Udalov
4df7cb4e72 Major refactoring of deserialization contexts: merge two into one 2014-11-25 23:15:47 +03:00
Alexander Udalov
cb5c21e831 Merge DeserializationGlobalContext with DeserializationComponents 2014-11-25 23:15:47 +03:00
Alexander Udalov
aa1fa7063e Minor, drop one of "withTypes" in favor of default arguments 2014-11-25 23:15:47 +03:00
Alexander Udalov
1a84ade232 Minor, rename field deserializer -> memberDeserializer 2014-11-25 23:15:46 +03:00
Alexander Udalov
cfa484f760 Introduce DeserializationComponents
Decouple components from the state present in contexts, get rid of duplication
of parameters in each context
2014-11-25 23:15:46 +03:00
Alexander Udalov
fc0f83cbdb Minor, change parameter order, reformat 2014-11-25 23:15:46 +03:00
Alexander Udalov
eadf9a13b9 Untangle circular dependency of TypeDeserializer and context 2014-11-25 23:15:46 +03:00
Alexander Udalov
ea3778d5be Use outer class context in ClassDeserializer 2014-11-25 23:15:45 +03:00
Andrey Breslav
8f26bc646e Fix containing declarations for deserialized type parameters of top-level functions 2014-11-25 23:15:45 +03:00
Zalim Bashorov
04f6d50423 Minor in JS stdlib: annotate volatile and synchronized as native.
Don't generate code for this classes to avoid warnings from some minifiers.
Note: volatile and synchronized was reserved word in ECMAScript 2, but is not since ECMAScript 5.
2014-11-25 21:11:17 +03:00
Andrey Breslav
2a334fc8f5 Support JS-targeted diagnostic tests 2014-11-25 18:45:43 +03:00
Nikolay Krasko
722624f0a4 Add test about platform static checks in ide 2014-11-25 17:16:15 +03:00
Nikolay Krasko
700187cce6 Add ability to configure checker tests with directives 2014-11-25 17:16:14 +03:00
Natalia Ukhorskaya
528c674001 Gradle plugin: add file to sourceList instead of Function1 fix 2014-11-25 16:26:14 +03:00
Natalia Ukhorskaya
687fb247d3 Gradle plugin: add file to sourceList instead of Function1 2014-11-25 16:17:53 +03:00
Valentin Kipyatkov
dbe7c84af3 Partial body resolve: tests now support resolve to any element with selection in test data 2014-11-24 20:11:30 +03:00
Valentin Kipyatkov
389b2cca8a Internal action to search calls with type Nothing which is not explicitly declared 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov
95042a729f Fixed NPE 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov
f29e2788cb Improvements in internal action 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov
48f696947f Switched to ResolutionFacade 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov
32a13502c5 Fixed one of the cases with lambda's returning Nothing 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov
c5afc219b9 Added assert + removed qualified names 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov
bd8eaeedaa Added tests for lambda's returning Nothing (currently do not work) 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov
d7d533cf39 Added internal action to check partial body resolve correctness 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov
6cb6a907d7 Changed test output from line comments to block comments 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov
2f226685d5 Compiler bug workaround 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov
0f59622a44 Checked that partial body resolve works for property delegating 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov
390f5b1bc4 Added comment 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov
1f7f046552 Code refactoring 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov
14d1b9ce35 Renamed StatementTree + moved utility functions into class object 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov
ea3da6cbe6 Renamed enum members 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov
d334011d5d Renamed firstOrNullIsInstance 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov
ddc60ac5dd Better injecting of partial body resolve filter 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov
0b56760910 Partial body resolve works for property accessor body 2014-11-24 20:11:27 +03:00
Valentin Kipyatkov
8ccf56415a Partial body resolve filter: fixed nested loops case 2014-11-24 20:11:27 +03:00
Valentin Kipyatkov
cc84e9682b Partial body resolve: corrected it for explicit function type but unfortunately it does not work for non-explicit type yet 2014-11-24 20:11:27 +03:00
Valentin Kipyatkov
058af69078 Partial body resolve: added more tests 2014-11-24 20:11:27 +03:00
Valentin Kipyatkov
0dd77a8ed3 Renames - dropped word "Service" 2014-11-24 20:11:27 +03:00
Valentin Kipyatkov
2f19713cc2 Partial body resolve: rewritten algorithm of filter building to ensure correct resolve of smart cast points (+ prepared to support more strict mode for resolve only) 2014-11-24 20:11:27 +03:00
Valentin Kipyatkov
f8f07dc824 Minor 2014-11-24 20:11:27 +03:00
Valentin Kipyatkov
cd90ab951f Partial body resolve tests: more informative test output 2014-11-24 20:11:27 +03:00
Valentin Kipyatkov
4503adb7fc Partial body resolve filter: more correct lambda resolve for return 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov
59cc441fc5 Partial body resolve filter: changed algorithm so that all statements to resolve are found when constructing it 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov
4ca8a3400e Added a test 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov
166d580682 Partial body resolve: found group of cases incorrectly handled by the current implementation 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov
00d9c94a8b Changed way to pass statementFilter from ElementResolver into ExpressionTypingServices 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov
a0c9c0e7b2 Added firstOrNullIsInstance and firstIsInstance methods 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov
46c393d2db Added === and !== in addition to == and != 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov
a4513c6a00 Added comments 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov
6230ba7310 "casted" -> "cast" 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov
3e437adbb4 Minor code improvements 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov
8010c0f09d Partial body resolve works for local Nothing functions + does not go inside local functions and classes 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov
b22233d378 Corrected test data for stub tests 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov
3b77d337e8 Renames "possibly nothing" to "probably nothing" 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov
e5579bcf32 Partial body resolve: to take source Kotlin callables with Nothing type from caches 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov
992cdd9fe2 Partial body resolve: processing of standard "error" function 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov
ca8d45259b Partial body resolve: added a test to fail if smart-casts will become too clever 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov
e7ba59b209 Partial body resolve: correct handing of this qualifier 2014-11-24 20:11:24 +03:00
Valentin Kipyatkov
78e26c0cf9 Fixed partial body resolve when element to resolve is not inside body 2014-11-24 20:11:24 +03:00
Valentin Kipyatkov
f56d89c487 Partial body resolve: don't be confused by exits after ?: 2014-11-24 20:11:24 +03:00
Valentin Kipyatkov
e724af4b4e Partial body resolve: more efficient handling if-statements 2014-11-24 20:11:24 +03:00
Valentin Kipyatkov
0a7d73ef6b Partial body resolve: more efficient handling of loops 2014-11-24 20:11:24 +03:00
Valentin Kipyatkov
806bf3b942 Partial body resolve: more efficient handling of while 2014-11-24 20:11:24 +03:00
Valentin Kipyatkov
38c73f8df4 Partial body resolve: added test for do-while 2014-11-24 20:11:24 +03:00
Valentin Kipyatkov
a89c07924d Partial body resolve: fixed bug 2014-11-24 20:11:24 +03:00
Valentin Kipyatkov
e6acc5601c Partial body resolve: more efficient for-loop handling 2014-11-24 20:11:23 +03:00
Valentin Kipyatkov
5283b92269 Partial body resolve: more precise smart casts analysis for if-statement 2014-11-24 20:11:23 +03:00
Valentin Kipyatkov
a675b5ba38 Basic implementation of partial body resolve 2014-11-24 20:11:23 +03:00
Nikolay Krasko
9809e4fd0a Replace direct usages of TopDownLazyResolveForJava with facade 2014-11-24 19:19:35 +03:00
Nikolay Krasko
92d6ac7e7c Rewrite to Kotlin: LockBasedLazyResolveStorageManager 2014-11-24 19:19:32 +03:00
Nikolay Krasko
2800ab4a12 Rewrite to Kotlin (file rename): LockBasedLazyResolveStorageManager 2014-11-24 19:19:29 +03:00
Nikolay Krasko
a456f9d22e Add ability to create memoized functions with custom maps
- Remove cast in ResolveSession class
2014-11-24 19:19:14 +03:00
Stanislav Erokhin
edee61f2f5 Increase MaxPermSize for ant tasks 2014-11-24 15:41:57 +03:00
Stanislav Erokhin
4c0befbfe9 Remove unnecessary lazy value 2014-11-24 15:38:58 +03:00
Stanislav Erokhin
7fa93c4e90 Added support space symbols for diagnostic parameters in DiagnosticTest 2014-11-24 15:38:56 +03:00
Michael Bogdanov
8fc3a37989 Fix for KT-6312: Compiler crashes accessing inherited property of class object
#KT-6312 Fixed
2014-11-24 13:10:59 +03:00
Nikita Skvortsov
1e9d303705 fix for KT-5420 2014-11-22 02:52:19 +03:00
Nikita Skvortsov
65946c3ded minor code style improvements 2014-11-22 02:52:18 +03:00
Andrey Breslav
08ad4bec64 More information when no containing field found 2014-11-21 19:03:00 +03:00
Andrey Breslav
93a409d459 Rendering for resolution candidates 2014-11-21 19:02:47 +03:00
Andrey Breslav
b109a34651 Common formatting extracted 2014-11-21 18:59:45 +03:00
Andrey Breslav
0eee83b6ec Lazy logs removed 2014-11-21 18:59:45 +03:00
Andrey Breslav
4112b2de5f Disable lazy log checking by default 2014-11-21 18:59:44 +03:00
Pavel V. Talanov
ae75c7ecd7 Update stdlib-validator after changes to AnalysisResult 2014-11-21 16:10:05 +03:00
Pavel V. Talanov
ff3b3c8a6b Refactor: inline AnalyzerFacadeWithCache#getContextForElement 2014-11-21 15:56:11 +03:00
Pavel V. Talanov
67b2c32253 Minor: comment 2014-11-21 15:56:10 +03:00
Pavel V. Talanov
3afdd8bd92 Add analyzeFullyAndGetResult to ResolutionFacade 2014-11-21 15:56:10 +03:00
Pavel V. Talanov
63b402e93c Rename: JetElement#getLazyResolveSession() -> getResolutionFacade
Rename local variables and fields of type ResolutionFacade
2014-11-21 15:56:09 +03:00
Pavel V. Talanov
b2ce3da99c Minor: Inline the only usage of getAnalysisResultsForElements() 2014-11-21 15:56:09 +03:00
Pavel V. Talanov
cb1582fdc9 Rename: JetElement#getAnalysisResults() -> analyzeFullyAndGetResult 2014-11-21 15:56:08 +03:00
Pavel V. Talanov
1cf3938f13 Rename: JetElement#getBindingContext() -> analyzeFully 2014-11-21 15:56:07 +03:00
Pavel V. Talanov
d06628945c Refactor: Introduce JetElement#analyzeAndGetResult() utility 2014-11-21 15:56:07 +03:00
Pavel V. Talanov
407c2029da Rename: getModuleDescriptorForElement -> findModuleDescriptor 2014-11-21 15:56:06 +03:00
Pavel V. Talanov
6ff647ca66 Rename: resolveToElement() -> analyze 2014-11-21 15:56:06 +03:00
Pavel V. Talanov
e10461d0fa Minor: reorder functions 2014-11-21 15:56:05 +03:00
Pavel V. Talanov
bce399f5fd Rename: AnalyzeExhaust -> AnalysisResult 2014-11-21 15:56:05 +03:00
Pavel V. Talanov
e4670a791d Refactor: Introduce JetElement#getModuleDescriptorForElement() 2014-11-21 15:56:04 +03:00
Pavel V. Talanov
0319ef797e Refactor: Introduce DeclarationDescriptor#module utility 2014-11-21 15:56:03 +03:00
Pavel V. Talanov
96100eec1d Refactor: Introduce JetElement#resolveToElement utility 2014-11-21 15:56:03 +03:00
Pavel V. Talanov
585b556f52 Refactor: Introduce JetDeclaration#resolveToDescriptor utility 2014-11-21 15:56:02 +03:00
Pavel V. Talanov
95e668b1f1 Minor: move resolution utilities to a separate file 2014-11-21 15:56:02 +03:00
Pavel V. Talanov
df892ba33a Introduce ResolutionFacade to be used by plugin code instead of resolve session
Do not expose ResolveSessionForBodies where possible
Define API of ResolutionFacade, similar to what ResolveSessionForBodies has
JetElement#getLazyResolveSession returns ResolutionFacade
Call sites to be updated later
2014-11-21 15:56:01 +03:00
Pavel V. Talanov
2c9b0448a1 Fix getModuleInfo for elements in code fragments 2014-11-21 15:56:00 +03:00
Pavel V. Talanov
03a31db2ec Converter: use ide resolve through a dedicated interface
Eliminate direct usages of ResolveSession
2014-11-21 15:56:00 +03:00
Pavel V. Talanov
1f7c9f5693 Use KotlinCacheService directly in IDELightClassGenerationSupport 2014-11-21 15:55:59 +03:00
Pavel V. Talanov
1991f0119e Convert AnalyzeExhaust to Kotlin and make it a data class 2014-11-21 15:55:59 +03:00
Natalia Ukhorskaya
341d4a7a26 Fix maven build: remove wrong import 2014-11-21 15:07:06 +03:00
Svetlana Isakova
b71260f54e Moved tests
that are used both for codegen & diagnostics to codegen/box/diagnostics
2014-11-21 14:02:45 +03:00
Svetlana Isakova
2a83053355 Updated lazy log tests 2014-11-21 14:02:45 +03:00
Svetlana Isakova
9cd5f51b88 Added test for KT-4711
Error type with no error reported from type inference
 #KT-4711 Fixed
2014-11-21 14:02:43 +03:00
Svetlana Isakova
e31e63aabe Small refactoring: replaced code with 'getOrPut' library function 2014-11-21 14:02:43 +03:00
Svetlana Isakova
2948ca9077 Fixed argument for error message 'TYPE_PARAMETER_AS_REIFIED' 2014-11-21 14:02:43 +03:00
Svetlana Isakova
0719297d8f Uncommented test when extensions are called for nested calls 2014-11-21 14:02:42 +03:00
Svetlana Isakova
5d0f004292 Fix for 'if' special construct type
If one branch has Nothing type (contains 'return', etc.),
return result type of corresponding resolved call (it may depend on smart casts)
 #KT-6242 Fixed
2014-11-21 14:02:42 +03:00
Svetlana Isakova
36fd8a1a08 Set the right call operation node for implicit invoke
Make a call for implicit invoke safe if an outer call is safe
2014-11-21 14:02:42 +03:00
Svetlana Isakova
7f62675665 Fixed error reporting for special constructions (if, elvis)
Track whether an error was reported for sub expressions (like 'if' branches) or it should be reported for the whole expression
 #KT-6189 Fixed
2014-11-21 14:02:42 +03:00
Svetlana Isakova
8109b1f997 DONT_CARE placeholder can be nullable after a substitution
Interpret it as DONT_CARE as well (not as an error type where an error was generated before)
 #KT-6175 Fixed
2014-11-21 14:02:41 +03:00
Svetlana Isakova
8ad017c071 Extracted 'deparenthesizeArgument', used it where necessary
#KT-6176 Fixed
2014-11-21 14:02:41 +03:00
Michael Bogdanov
e2826a47e1 Remove "operation" method from StackValue.kt;
Compilation fix: remove static import to kotlin from AsmUtil
2014-11-21 13:59:44 +03:00
Michael Bogdanov
3a70992d27 Lazy intrinsic generation
#KT-6241 Fixed
2014-11-21 13:59:43 +03:00
Michael Bogdanov
4812564441 Intrinsic receiver parameter annotated with NotNull 2014-11-21 13:59:43 +03:00
Michael Bogdanov
afceec427d Intrinsic arguments parameter annotated with NotNull 2014-11-21 13:59:43 +03:00
Natalia Ukhorskaya
68d5e43ad3 Android Gradle Plugin 0.14.4 breaks Kotlin
#KT-6310 Fixed
2014-11-21 12:41:19 +03:00
Natalia Ukhorskaya
d85b3c15d8 Fix Android tests 2014-11-21 12:41:16 +03:00
Nikolay Krasko
5c597db881 Move ReferenceVariantsHelper and extensionsUtils to ide-common module
They are going to be used in Eclipse
2014-11-20 19:59:56 +03:00
Nikolay Krasko
d5f10d520c Update to IDEA 139.463.4 2014-11-20 12:38:21 +03:00
Michael Bogdanov
21d5785986 Inline StackValueWithSimpleReceiver utility constructor 2014-11-20 10:20:34 +03:00
Michael Bogdanov
fad64faabb canHaveSideEffect rename 2014-11-20 10:20:33 +03:00
Michael Bogdanov
d685921271 Review fixes 2014-11-20 10:20:33 +03:00
Michael Bogdanov
ec649e83c3 Don't skip receiver with side effects on static calls
#KT-6278 Fixed
2014-11-20 10:20:33 +03:00
Michael Bogdanov
5a8944085a Fix default property setter generation 2014-11-20 10:20:32 +03:00
Michael Bogdanov
9bac3a8055 Support platform static in call receiver, keep side effect on skiped receiver generation 2014-11-20 10:20:32 +03:00
Michael Bogdanov
6b2272e422 Call receiver rewrote in lazy way 2014-11-20 10:20:32 +03:00
Michael Bogdanov
2cc9d8e29b Support platformStatic for properties
#KT-5766 Fixed
2014-11-20 10:20:31 +03:00
Michael Bogdanov
5412a67d29 Generate static backing fields for properties in object
#KT-4973 Fixed
2014-11-20 10:20:31 +03:00
Michael Bogdanov
37bb4ae984 Coercion fix 2014-11-20 10:20:14 +03:00
Michael Bogdanov
c5d8f1faf5 Interface refs 2014-11-20 10:20:13 +03:00
Michael Bogdanov
fe1c6a0ca6 Introduce LOCAL_0 constant and some code cleaning 2014-11-20 10:20:13 +03:00
Michael Bogdanov
f00700b58d StackValue interface refactoring 2014-11-20 10:20:13 +03:00
Michael Bogdanov
434c094ba9 Get rid of lazy cast 2014-11-20 10:20:13 +03:00
Michael Bogdanov
4cb3d30e5b Added thiz constant in StackValue, some refactorings 2014-11-20 10:20:13 +03:00
Michael Bogdanov
62cb586397 Lazy receiver generation 2014-11-20 10:20:13 +03:00
Michael Bogdanov
af998101b3 Fix for KT-4206: NoSuchFieldError with class objects
#KT-4206 Fixed
2014-11-20 10:20:12 +03:00
Michael Bogdanov
7d1fd47569 Rewrite local var increment optimization 2014-11-20 10:20:12 +03:00
Michael Bogdanov
425f0984c7 Get rid of store 2014-11-20 10:20:12 +03:00
Michael Bogdanov
855bf772ca Prefix inc refactoring 2014-11-20 10:20:12 +03:00
Michael Bogdanov
c7b1c0fe52 Store refactoring
#KT-1213 Fixed
2014-11-20 10:20:11 +03:00
Michael Nedzelsky
505775218a JS backend: fix KT-6277 kotlinc-js: IllegalArgumentException when -output is a file name without directory prefix
#KT-6277 Fixed
2014-11-19 23:38:15 +03:00
Michael Nedzelsky
de2acc31ee JS backend: test for KT-6277 2014-11-19 23:38:12 +03:00
Valentin Kipyatkov
8006f16e46 Minor code refactorings 2014-11-19 16:01:20 +03:00
Valentin Kipyatkov
5036fdca14 Made ReferenceVariantsHelper class instead of object making method signatures shorter 2014-11-19 16:01:20 +03:00
Valentin Kipyatkov
d5d884025c Renamed TipsManager 2014-11-19 16:01:19 +03:00
Valentin Kipyatkov
601fe05cb0 Moved methods for checking extensions applicability from TipsManager to extensionUtils.kt (and made them all extension methods) 2014-11-19 16:01:19 +03:00
Valentin Kipyatkov
153b53baa8 Moved method checkIsExtensionCallable from ExpressionTypingUtils to TipsManager (converting it to Kottlin) 2014-11-19 16:01:19 +03:00
Valentin Kipyatkov
18b9e4a868 Added tests 2014-11-19 16:01:18 +03:00
Valentin Kipyatkov
376e12b6f3 Removed code which does not seem to be needed at all 2014-11-19 16:01:18 +03:00
Valentin Kipyatkov
e0da6247af Completion: bold immediate members for extensions too 2014-11-19 12:56:47 +03:00
Valentin Kipyatkov
a26388ef63 Completion: corrected presentation for extension properties 2014-11-19 12:56:47 +03:00
Valentin Kipyatkov
386c67925f Completion: do not bold top-level functions 2014-11-19 12:56:47 +03:00
Valentin Kipyatkov
fc993b88ec Checked that KT-4453 has been fixed recently by change in TipsManager 2014-11-19 12:56:46 +03:00
Nikolay Krasko
1fb0dc2d92 LTDA: Refactoring - extract processClassOrObject method from TDA 2014-11-18 17:10:25 +03:00
Nikolay Krasko
1a359fbcf6 LTDA: Refactoring - Move "analyzeFiles" to LazyTopDownAnalyzer 2014-11-18 17:10:24 +03:00
Nikolay Krasko
7b15f4125d LTDA: Fix configuration of package fragment provider in lazy resolve test code 2014-11-18 17:10:22 +03:00
Nikolay Krasko
ad05b5a709 Injector for additional body resolve with lazy analyzer
Fix resolve JS modules with JVM resolver
2014-11-18 17:10:21 +03:00
Zalim Bashorov
eae86e035f Minor in stdlib: move String.trimLeading and String.trimTrailing to common place. 2014-11-18 15:57:50 +03:00
Zalim Bashorov
14fd6eaaeb Minor: added missed quote and space. 2014-11-18 15:57:50 +03:00
Evgeny Gerashchenko
7e20c4876e Depending on IDEA community build configurations instead of ultimate.
Unified dependency naming (standalone-jps-IC-XXX.zip, was also standalone-jps-XXX.zip for continuous builds)
2014-11-18 15:24:46 +03:00
Alexey Sedunov
2ec4494c02 Find Usages: Add tests for enum entries 2014-11-18 13:25:03 +03:00
Alexey Sedunov
432c0bb69e Rename: Add tests for enum entries
#KT-4800 Fixed
2014-11-18 13:25:02 +03:00
Alexey Sedunov
6c08613f68 Change Signature: Add tests for enum entries
#KT-6034 Fixed
2014-11-18 13:25:01 +03:00
Alexey Sedunov
cf5f9424de Implementation Navigation: Add tests for enum entries
#KT-3540 Fixed
2014-11-18 13:25:00 +03:00
Alexey Sedunov
7556acf029 Light Classes: Provide light classes (as well as light fields) for enum entries 2014-11-18 13:24:57 +03:00
Alexey Sedunov
a6479bfc90 Light Classes: Do not add "final" modifier to enum light classes 2014-11-18 13:24:56 +03:00
Alexey Sedunov
7170209760 Move: Suggest creating Kotlin file if it doesn't exist
#KT-5379 Fixed
2014-11-18 13:24:55 +03:00
Valentin Kipyatkov
d061c3d771 Completion: bold members from immediate class 2014-11-17 22:06:16 +03:00
Valentin Kipyatkov
79cfe2bac4 Completion tests: added ability to test presentation text attributes 2014-11-17 22:06:16 +03:00
Valentin Kipyatkov
7410c36e3a Completion: moved signatures from "item text" to tail
#KT-5652 Fixed
2014-11-17 22:06:16 +03:00
Valentin Kipyatkov
b2f2c9ac75 Code formatting 2014-11-17 22:06:16 +03:00
Valentin Kipyatkov
b7e9d96af2 Smart completion includes constructor parameters for instantiation items 2014-11-17 22:06:16 +03:00
Valentin Kipyatkov
d421e7ac72 Code refactoring 2014-11-17 22:06:16 +03:00
Valentin Kipyatkov
58a67a2bf3 Use our own tail handler 2014-11-17 22:06:16 +03:00
Valentin Kipyatkov
7077e22dd3 More tests 2014-11-17 22:06:16 +03:00
Valentin Kipyatkov
03b3cf7480 Completion: better space key handling 2014-11-17 22:06:15 +03:00
Valentin Kipyatkov
656ed01b94 Code completion: more precise detection of "just typing" 2014-11-17 22:06:15 +03:00
Valentin Kipyatkov
7b7e992515 Code completion: '=' char supported for all items + it inserts spaces around '=' 2014-11-17 22:06:15 +03:00
Valentin Kipyatkov
08f43dcbf8 Renamed classes 2014-11-17 22:06:15 +03:00
Valentin Kipyatkov
3ecae800af Code completion: fixed comma key behavior for function with parameters + more tests 2014-11-17 22:06:15 +03:00
Valentin Kipyatkov
57692b1a37 Code completion: space after comma on selecting item with comma key 2014-11-17 22:06:15 +03:00
Valentin Kipyatkov
3ebc681eec Behavior on typing chars with code completion lookup is completely defined by our own handler + added tests for this handler + fixed a few bugs related to this behavior 2014-11-17 22:06:15 +03:00
Valentin Kipyatkov
f36208718e Smart completion: fixed lookup string behaviour for "::xxx" items 2014-11-17 22:06:14 +03:00
Valentin Kipyatkov
dfc8c9be16 Dropped redundant override 2014-11-17 22:06:14 +03:00
Valentin Kipyatkov
836b4aa0f0 Smart completion: fixed lookup string for anonymous object item 2014-11-17 22:06:14 +03:00
Valentin Kipyatkov
e256d14075 Smart completion: 2 lookup strings for static member items 2014-11-17 22:06:14 +03:00
Valentin Kipyatkov
2b33501471 Smart completion: fixed items ordering issue 2014-11-17 22:06:14 +03:00
Stanislav Erokhin
caf44969a4 Add support for check diagnostic parameters in test. 2014-11-17 17:45:06 +03:00
Stanislav Erokhin
5a192f58ea Create AbstractDiagnosticWithParametersRenderer with renderParameters method. 2014-11-17 17:45:06 +03:00
Stanislav Erokhin
12f2c0861f Added DiagnosticFactoryToRendererMap.put(Renderers.MultiRenderer) 2014-11-17 17:45:05 +03:00
Stanislav Erokhin
65c9ea2465 Fix variance problems. 2014-11-17 17:45:05 +03:00
Stanislav Erokhin
c10c1ad7f6 Fix wrong containingDeclaration for property type parameter. 2014-11-17 17:45:05 +03:00
Stanislav Erokhin
b69ed539ea Fix descriptor renderer for LazyType 2014-11-17 17:45:04 +03:00
Stanislav Erokhin
b7c473f59e Update lazy.log files 2014-11-17 17:45:01 +03:00
Stanislav Erokhin
2033042d33 Make candidates lazy in ResolutionTask & ResolutionTaskHolder 2014-11-17 17:38:52 +03:00
Stanislav Erokhin
eb50e4adb3 Inject StorageManager to ResolutionTaskHolder 2014-11-17 17:38:52 +03:00
Stanislav Erokhin
b7f7a3349d Rename ResolutionTaskHolder.java -> ResolutionTaskHolder.kt 2014-11-17 17:38:52 +03:00
Stanislav Erokhin
f59d54e64f Convert ResolutionTaskHolder to kotlin 2014-11-17 17:38:51 +03:00
Nikolay Krasko
b5fb27b485 LTDA: Register script files in packages slice 2014-11-17 16:15:26 +03:00
Nikolay Krasko
365319a8e6 LTDA: Make supertypes in lazy type parameters be recorded in order of declaration 2014-11-17 16:15:26 +03:00
Nikolay Krasko
261d4293ae LTDA: Don't read CONSTRUCTOR slice in backend
Usages from DECLARATIONS_TO_DESCRIPTORS are left
2014-11-17 16:15:25 +03:00
Nikolay Krasko
5657d30125 LTDA: Move prohibited 'class object' to the list with extra class objects descriptors in lazy resolve 2014-11-17 16:15:24 +03:00
Nikolay Krasko
a2ddaeca77 LTDA: Make BuiltinsReferenceResolver compatible with Lazy TDA 2014-11-17 16:15:24 +03:00
Nikolay Krasko
cb2a9168a7 Dropped redundant interface 2014-11-17 16:15:23 +03:00
Nikolay Krasko
e1d51e9879 Minor: code enhancements 2014-11-17 16:15:22 +03:00
Nikolay Krasko
27e9f9c926 Don't duplicate overloaded functions in getting all descriptors 2014-11-17 16:15:22 +03:00
Nikolay Krasko
38256d3240 toString() for filter 2014-11-17 16:15:21 +03:00
Alexander Udalov
93696ff9bd Make Array.indices extension property, move to stdlib
This is not something that needs to be intrinsified. Note that compiler
optimizations are still possible and the fact whether 'indices' is a member or
an extension is irrelevant to the optimizer
2014-11-17 15:20:44 +03:00
Alexander Udalov
36a9a99b4f Minor, fix formatting in Arrays.kt in stdlib 2014-11-17 15:02:39 +03:00
Alexander Udalov
74d00979d4 Use newly built compiler for kotlin2js instead of bootstrap
Otherwise it's impossible to make any change in built-ins: the bootstrap
compiler is not able to compile the new stdlib because stdlib is designed to
compile against the built-ins of the same version, but bootstrap compiler is
only aware of old built-ins which it has in its classpath
2014-11-17 15:02:38 +03:00
Alexander Udalov
128c938965 Make Array.size() a function instead of a property
Also add a deprecated extension property to help migration. This is done to
unify getting size of arrays and collections
2014-11-17 15:02:38 +03:00
Alexander Udalov
bc238d5f4c Regenerate tests 2014-11-17 14:08:45 +03:00
Natalia Ukhorskaya
7f56c815fb Debugger: add module info to key for type mapper in JetPositionManager 2014-11-17 11:45:10 +03:00
Evgeny Gerashchenko
321e758451 Merge pull request #528 from develar/patch-1
plugin description must be wrapped into CDATA if html used
2014-11-14 20:05:27 +04:00
Vladimir Krivosheev
074ac2a2e2 plugin description must be wrapped into CDATA if html used 2014-11-14 15:52:21 +01:00
Pavel V. Talanov
40addaed13 Fix wrong deserialization order
For case when property and function have the same name or
extension and non-extension member have the same name
2014-11-14 17:09:14 +03:00
Pavel V. Talanov
e8aee5cddf Sorting descriptors in DecompiledTextFactory is redundant 2014-11-14 17:09:10 +03:00
Pavel V. Talanov
d2cfcfa659 Fix test data after changes to renderer and descriptors 2014-11-14 17:09:05 +03:00
Pavel V. Talanov
32c66f9232 Regenerate OperationsMapGenerated 2014-11-14 16:18:34 +03:00
Pavel V. Talanov
c9bdba8e20 Minor: comment 2014-11-14 16:18:34 +03:00
Pavel V. Talanov
2d4d1caf17 Improve filtering descriptors in DeserializedMemberScope 2014-11-14 16:18:33 +03:00
Pavel V. Talanov
8016766b23 Extension/non-Extension members are deserialized in correct order 2014-11-14 16:18:33 +03:00
Pavel V. Talanov
8e1111d690 Deserialized scope descriptor order synced with serialization order
That introduces implicit dependency of deserialization on MemberComparator
2014-11-14 16:18:32 +03:00
Pavel V. Talanov
028e9105af Add test for enum class with inner classes 2014-11-14 16:18:32 +03:00
Pavel V. Talanov
847ccde099 Refactor DeserializedClassDescriptor: separate nested classes and enum entries logic 2014-11-14 16:18:31 +03:00
Pavel V. Talanov
9ddde7ca38 Do not put enum entry names into unordered set in deserialized classes 2014-11-14 16:18:30 +03:00
Pavel V. Talanov
5b009e216f Minor: comment 2014-11-14 16:18:30 +03:00
Pavel V. Talanov
77dd027d69 Use MemberComparator in DescriptorSerializer 2014-11-14 16:18:29 +03:00
Pavel V. Talanov
dc134b3394 MemberComparator: enum entries have top priority and are never reordered
Fix rendering accordingly
2014-11-14 16:18:29 +03:00
Pavel V. Talanov
eba5843468 Test order of enum entries in deserialized classes 2014-11-14 16:18:28 +03:00
Pavel V. Talanov
b7ca11cee1 Implement EnumEntrySyntheticClassDescriptor#toString() 2014-11-14 16:18:27 +03:00
Pavel V. Talanov
01cf60b834 Separate tests for ordering of deserialized members 2014-11-14 16:18:27 +03:00
Pavel V. Talanov
5ffa66ffc3 Do not put nested class names in unordered set for deserialized classes 2014-11-14 16:18:26 +03:00
Pavel V. Talanov
9a04ff0b9e Test order of nested/inner classes for deserialized classes 2014-11-14 16:18:26 +03:00
Pavel V. Talanov
52f7999bee Stable order of member descriptors in DeserializedMemberScope 2014-11-14 16:18:25 +03:00
Pavel V. Talanov
5be30ab81d Add validation that deserialized members are sorted accordingly 2014-11-14 16:18:25 +03:00
Pavel V. Talanov
e8b384eb63 Extract IntersectionScope in TypeUtils 2014-11-14 16:18:24 +03:00
Pavel V. Talanov
2533887253 Refactor: Make ValidationVisitor stateful so it's possible to inherit from it 2014-11-14 16:18:24 +03:00
Pavel V. Talanov
5f47a5aa49 Move MemberComparator to 'descriptors' module 2014-11-14 16:18:23 +03:00
Valentin Kipyatkov
a15edf716a Fixed KT-6235 Get rid of `` for identifier "type" in converter
#KT-6235 Fixed
2014-11-14 15:25:53 +03:00
valentin
51a5125987 No need to insert imports of Kotlin standard classes if java.util.* is imported 2014-11-14 15:25:53 +03:00
Zalim Bashorov
ccdcbf702a Update to IDEA 139.225.3 2014-11-13 21:52:39 +03:00
Denis Zharkov
8d47bdfebb Made <T> in arrayOfNulls() reified #KT-5651 Fixed 2014-11-13 20:56:10 +03:00
Denis Zharkov
eec4b7094c Added diagnostic test for Array<T> instances usage
when T is not reified
2014-11-13 20:56:10 +03:00
Denis Zharkov
e768b4e285 stdlib: Introduced filterIsInstance version
without class-literal as a parameter
2014-11-13 20:56:10 +03:00
Denis Zharkov
da5164acd8 stdlib: Introduced Array<T>?.orEmpty() in JVM-stdlib 2014-11-13 20:56:10 +03:00
Denis Zharkov
73ca75cc0b Fixed wrong constructor arguments order 2014-11-13 20:56:10 +03:00
Denis Zharkov
a8ca39754c Supported creating varargs of reified type parameter 2014-11-13 20:56:10 +03:00
Denis Zharkov
29b4ba9b3d Explicitly specified type of array 2014-11-13 20:56:09 +03:00
Denis Zharkov
28dc84344c Prohibit ''Nothing'' substitution of reified TP 2014-11-13 20:56:09 +03:00
Denis Zharkov
b3691b7358 Frontend changes for reified type parameters
Allowing reified only for inline functions and Intrinsics
2014-11-13 20:56:09 +03:00
Denis Zharkov
79c6f2b91b Introduced parametrised markers' set 2014-11-13 20:56:09 +03:00
Denis Zharkov
46f22b5422 Test fixed 2014-11-13 20:56:08 +03:00
Denis Zharkov
f00689d7c7 Made closure const instance public
because it's usage may be inlined into different package
2014-11-13 20:56:08 +03:00
Denis Zharkov
21699e1753 Supported reification for anonymous objects and lambdas 2014-11-13 20:56:08 +03:00
Denis Zharkov
a689f6d243 Tracking if there is something to reify in members 2014-11-13 20:56:08 +03:00
Denis Zharkov
d8e740d7a3 reifyInstructions returns Boolean whether there is something else to reify 2014-11-13 20:56:08 +03:00
Denis Zharkov
0087d861e1 Introduced new reified marker needClassReification
It's not parametrised by index
2014-11-13 20:56:08 +03:00
Denis Zharkov
c19c7d0ec7 Store parameters' identifiers in ReifiedTypeParameterMappings 2014-11-13 20:56:07 +03:00
Denis Zharkov
c18c67c993 Class signature reification 2014-11-13 20:56:07 +03:00
Denis Zharkov
6d6d6fadc1 Refactoring, unified closures generation 2014-11-13 20:56:07 +03:00
Denis Zharkov
45ca14345f Minor, replaced pattern of ArrayUtil.toStringArray 2014-11-13 20:56:07 +03:00
Denis Zharkov
74ca304931 Extracted buildClassReaderByInternalName into InlineCodegenUtil 2014-11-13 20:56:07 +03:00
Denis Zharkov
fc1d8dd9ce javaClass<T> is supported for reified T 2014-11-13 20:56:06 +03:00
Denis Zharkov
f3c49c605f Typecheck instructions are supported for reified T 2014-11-13 20:56:06 +03:00
Denis Zharkov
416ac7917b Removed old unused code emitting calls to non-existent methods 2014-11-13 20:56:06 +03:00
Denis Zharkov
4a66ab3627 Support generic array creation for reified inlined 2014-11-13 20:56:06 +03:00
Denis Zharkov
060c30746f Minor, extracted "kotlin/jvm/internal/Intrinsics" into IntrinsicMethods.INTRINSICS_CLASS_NAME 2014-11-13 20:56:06 +03:00
Denis Zharkov
8e3f87abaf Minor, extracted TypeUtils.isTypeParameter 2014-11-13 20:56:05 +03:00
Alexey Sedunov
b09684024b Generate light classes for Kotlin inner classes
#KT-6237 Fixed
2014-11-13 17:27:33 +03:00
Alexey Sedunov
da915aee7e Call Hierarchy: Do not interrupt caller hierarchy on non-local caller of local root declaration
#KT-6183 Fixed
2014-11-13 17:27:31 +03:00
Alexey Sedunov
558e038ba5 Extract Function: Replace non-denotable parameter types with their super types when possible
#KT-6187 Fixed
2014-11-13 17:27:29 +03:00
Alexey Sedunov
94efdeb3d5 Quick-fix Test: Fix file path which is passed to the FileComparisonException (so that we can update test data using text comparison UI) 2014-11-13 17:27:26 +03:00
Alexey Sedunov
c487cc7838 Create From Usage: Do not generate unnecessary/skip necessary empty lines 2014-11-13 17:27:24 +03:00
Alexey Sedunov
2e7cbab453 Create From Usage: Create package by reference expression/type reference 2014-11-13 16:43:12 +03:00
Alexey Sedunov
fd4fa9a042 Create Class From Usage: Allow user to choose a target directory when creating class in the specific package 2014-11-13 16:43:06 +03:00
Natalia Ukhorskaya
a9f9049223 Evaluate expression: fix exception for breakpoints on object header (for accessor methods) 2014-11-13 09:47:11 +03:00
Natalia Ukhorskaya
dab9411c5d Mark line numbers for bridges in closures 2014-11-13 09:47:10 +03:00
Natalia Ukhorskaya
0a97481184 Mark lineNumbers for synthetic accessors 2014-11-13 09:47:10 +03:00
Valentin Kipyatkov
eb25e47a51 Temporarily disabled optimization for faster non-imported extensions completion because it causes duplicated items, added test for this problem 2014-11-12 22:23:20 +03:00
Valentin Kipyatkov
b13c0f2248 Renamed methods 2014-11-12 21:57:50 +03:00
Valentin Kipyatkov
5f5d2de5e0 Moved KindFilter and DescriptorKindExclude out of JetScope, moved constants as well and renamed them 2014-11-12 21:57:49 +03:00
Valentin Kipyatkov
8e992abe58 Minor 2014-11-12 21:25:02 +03:00
Valentin Kipyatkov
25d8db37db Completion optimizations: do not search classes in java package when no SAM-constructors needed or when only singleton classifiers needed 2014-11-12 21:25:02 +03:00
Valentin Kipyatkov
95b3885aa5 Refactored filtering by descriptor kind so that no knowledge about SAM-constructors required in core 2014-11-12 21:25:02 +03:00
Valentin Kipyatkov
6711567d9a More correct types filtering in code completion 2014-11-12 21:25:02 +03:00
Valentin Kipyatkov
2512962134 Faster completion of non-imported extensions 2014-11-12 21:25:02 +03:00
Valentin Kipyatkov
ff4d91d47b Replaced usages of getAllDescriptors() from Kotlin code with getDescriptors() 2014-11-12 21:25:01 +03:00
Valentin Kipyatkov
16c7201b34 Memory optimizations 2014-11-12 21:25:01 +03:00
Valentin Kipyatkov
5696fef30f Replace HashSet's with LinkedHashSet's for consistent behavior 2014-11-12 21:25:01 +03:00
Valentin Kipyatkov
048d34b964 Minor changes after code review 2014-11-12 21:25:01 +03:00
Valentin Kipyatkov
bf38da7bb1 Made private things private 2014-11-12 21:25:01 +03:00
valentin
6729a72ef8 Completion optimization to not search classes across all modules for each modules 2014-11-12 21:25:01 +03:00
Valentin Kipyatkov
4ca6c611f8 JetScope.Empty must be public 2014-11-12 21:25:00 +03:00
Valentin Kipyatkov
c040c53f51 Optimization to not fetch objects in separate pass 2014-11-12 21:25:00 +03:00
Valentin Kipyatkov
19f9f27675 No double-filtering 2014-11-12 21:25:00 +03:00
Valentin Kipyatkov
fe5dbbf9b3 More efficient code completion + fixed a few bugs 2014-11-12 21:25:00 +03:00
Valentin Kipyatkov
f31832dea9 Smart completion optimization 2014-11-12 21:25:00 +03:00
Valentin Kipyatkov
6f2da4930a Descriptor kind filter replaced with bit mask 2014-11-12 21:24:59 +03:00
Valentin Kipyatkov
43df891515 More precise descriptor kind filtering (preparing to optimize smart completion) 2014-11-12 21:24:59 +03:00
Valentin Kipyatkov
5f4220427f Smart completion does not need SAM-constructor in declarations from scope + it's present even when not imported 2014-11-12 21:24:59 +03:00
Valentin Kipyatkov
a8bd7caed1 Added filtering in subpackages scope 2014-11-12 21:24:59 +03:00
Valentin Kipyatkov
8d02c58e0a Added name filter to PackageFragmentProvider.getSubPackagesOf but do not know how to use it actually 2014-11-12 21:24:59 +03:00
Valentin Kipyatkov
d744575000 DeserializedPackageMemberScope uses kind and name filters 2014-11-12 21:24:58 +03:00
Valentin Kipyatkov
ad9bb5c2a5 Removed stuff not used anymore 2014-11-12 21:24:58 +03:00
Valentin Kipyatkov
ccb7ba5517 More efficient treatment of single class imports 2014-11-12 21:24:58 +03:00
Valentin Kipyatkov
e14529eff7 LazyImportScope to filter by name and kind filters 2014-11-12 21:24:58 +03:00
Valentin Kipyatkov
059deb3c88 Added use of nameFilter to one of the implementations of DeclarationProvider 2014-11-12 21:24:58 +03:00
Valentin Kipyatkov
ed2a50ffcb Minor 2014-11-12 21:24:58 +03:00
Valentin Kipyatkov
c7ba03f76a DeclarationProvider.getAllDeclarations() -> getDeclarations(kindFilter, nameFilter) 2014-11-12 21:24:58 +03:00
Valentin Kipyatkov
169b082fff LazyMemberScope refactoring in progress 2014-11-12 21:24:57 +03:00
Valentin Kipyatkov
d2d7529d9f Split file with 3 classes into 3 files 2014-11-12 21:24:57 +03:00
Valentin Kipyatkov
e51993d339 LazyPackageFragmentScopeForJavaPackage uses name filter in getDescriptors() for methods and properties as well 2014-11-12 21:24:57 +03:00
Valentin Kipyatkov
c7527e4a4d Name filters filter by Name instead of String 2014-11-12 21:24:57 +03:00
Valentin Kipyatkov
8b2f6007c2 Minor 2014-11-12 21:24:57 +03:00
Valentin Kipyatkov
b08e444aa0 LazyPackageFragmentScopeForJavaPackage uses name filter in getDescriptors() for classes 2014-11-12 21:24:57 +03:00
Valentin Kipyatkov
5059ae5182 Removed kotlin.Boolean qualification 2014-11-12 21:24:56 +03:00
Valentin Kipyatkov
78169f73a6 Completion to pass nameFilter to getDescriptors() calls 2014-11-12 21:24:56 +03:00
Valentin Kipyatkov
2f9b8a21ce LazyPackageFragmentScopeForJavaPackage uses filters in getDescriptors() and does not cache it 2014-11-12 21:24:56 +03:00
Valentin Kipyatkov
f8b278464e Minor code editings 2014-11-12 21:24:56 +03:00
Valentin Kipyatkov
0472eb57a1 Refactored WritableScopeImpl to not cache result of getDescriptors() but use filters 2014-11-12 21:24:56 +03:00
Valentin Kipyatkov
a2dbf68286 Code simplifications 2014-11-12 21:24:56 +03:00
Valentin Kipyatkov
6d90a7a8d9 Minor code simplifications 2014-11-12 21:24:55 +03:00
Valentin Kipyatkov
164a8798f8 Chained scope to not cache result of getDescriptors() but uses filters 2014-11-12 21:24:55 +03:00
Valentin Kipyatkov
1983a9f3da Replaced usages of JetScope.getAllDescriptors() with JetScope.getDescriptors() (where makes sense) 2014-11-12 21:24:55 +03:00
Valentin Kipyatkov
2dd41028fd Removed explicit invoke() 2014-11-12 21:24:55 +03:00
Valentin Kipyatkov
760b9c4389 Added JetScope.getDescriptors(nameFilter, kindFilter) but the filters are never used yet 2014-11-12 21:24:55 +03:00
Nikolay Krasko
e8a2039396 Use JetTestUtils.assertEqualsToFile in usages tests to simplify fixing test data 2014-11-12 20:37:45 +03:00
Nikolay Krasko
c2a544d475 Remove syntax error from java files in usage test data 2014-11-12 20:37:43 +03:00
Nikolay Krasko
ccb6aec5ee Fix changing files after running Generated Test configuration 2014-11-12 20:35:01 +03:00
Evgeny Gerashchenko
6bf0c9f4ae Updating Kotlin incremental caches and Java mappings only for Java modules. 2014-11-12 17:56:48 +03:00
Evgeny Gerashchenko
ab09ffa4a4 Minor. Renamed property for disambiguation. 2014-11-12 16:25:02 +03:00
Evgeny Gerashchenko
1bab0e5d04 Unified downloading IDEA for main and continuous branches. 2014-11-12 16:25:02 +03:00
Evgeny Gerashchenko
20b1c6e910 Removed redundant macro parameter. It was never used since introduced. 2014-11-12 16:25:02 +03:00
Evgeny Gerashchenko
1a374efcd1 Fixed KNPE when inline functions/constants are completely removed. 2014-11-12 16:25:01 +03:00
Natalia Ukhorskaya
c9e5099307 Add test for KT-6240: create custom renderer for generic class
#KT-6240 Open
2014-11-12 15:17:21 +03:00
Natalia Ukhorskaya
12b4fc7ad9 Resolve codeFragments with context of JetClass 2014-11-12 15:13:37 +03:00
Natalia Ukhorskaya
a86e0336c9 Fix EA-60377 - readAccess for isSubclass 2014-11-12 11:52:41 +03:00
Natalia Ukhorskaya
e82eb38ec3 Debugger: make KotlinRenderer inapplicable if at least one of custom renderer is defined 2014-11-12 11:52:40 +03:00
Evgeny Gerashchenko
868a8dbc84 Fixed paths unification in tests on some Windows machines. 2014-11-12 11:09:35 +03:00
Alexander Udalov
b39d34ca8d Prepend zeros to SAM wrapper hash code
To make its length always 8 characters as is already done for package parts.
This fixes some test on incremental compilation because it relies that hashes
are eight characters long
2014-11-11 19:59:20 +03:00
Alexander Udalov
83a2111057 Configure modules 'reflection' and 'reflection.jvm'
Add source roots for IDE features to work in sources, but exclude from Make:
these modules are compiled by the new compiler from build.xml and some weird
errors may arise if we compile it with the old compiler (and also output of
that compilation won't be used anyway)
2014-11-11 18:35:41 +03:00
Alexander Udalov
29480f30ef Minor, fix compilation in module reflection.jvm 2014-11-11 18:35:41 +03:00
Alexander Udalov
57d37a3860 Extract reflection implementation to module runtime.jvm 2014-11-11 18:35:40 +03:00
Alexander Udalov
4f0d83a7fe Update lazy logs after field rename 2014-11-11 18:35:39 +03:00
Alexander Udalov
eb96b97bc8 Get rid of underscores in private property names
They were used to workaround duplicate signature errors, but this is no longer
relevant since no accessors are generated for private properties with backing
fields
2014-11-11 18:35:37 +03:00
Alexander Udalov
bb96a8e1fb Rename JavaResolverPsiUtils -> JavaResolverUtils 2014-11-11 18:10:44 +03:00
Alexander Udalov
be08e33463 Minor, change annotation in test data
To fix this case in an upcoming test which adds retention(runtime) to all
annotations (which resulted in duplicate annotation here)
2014-11-11 18:10:43 +03:00
Alexander Udalov
ae3c17d399 Minor, get rid of SAMs in some loadJava tests 2014-11-11 18:10:43 +03:00
Alexander Udalov
66d27fad13 Move utilities out of 'core' to where they are used 2014-11-11 18:10:42 +03:00
Alexander Udalov
d3f210f73c Move SAM resolution to frontend.java 2014-11-11 18:10:42 +03:00
Alexander Udalov
0b6bb38bb3 Move SAM function type calculation to SamConversionResolver 2014-11-11 18:10:42 +03:00
Alexander Udalov
344c6f0b3f Move SAM adapter resolution logic to SamConversionResolver 2014-11-11 18:10:41 +03:00
Alexander Udalov
ae78b0e216 Minor, merge two sematically identical functions 2014-11-11 18:10:41 +03:00
Alexander Udalov
4350da5f24 Extract SAM constructor resolution logic to a component 2014-11-11 18:10:40 +03:00
Nikolay Krasko
d6ffd22533 More tests for decompiling classes with wrong abi version 2014-11-11 17:40:26 +03:00
Nikolay Krasko
43eb94726c Make single decompiler be responsible for compiled Kotlin files
IDEA caches link between a virtual file and correspondent FileViewProvider.
This breaks navigation to decompiled sources for the library that has been
just updated because of outdated ABI version.

Also IDEA don't allow to change language for decompiled files.

 #KT-6016 Fixed
2014-11-11 17:34:56 +03:00
Nikolay Krasko
5555e28bfb Refactoring: Modify test for incompatible ABI version 2014-11-11 17:33:13 +03:00
Nikolay Krasko
c242665cd3 Extract isCompatibleAbiVersion from kinds enum and store read kinds even for incompatible version 2014-11-11 17:33:13 +03:00
Nikolay Krasko
95a2dce627 Remove warning and add tests when this warning had been reproducible 2014-11-11 17:33:12 +03:00
Nikolay Krasko
d5bef5e612 Minor: better Kotlin code 2014-11-11 17:33:11 +03:00
Nikolay Krasko
d80c98a8ba Minor: formatting 2014-11-11 17:33:10 +03:00
Michael Nedzelsky
dd86823480 JS backend: compile some builtins to builtins.js instead of stdlib 2014-11-11 17:09:00 +03:00
Michael Nedzelsky
5f576c4c05 JS backend: test for toGenerator from stdlib 2014-11-11 17:08:56 +03:00
Alexey Sedunov
afeb03f383 Create From Usage: Create class by annotation entry/super-call delegation specifier 2014-11-11 14:42:48 +03:00
Alexey Sedunov
1b1eb10979 Create From Usage: Create class by constructor call 2014-11-11 14:42:45 +03:00
Alexey Sedunov
b8f68acdbb Create From Usage: Create class by reference expression 2014-11-11 14:42:42 +03:00
Alexey Sedunov
1f14d93412 Create From Usage: Create class by type reference 2014-11-11 14:42:39 +03:00
Alexey Sedunov
a76607beca Callable Builder: Support class generation 2014-11-11 14:42:37 +03:00
Alexey Sedunov
aaf4283531 JetTypeParameterListOwner: Add getTypeParameterList() and getTypeConstraintList() methods 2014-11-11 14:42:34 +03:00
Alexey Sedunov
7123ca8ea0 Name suggester: Respect type parameter name when suggesting name for
variables based on that type parameter
2014-11-10 21:10:39 +03:00
Alexey Sedunov
f81c2d5ff7 Name suggester: Improve name suggestion strategy for type parameters 2014-11-10 21:10:37 +03:00
Alexey Sedunov
7cb77314bc Callable Builder: Allow to forbid substitution for any TypeInfo 2014-11-10 21:10:37 +03:00
Alexey Sedunov
538248cafa Callable Builder: Do not skip unused type parameters 2014-11-10 21:10:35 +03:00
Alexey Sedunov
2f98af1a8e Callable Builder: Do not skip unused type parameters 2014-11-10 21:10:35 +03:00
Alexey Sedunov
88dcd858a6 CallableBuilder: Add option to suppress substitution 2014-11-10 21:10:33 +03:00
Alexey Sedunov
59e4325fc0 Move JetCodeFragment-related logic to JetIntentionActionsFactory 2014-11-10 21:10:33 +03:00
Alexey Sedunov
850f1ebccd JetIntentionActionsFactory, JetSingleIntentionActionFactory: Translate to Kotlin 2014-11-10 21:10:31 +03:00
Alexey Sedunov
aa2c10446b JetIntentionActionsFactory, JetSingleIntentionActionFactory: Rename to .kt 2014-11-10 21:10:30 +03:00
Alexey Sedunov
42a74f55da Create From Usage: Remove "from usage" words from action text 2014-11-10 21:10:29 +03:00
Alexey Sedunov
d343bb4dc3 Move declaration: Create new file when needed 2014-11-10 21:10:27 +03:00
Andrey Breslav
74ec7728c8 Actually create .kt files in the file system for Kotlin multifile tests 2014-11-10 18:38:48 +02:00
Andrey Breslav
993c6d82c2 Minor. Formatting 2014-11-10 17:24:08 +02:00
Andrey Breslav
8dcd81e0b3 KT-6178 False "Overriden methods are not annotated" when using delegation
#KT-6178 Fixed
2014-11-10 17:24:07 +02:00
Andrey Breslav
586b7e3dee Base class for multi-file tests extracted 2014-11-10 17:24:06 +02:00
Andrey Breslav
f16dcdd8a9 Do not annotate Kotlin members returning platform types as @Nullable
This leads to pointless warning in Java code
2014-11-10 17:24:06 +02:00
Andrey Breslav
19afb2fcb8 Make candidate resolver force-resolve type arguments on argument count mismatch 2014-11-10 17:24:05 +02:00
Andrey Breslav
4892369cf4 Diagnostic tests are logging their lazy activity 2014-11-10 17:24:04 +02:00
Andrey Breslav
8436147cec KT-1056 Don't allow passing type arguments to T
#KT-1056 Fixed
2014-11-10 17:23:58 +02:00
Andrey Breslav
35766dfa20 Additional/forced resolve for lazy types 2014-11-10 17:23:58 +02:00
Andrey Breslav
7d9be42969 LazinessTokens introduced to enable/disable building lazy types 2014-11-08 15:51:41 +02:00
Andrey Breslav
2334bf4c70 Resolution of type constructors in TypeResolver is now lazy (for types in declarations) 2014-11-08 15:51:41 +02:00
Andrey Breslav
adafd70730 Abstract lazy type moved to descriptors 2014-11-08 15:51:41 +02:00
Andrey Breslav
266262df68 TypeResolver converted to Kotlin 2014-11-08 15:51:40 +02:00
Andrey Breslav
ccc489abfd Inter-field dependencies fixed for fields used as context
The problem was that when GivenExpression was used to initialize a feld, the generator did not know that there's
a dependency on the receiver of the call inside the expression, so it could place the call before the initialization of the receiver,
 which caused a compilation error. Now dependencies are tracked explicitly
2014-11-08 15:51:40 +02:00
Svetlana Isakova
fad4261448 KT-6132 No smart completion for argument of java static method
#KT-6132 Fixed
2014-11-08 10:36:25 +03:00
Valentin Kipyatkov
d4275e1110 Added test for KT-6132 2014-11-08 10:36:25 +03:00
Svetlana Isakova
de6cdf19ac Improved assert error message 2014-11-08 10:36:24 +03:00
Zalim Bashorov
ab8979c614 Revert "Workaround for bootstrapping with changes in kotlin2js ant task and cli compiler."
This reverts commit a5b928782b.
2014-11-07 19:53:03 +03:00
Natalia Ukhorskaya
42257218b6 Fix tests after adding lineNumber for functions without return expression 2014-11-07 17:18:02 +03:00
Denis Mekhanikov
323df9498a stdlib: fix DropStream & TakeStream mutliple iteration 2014-11-07 17:14:58 +03:00
Denis Mekhanikov
80493aa4e6 stdlib: improve tests 2014-11-07 17:14:57 +03:00
Denis Mekhanikov
495967a573 stdlib: fix documentation for some IO functions 2014-11-07 17:14:57 +03:00
Denis Mekhanikov
23397d17dc stdlib: simplify File.recurse and File.extension functions 2014-11-07 17:14:56 +03:00
Denis Mekhanikov
1a4c11cb98 stdlib: rearrange IO functions 2014-11-07 17:14:56 +03:00
Zalim Bashorov
3e7b0be68d K2JS: test that UNUSED_PARAM warnings inside native declarations and all warnings from stdlib was suppressed. 2014-11-07 16:30:52 +03:00
Zalim Bashorov
a5b928782b Workaround for bootstrapping with changes in kotlin2js ant task and cli compiler. 2014-11-07 16:30:52 +03:00
Zalim Bashorov
adab0445de K2JS: introduce "no-stdlb" parameter and use stdlib from compiler by default. 2014-11-07 16:30:52 +03:00
Zalim Bashorov
e457eea438 Use JarFileSystem for collect kotlin files inside archive instead of own implementation. 2014-11-07 16:30:52 +03:00
Zalim Bashorov
aecd2be25e Introduce constant for "kt". 2014-11-07 16:30:51 +03:00
Zalim Bashorov
ab5d34c373 Reset extensions cache in DiagnosticsWithSuppression when Application changed(that hepens in tests). 2014-11-07 16:30:51 +03:00
Zalim Bashorov
b3defdbf90 JS tests: create JetFiles by JetPsiFactory instead of by PsiManager to avoid to access to PsiManager after it disposed.
That fixed js tests after changes in DiagnosticsWithSuppression.
2014-11-07 16:30:51 +03:00
Zalim Bashorov
38d5f2ee2b Extract the suppressing logic for debugger. 2014-11-07 16:30:51 +03:00
Zalim Bashorov
cd20301283 JS frontend: suppress warnings from stdlib. 2014-11-07 16:30:51 +03:00
Zalim Bashorov
c8556ec1f7 JS frontend: suppress UNUSED_PARAM for native declarations.
#KT-2141 Fixed
2014-11-07 16:30:51 +03:00
Zalim Bashorov
624f5c4c34 Minor: moved test for check the iterating over String to common place.
#KT-3617 Fixed
2014-11-07 16:30:50 +03:00
Alexander Udalov
70d0c2ff92 Generate generic signature to collection method stubs
#KT-6213 Fixed
2014-11-07 16:10:12 +03:00
Natalia Ukhorskaya
d4b0977381 Debugger: stop at closing bracket for functions without return statement 2014-11-07 15:10:41 +03:00
Evgeny Gerashchenko
878aac1acb Fixed test on Windows (slashes issue). 2014-11-07 14:52:40 +03:00
Evgeny Gerashchenko
d72f31de61 Updating Java mappings only for incremental mode.
Avoiding executing this code on TeamCity, which fails on TeamCity 8.x
2014-11-07 14:52:05 +03:00
Evgeny Gerashchenko
fe2d54dc5d Correct checking for action availability. 2014-11-07 14:52:05 +03:00
Evgeny Gerashchenko
e51296b047 Extracted function which creates compiler environment. 2014-11-07 14:52:04 +03:00
Evgeny Gerashchenko
a840e4d122 Extracted functions which update incremental caches, etc 2014-11-07 14:52:04 +03:00
Evgeny Gerashchenko
a797f82ce2 Extracted methods compiling to JS and JVM in KotlinBuilder. 2014-11-07 14:52:03 +03:00
Evgeny Gerashchenko
97b516a600 Improved output dir checking in KotlinBuilder.
Output dir for representative target is necessary only for JS part: moved there.
2014-11-07 14:52:02 +03:00
Evgeny Gerashchenko
155775f925 Minor. Added test when compilation error is introduced and fixed in other package. 2014-11-07 14:52:02 +03:00
Evgeny Gerashchenko
1e2c4659cd Committed wrong behavior of Java+Kotlin incremental compilation (Java files recompiled twice). 2014-11-07 14:52:01 +03:00
Evgeny Gerashchenko
7f49a8c159 Added tests with redeclaration. The behavior is correct (compilation error), while diagnostic message is not ideal. 2014-11-07 14:52:01 +03:00
Evgeny Gerashchenko
47e16390a9 Added test with conflicting function overloads in different files. 2014-11-07 14:52:00 +03:00
Evgeny Gerashchenko
21105fcae4 Tests with SAM conversions. 2014-11-07 14:51:59 +03:00
Evgeny Gerashchenko
3237791433 Added tests with adding method to superclass. 2014-11-07 14:51:58 +03:00
Evgeny Gerashchenko
86dd7ec880 Tests: converting Java to Kotlin and back. 2014-11-07 14:51:57 +03:00
Evgeny Gerashchenko
c0b0a17256 Supported incremental compilation tests when compilation fails in the end. 2014-11-07 14:51:56 +03:00
Evgeny Gerashchenko
335c3f4506 Tests with renamed method, incremental compilation between Kotlin and Java. 2014-11-07 14:51:56 +03:00
Evgeny Gerashchenko
e1180983aa Replaced absolute paths with macro in compilation errors. 2014-11-07 14:51:55 +03:00
Evgeny Gerashchenko
9234ef3803 Tests with constants, incremental compilation between Kotlin and Java. 2014-11-07 14:51:54 +03:00
Evgeny Gerashchenko
70331e3b82 Initial support for kotlin-java interop in incremental compilation. 2014-11-07 14:51:53 +03:00
Evgeny Gerashchenko
3011bdb7d7 Aborting compilation on errors (don't try to compile Java after it). 2014-11-07 14:51:52 +03:00
Evgeny Gerashchenko
0f8dd59bcf Minor. Expanded test. 2014-11-07 14:51:51 +03:00
Evgeny Gerashchenko
4cf7b9e20c Minor. More correct constants processing. If class without constants is added, it doesn't mean directly that others should be recompiled. Anyway, this mistake didn't lead to any bug: proto change would be detected anyway. 2014-11-07 14:51:51 +03:00
Evgeny Gerashchenko
2492fe47f3 Minor. Added test data sanity check. 2014-11-07 14:51:50 +03:00
Evgeny Gerashchenko
b435b59648 Updated regexp for Android Studio redistributable URL 2014-11-06 20:11:24 +03:00
Evgeny Gerashchenko
76bd381345 Updated to IDEA 14 release (139.224.1) 2014-11-06 18:53:02 +03:00
Ilya Ryzhenkov
8fc550f3b1 Fix split invocation in js tests. 2014-11-06 17:13:17 +03:00
Nikolay Krasko
34001c23c1 Caching in KotlinLightClassForPackage haven't been working because of bad scope hashCode() 2014-11-06 16:48:04 +03:00
Nikolay Krasko
0568cc7ee7 Avoid calling descriptors.toString() in production code without need 2014-11-06 16:48:04 +03:00
Ilya Ryzhenkov
656bd028bc Remove dead commented code. 2014-11-06 16:45:58 +03:00
Ilya Ryzhenkov
ad1a2c4000 Update generated code to move "type" member into its place after it was demoted from keyword. 2014-11-06 16:45:58 +03:00
Ilya Ryzhenkov
2e154b73de Support componentN for arrays and lists #KT-5538 Fixed 2014-11-06 16:45:57 +03:00
Ilya Ryzhenkov
c2fabf5736 Comparator<T> replaced with Comparator<in T> #KT-6030 Fixed 2014-11-06 16:45:57 +03:00
Ilya Ryzhenkov
24ee79aa2d Replace ArrayList<Any>() with stdlib_emptyListClass() and fix test. #KT-6013 Fixed 2014-11-06 16:45:56 +03:00
Ilya Ryzhenkov
0dc68c2702 Avoid using negative in descending sorts. 2014-11-06 16:45:56 +03:00
Natalia Ukhorskaya
55590e00a5 Evaluate expression: add ability to evaluate expression suspending on class header 2014-11-06 16:21:54 +03:00
Natalia Ukhorskaya
4eb93c06b1 Write line numbers for bridge methods (line for class header) 2014-11-06 16:21:52 +03:00
Natalia Ukhorskaya
0047655ed3 Debugger: fix stepping in when 2014-11-06 14:27:06 +03:00
Michael Bogdanov
221784b0f3 Mark linenumber on statement end 2014-11-06 11:48:50 +03:00
Valentin Kipyatkov
c95448b185 Code improvements after conversion to Kotlin 2014-11-05 21:42:17 +03:00
Valentin Kipyatkov
64e6b7f52d Converted BuiltinsPackageFragment to Kotlin 2014-11-05 21:42:17 +03:00
Valentin Kipyatkov
99a1cda82a Converting PackageFragmentProvider and its implementations to Kotlin 2014-11-05 21:42:16 +03:00
Valentin Kipyatkov
19f50960ca Code improvements after conversion to Kotlin 2014-11-05 21:42:16 +03:00
Valentin Kipyatkov
7a4bd79acc Converted to Kotlin 2014-11-05 21:42:16 +03:00
Valentin Kipyatkov
18c604bdf0 Renamed file to keep history 2014-11-05 21:42:15 +03:00
Valentin Kipyatkov
72e0546fde Converted JavaPackage and its implementation to Kotlin 2014-11-05 21:42:15 +03:00
Valentin Kipyatkov
9c9b431d7b Converted DeclarationProvider and all its inheritors to Kotlin 2014-11-05 21:42:14 +03:00
Valentin Kipyatkov
e2e7210b37 Converted DeserializedPackageMemberScope to Kotlin 2014-11-05 21:42:14 +03:00
Valentin Kipyatkov
c71100b486 Minor code improvements after conversion to Kotlin 2014-11-05 21:42:14 +03:00
Valentin Kipyatkov
9b81cf2454 Converted DeserializedMemberScope to Kotlin 2014-11-05 21:42:13 +03:00
Valentin Kipyatkov
db9015ed4a Converted LazyPackageMemberScope 2014-11-05 21:42:13 +03:00
Valentin Kipyatkov
6503d6f85c Converted LazyScriptClassMemberScope to Kotlin 2014-11-05 21:42:12 +03:00
Valentin Kipyatkov
c2a3fde969 Converted JetScope to Kotlin 2014-11-05 21:42:12 +03:00
Valentin Kipyatkov
c26c8f0a84 Workaround for compiler's bug 2014-11-05 21:42:11 +03:00
Valentin Kipyatkov
62215664ab Converted 2 more JetScope implementations to Kotlin 2014-11-05 21:40:08 +03:00
Valentin Kipyatkov
e517c10541 Minor code simplifications 2014-11-05 21:40:07 +03:00
Valentin Kipyatkov
c325230a37 Converted LazyImportScopy to Kotlin 2014-11-05 21:40:07 +03:00
Valentin Kipyatkov
a13301fd4a Simplified code 2014-11-05 21:40:07 +03:00
Valentin Kipyatkov
15fed6d641 Converted SubstitutingScope to Kotlin 2014-11-05 21:40:07 +03:00
Valentin Kipyatkov
ac306a1839 Converted FilteringScope to Kotlin 2014-11-05 21:40:07 +03:00
Valentin Kipyatkov
0f5b23e254 Converted ChainedScope to Kotlin 2014-11-05 21:40:07 +03:00
Valentin Kipyatkov
f5def83429 Converted WritableScope to Kotlin 2014-11-05 21:40:07 +03:00
Valentin Kipyatkov
0491e5f583 Minor code simplifications using Kotlin 2014-11-05 21:40:06 +03:00
Valentin Kipyatkov
0a01cdb99d Converted to Kotlin 2014-11-05 21:40:06 +03:00
Valentin Kipyatkov
961d55681e Converted to Kotlin 2014-11-05 21:40:06 +03:00
Valentin Kipyatkov
0a2403476e Converted method to property 2014-11-05 21:40:06 +03:00
Valentin Kipyatkov
e2b7b79fa1 Converting JetScope's implementations to Kotlin (in progress) 2014-11-05 21:40:06 +03:00
Michael Bogdanov
8a9977de72 Fix for KT-6202: Redundant and wrong linenumber after if/else condition
#KT-6202 Fixed
2014-11-05 18:25:36 +03:00
Michael Bogdanov
ad6afee53f Fix for KT-6196: ClassCastException on unit property initializer
#KT-6196 Fixed
2014-11-05 18:25:36 +03:00
Natalia Ukhorskaya
78bc15222b Gradle plugin: fix sourceSets for flavors (android) 2014-11-05 16:38:39 +03:00
Evgeny Gerashchenko
586d48f91e Fixed accidental override of new method in IDEA API. 2014-11-05 15:11:11 +03:00
Andrey Breslav
1b8c7aaf3d Memory optimization. Do not put sets into caches 2014-11-05 08:30:32 +02:00
Nikolay Krasko
7e1546d3e7 Merge stored empty lists and sets to singe object 2014-11-02 14:55:00 +03:00
Andrey Breslav
87d372aad5 Memory optimization: Fewer ConcurrentHashMap.Segment instances 2014-11-01 13:40:13 +02:00
Andrey Breslav
60ff2df597 Memory optimization: Do not retain LinkedHashSets in caches
LinkedHashSets are replaced with tight ArrayLists
2014-11-01 13:38:24 +02:00
Valentin Kipyatkov
bfdb756e22 Fixed formatting of doc-comments for parameters 2014-10-31 21:08:52 +03:00
Valentin Kipyatkov
00fdd52b35 Fixed doc-comments only binder to bind doc-comment always 2014-10-31 21:08:52 +03:00
Valentin Kipyatkov
0806de6782 Highlighting ranges should never include comments before/after element 2014-10-31 21:08:52 +03:00
Valentin Kipyatkov
f0b93f3de3 Fixed highlighting range for errors in class object 2014-10-31 21:08:52 +03:00
Valentin Kipyatkov
65f66de597 Added JetDeclaration.getDocComment() + more correct implementation of it 2014-10-31 21:07:52 +03:00
Valentin Kipyatkov
43e5112c21 Added parameter with default value to test 2014-10-31 21:07:52 +03:00
Valentin Kipyatkov
2200908367 Doc comments for parameters and property accessors 2014-10-31 21:07:52 +03:00
Valentin Kipyatkov
6915255d2f Introduced utility method closeDeclarationWithCommentBinders 2014-10-31 21:07:52 +03:00
Valentin Kipyatkov
2a1e575f80 Minor corrections in comment binder's code 2014-10-31 21:07:52 +03:00
Valentin Kipyatkov
f0f3489f80 Used public API instead of impl-one 2014-10-31 21:07:52 +03:00
Valentin Kipyatkov
d394625771 Fixed override/implement 2014-10-31 21:07:51 +03:00
Valentin Kipyatkov
5f180751cc Fixed tests 2014-10-31 21:07:51 +03:00
Valentin Kipyatkov
cf04ba4943 Corrected test data 2014-10-31 21:07:51 +03:00
Valentin Kipyatkov
b05b03a9c0 Corrected gold data - formatting became better after binding comments inside 2014-10-31 21:07:51 +03:00
Valentin Kipyatkov
84ba96900a Fixed formatter to work correctly with comments inside declaration nodes 2014-10-31 21:07:51 +03:00
Valentin Kipyatkov
d6dc2531b0 Removed binding of comment after package directive 2014-10-31 21:07:51 +03:00
Valentin Kipyatkov
c93b78c6dc Fixed diagnostics tests 2014-10-31 21:07:50 +03:00
Valentin Kipyatkov
c562cfb83d Simplified declaration's up/down mover because it does not need to attach comments to declaration manually anymore 2014-10-31 21:07:50 +03:00
Valentin Kipyatkov
b811a6cab4 Corrected comments binding so that comments before local functions and classes are bound to them 2014-10-31 21:07:50 +03:00
Valentin Kipyatkov
9a8aa0f71a Fixed tests for moving code up/down 2014-10-31 21:07:50 +03:00
Valentin Kipyatkov
f4b0f0e661 Fixed tests for variable/function extraction 2014-10-31 21:07:50 +03:00
Valentin Kipyatkov
377df47e29 Fixed doc-comment not attached to the first declaration with no package directive + incorrect placement of comments for enum entry 2014-10-31 21:07:50 +03:00
Valentin Kipyatkov
e3d6b7358c Fixing taking doc-comment for declaration 2014-10-31 21:07:49 +03:00
Valentin Kipyatkov
41685f0ba3 Fixing declaration ranges in decompiled code - comment "/* compiled code */" now is inside property 2014-10-31 21:07:49 +03:00
Valentin Kipyatkov
9dd4b5598e Comments binding (not complete yet) 2014-10-31 21:07:44 +03:00
Nikolay Krasko
ec2613db72 Do the check with converted line separators 2014-10-31 19:52:41 +03:00
Nikolay Krasko
775fddbf73 Do logging with system dependent paths 2014-10-31 19:52:41 +03:00
Pavel V. Talanov
c617b73424 Rename stub classes: PsiJet*Stub(Impl) -> Kotlin*Stub(Impl) 2014-10-31 18:26:09 +03:00
Pavel V. Talanov
5fb4f41030 Rename test data folder: libraries -> decompiler 2014-10-31 18:12:20 +03:00
Pavel V. Talanov
d2d9813e12 Rename and restructure plugin.libraries package
Rename: libraries -> decompiler
New subpackages: textBuilder, navigation
2014-10-31 16:49:11 +03:00
Pavel V. Talanov
f47d8239c4 Convert and rename JetClsStubBuilder 2014-10-31 16:48:26 +03:00
Pavel V. Talanov
97cbadef61 Decompiler tests: check decompiled text was parsed correctly 2014-10-31 15:04:47 +03:00
Pavel V. Talanov
602be6303c Minor: JetPsiUtil#getElementTextWithContext() accepts PsiElement 2014-10-31 15:04:46 +03:00
Pavel V. Talanov
3b59a513b0 Approximating flexible types in decompiled text 2014-10-31 15:04:46 +03:00
Pavel V. Talanov
b728ba2b1e Test function types in decompiler 2014-10-31 15:04:45 +03:00
Pavel V. Talanov
c0416255c4 DescriptorRenderer: fix rendering of functional types in receivers 2014-10-31 15:04:45 +03:00
Nikolay Krasko
8cbda20ef2 Relay artifact to internal folder 2014-10-31 00:39:47 +03:00
Nikolay Krasko
b6d0539795 Prepare additional artifact with test data to reuse it from eclipse 2014-10-31 00:39:47 +03:00
Nikolay Krasko
4622b6dd8f Move IdeDescriptorRenderer to ide-common 2014-10-31 00:39:46 +03:00
Nikolay Krasko
3a10416192 Rename module: ide-lazy-resolve -> ide-common 2014-10-31 00:39:45 +03:00
Nikolay Krasko
4e99572dbc Update to EAP 139.222.5 2014-10-31 00:39:45 +03:00
Michael Bogdanov
b8c13b851c Move to proguard 5.1
#KT-5931 Fixed
2014-10-30 19:02:03 +03:00
Michael Bogdanov
59917f3727 Fix for KT-6154: Inlining a private class function accessing a private val member throws exception at runtime in accessing the val getter
#KT-6154 Fixed
2014-10-30 19:02:03 +03:00
Pavel V. Talanov
951ce827a6 Parser: allow function types as receiver type for function 2014-10-30 16:47:03 +03:00
Pavel V. Talanov
632bceef26 Minor: fix parser error message 2014-10-30 16:47:03 +03:00
Natalia Ukhorskaya
c36fc42014 Exception analyzer doesn't show multiple attachments 2014-10-30 15:39:39 +03:00
Natalia Ukhorskaya
7bb4e538a6 Use resolveAnnotations instead of getResolvedAnnotations for typeReference 2014-10-30 15:39:38 +03:00
valentin
3aadd6f880 Corrected test data bacause return inside "use { }" is now allowed 2014-10-30 12:55:54 +03:00
Valentin Kipyatkov
245e70100d Renamed parameter 2014-10-30 12:55:54 +03:00
Valentin Kipyatkov
0b4c7588da Java to Kotlin action: no infinite recursion for symlinks + more efficient update() 2014-10-30 12:55:53 +03:00
Valentin Kipyatkov
448d444b2d J2K: replaced IntermediateResult with function 2014-10-30 12:55:53 +03:00
Valentin Kipyatkov
2e0ccf6984 J2K: fixed usage processing scheme to cover exotic case with anonymous class 2014-10-30 12:55:52 +03:00
Valentin Kipyatkov
7de15ec2a8 J2K: singletons are back 2014-10-30 12:55:52 +03:00
Valentin Kipyatkov
567bb6fd1a Renamed LazyElement -> DeferredElement 2014-10-30 12:55:51 +03:00
Valentin Kipyatkov
17622f8259 J2K: correct mutable/non-mutable types for overrides of Kotlin methods 2014-10-30 12:55:51 +03:00
Valentin Kipyatkov
0092c952ef Minor 2014-10-30 12:55:51 +03:00
Valentin Kipyatkov
899a051a8f J2K: fixed assertion 2014-10-30 12:55:50 +03:00
Valentin Kipyatkov
7e147d28c2 J2K converter: automatic generation of 'open' modifier for classes and methods 2014-10-30 12:55:50 +03:00
Valentin Kipyatkov
39cea5999c J2K: renamed Field to Property 2014-10-30 12:55:49 +03:00
Valentin Kipyatkov
3f6cebbc28 J2K converter testing: added dumping of errors into multifile tests too 2014-10-30 12:55:49 +03:00
Valentin Kipyatkov
82fc0ee394 Java to Kotlin converter tests: added check for errors in result file 2014-10-30 12:55:48 +03:00
Valentin Kipyatkov
389b14f44f KT-6120 Java to Kotlin converter can generate mutable collection types in case if collection write methods used
#KT-6120 Fixed
2014-10-30 12:55:48 +03:00
Valentin Kipyatkov
1af63cb3be Java to Kotlin converter: preparing to support Mutability 2014-10-30 12:55:47 +03:00
Valentin Kipyatkov
3217981a62 Disable Java To Kotlin action when not java file selected 2014-10-30 12:55:47 +03:00
Valentin Kipyatkov
d67e99d40a Fixed KT-6110 J2K converter: do not replace accessors implementing interface with property
#KT-6110
2014-10-30 12:55:47 +03:00
Valentin Kipyatkov
927fe9d2cb JavaToKotlinAction converts all files at once with cross usage processing 2014-10-30 12:55:46 +03:00
Valentin Kipyatkov
f100015e58 JavaToKotlinAction refactorings + minor fixes in the logic 2014-10-30 12:55:46 +03:00
Valentin Kipyatkov
41cb97ac61 Converted JavaToKotlinAction and JavaToKotlinActionUtil into Kotlin and merged into one class 2014-10-30 12:55:45 +03:00
Valentin Kipyatkov
3d6da9104c J2K: memory optimization 2014-10-30 12:55:45 +03:00
Valentin Kipyatkov
abf537e348 J2K: conversion with usage processing across multiple converted files works in tests (but not in real life yet) 2014-10-30 12:55:45 +03:00
Valentin Kipyatkov
41c7ec8285 J2K: processing usages of get/set methods in the code being converted when converting them into property 2014-10-30 12:55:43 +03:00
Valentin Kipyatkov
3b51858ed9 Removed workaround for compiler bug which has been fixed 2014-10-30 12:55:43 +03:00
Valentin Kipyatkov
e81631a3af J2K: refactored code to make createDefaultCodeConverter() private 2014-10-30 12:55:42 +03:00
Valentin Kipyatkov
7941314c60 J2K: fixed conversion of default parameter values and annotation arguments 2014-10-30 12:55:42 +03:00
Valentin Kipyatkov
7762d4e7c6 J2K: fixed conversion of base class constructor arguments 2014-10-30 12:55:42 +03:00
Valentin Kipyatkov
9ac23cd657 J2K: checked that field name change is correctly handled for usages in other converted classes as well 2014-10-30 12:55:41 +03:00
Valentin Kipyatkov
030faa4630 Big refactoring in j2k converter to support java&kotlin code updating to reflect changes in declarations produced by conversion (work in progress but all tests pass) 2014-10-30 12:55:41 +03:00
Valentin Kipyatkov
16f117571f Minor 2014-10-30 12:55:40 +03:00
Valentin Kipyatkov
95bf9e3c1c Repackaging 2014-10-30 12:55:40 +03:00
Valentin Kipyatkov
f5e9230a04 Renamed ReferenceSearcherImpl to IdeaReferenceSearcher 2014-10-30 12:55:39 +03:00
Zalim Bashorov
9e11b40fe1 Add the support suppressWarnings, verbose and version in build tools. 2014-10-29 23:09:07 +03:00
Andrey Breslav
70db76b219 Typo fixed in a diagnostic message 2014-10-29 18:43:48 +03:00
Natalia Ukhorskaya
8deef10292 Fix android tests 2014-10-29 17:31:14 +03:00
Natalia Ukhorskaya
75a8699467 Minor: fix warnings 2014-10-29 17:10:27 +03:00
Natalia Ukhorskaya
c4ba32a8cc Can't use a qualified name of an annotation class in an annotation parameter
#KT-6151 Fixed
2014-10-29 17:10:25 +03:00
Michael Bogdanov
8e93719e9d Fix test data for android tests 2014-10-29 17:04:10 +03:00
Alexey Sedunov
cede5ac58b Create From Usage: Fix type substitution for no-receiver calls 2014-10-28 19:15:06 +03:00
Alexey Sedunov
abbbd198fd Create From Usage: Use supplied type arguments to infer function type parameters 2014-10-28 19:15:05 +03:00
Alexey Sedunov
a13f334df2 Find Usages: Restrict search scope for private class members
#KT-6124 Fixed
2014-10-28 19:15:03 +03:00
Alexey Sedunov
a2930a581f Additional Resolve: Use descriptor of constructor instead of class when resolving primary constructor annotations
#KT-6099
2014-10-28 19:15:02 +03:00
Michael Bogdanov
d0f6f03380 Fixes for call site finally generation before non-local returns 2014-10-28 19:15:00 +03:00
Michael Bogdanov
dd8c3f0e49 Fixes for inline fun finally block generation before lambda non-local returns 2014-10-28 19:14:52 +03:00
Michael Bogdanov
25d7c9f20a Enabled disabled non-local returns in stdlib 2014-10-28 19:14:14 +03:00
Valentin Kipyatkov
11fd8fe392 Convert to expression body: fixed type selection for public override 2014-10-28 15:40:11 +03:00
Nikolay Krasko
d1fe9b71ef Make line break before '}' optional
#KT-6142 Fixed
2014-10-28 01:50:51 +04:00
Nikolay Krasko
0cd95b5514 Formatter: empty lines between declarations 2014-10-28 01:50:50 +04:00
Nikolay Krasko
6090eb5563 Refactoring: move method to rules 2014-10-28 01:50:50 +04:00
Nikolay Krasko
5d094415ce Allow access to home kotlin project dir in convert tests 2014-10-28 01:50:49 +04:00
Alexander Udalov
35e956609a Rewrite mutable collection stub method generation
The main problem of the previous approach was that we were only generating
erased method signatures, which was incorrect in case a class also had a member
from another supertype with the same signature as the substituted one from the
collection. Javac issues compilation errors when compiling Java code against
such classes.

Also all the needed method stub signatures were hardcoded in
generateBuiltInMethodStubs() and the case of MutableListIterator was missing
2014-10-27 17:17:31 +03:00
Alexander Udalov
1fc9c58b24 Minor, update outdated deprecation comment 2014-10-27 17:17:27 +03:00
Alexander Udalov
685a1c38e2 Fix indent in built-in sources 2014-10-27 17:17:26 +03:00
Alexey Tsvetkov
fb8918bbe6 JS backend: removed adding '$' to label suffix 2014-10-27 15:58:49 +03:00
Alexey Tsvetkov
78e12f7cfa JS backend minor: removed license from test cases 2014-10-27 15:58:49 +03:00
Nikolay Krasko
8d86951a3b Refactoring: junit.framework.Assert -> org.junit.Assert 2014-10-27 12:47:43 +04:00
Nikolay Krasko
863ef64c61 Replace http://teamcity.jetbrains.com to https 2014-10-24 16:24:53 +04:00
Natalia Ukhorskaya
7d106ee8b5 Debugger tests: do not create breakpoints for FakeLightClassForFileOfPackage because we create them for KotlinLightClassForPackage 2014-10-24 15:59:40 +04:00
Natalia Ukhorskaya
d9ac8155da Debugger: wrong stepping through the loop with continue label
#KT-5776 Fixed
 #KT-5664 Fixed
2014-10-24 15:59:39 +04:00
Natalia Ukhorskaya
ffba1b6fa0 Debugger tests: render line properly 2014-10-24 15:59:38 +04:00
Natalia Ukhorskaya
3900ee34ae Debugger tests: move stepping tests 2014-10-24 15:59:37 +04:00
Natalia Ukhorskaya
cce22c0df9 Debugger: implement getSourcePosition for fields 2014-10-24 15:59:36 +04:00
Nikolay Krasko
29d73b9302 Don't activate getPresentation() method from parser tests
Calling this method from frontend tests caches empty presenters
in KeyedExtensionCollector that makes plugins tests fail.
2014-10-24 15:54:00 +04:00
Valentin Kipyatkov
304c826b47 Fixed KT-6128 Code completion does not work inside function literal if it's dependant on declarations below
#KT-6128 Fixed
2014-10-24 15:14:26 +04:00
Valentin Kipyatkov
357ea7a995 Added JetCallableDeclaration.getColon() 2014-10-24 14:19:41 +04:00
Valentin Kipyatkov
d13fd19a63 Added feature to "Convert to expression body" intention: selection for easier explicit type removal 2014-10-24 14:19:41 +04:00
Nikolay Krasko
ea69f5a9a6 Fix for KT-6106: Using platformStatic crashes intellisense (but not Compiler)
#KT-6106 Fixed
2014-10-24 10:04:43 +04:00
Alexander Udalov
c50ca3ab86 Fix empty stack trace in assertion for platform typed expression 2014-10-23 18:32:47 +04:00
Alexey Sedunov
27977cda23 Move: Test data addendum 2014-10-22 21:07:10 +04:00
Alexey Sedunov
07dfde4d2d Add comment 2014-10-22 21:07:09 +04:00
Alexey Sedunov
f7ef1c8d4d Add alternative constructor 2014-10-22 21:07:08 +04:00
Alexey Sedunov
c0901ec8a6 Improve assertion message 2014-10-22 21:07:07 +04:00
Alexey Sedunov
d5e80cae1b Remove unused property 2014-10-22 21:07:06 +04:00
Alexey Sedunov
5b3a4ed7e0 Make JetOperationExpression an inheritor of JetExpression 2014-10-22 21:07:05 +04:00
Alexander Udalov
8c87b242b3 Regenerate tests 2014-10-22 20:49:35 +04:00
Pavel V. Talanov
a65f0d3b2a Use PsiElement#getResolveScope() instead of custom helper
Fix extensions and types completion completion in code fragments in context of library source files
Also affects completion in files not in our project (not tested)
2014-10-22 18:56:33 +04:00
Pavel V. Talanov
db8d1b58b8 Debugger: log error on evaluating fragment with non-kotlin context 2014-10-22 18:56:32 +04:00
Pavel V. Talanov
c3efe1b9b7 Extract attachment helper to a separate file
Improve logic for a nonphysical file
2014-10-22 18:56:32 +04:00
Pavel V. Talanov
5806a66cf9 JetPositionManager: restrict scope of type mapper 2014-10-22 18:56:31 +04:00
Pavel V. Talanov
f2018a8764 Minor: extract function 2014-10-22 18:56:31 +04:00
Pavel V. Talanov
11b18c2817 Minor: rename 2014-10-22 18:56:30 +04:00
Pavel V. Talanov
0070377f2a KotlinCacheService: Correctly deal with code fragments in getLazyResolveSession()
Fix completion in code fragments in context of library source
2014-10-22 18:56:30 +04:00
Pavel V. Talanov
e88db57214 Test completion for code fragments in context of library source 2014-10-22 18:56:29 +04:00
Pavel V. Talanov
a0ad05983a KotlinCacheService: Correctly deal with code fragments in getAnalysisResults()
Fix evaluate expression for breakpoints in library source
2014-10-22 18:56:29 +04:00
Pavel V. Talanov
8d9f17d09d Reconfigure KotlinDebuggerTestCase
It is hiding a problem: evaluate expression fails in libraries
2014-10-22 18:56:28 +04:00
Pavel V. Talanov
e9fe66b8e4 Assert that extra files passed to analysis are in the same module 2014-10-22 18:56:28 +04:00
Andrey Breslav
d4d909de5f Flexible types supported in Extract Function when used from debugger/evaluate expression 2014-10-22 18:56:27 +04:00
Alexey Sedunov
925177f3d8 Move: Fix rebinding of references to singleton members and Java statics
#KT-6082 Fixed
2014-10-22 18:43:14 +04:00
Alexey Sedunov
bc7ae4186b Move: Do not rebind references to the declaration under move 2014-10-22 18:42:59 +04:00
Alexey Sedunov
b2588f610a Create From Usage ("set" operation): Support expressions of the form a[i]++ 2014-10-22 18:42:58 +04:00
Alexey Sedunov
b5e1fe613c Extract Function: Take duplicates into account when choosing placement of extracted function
#KT-5916 Fixed
2014-10-22 18:42:57 +04:00
Alexey Sedunov
c492ffee08 PSI Pattern Matching: Prefer strongly matched children over weakly matched parents 2014-10-22 18:42:55 +04:00
Alexey Sedunov
40da4bd423 Extract Function: Do not allow property extraction if return type is Unit
#KT-6017 Fixed
2014-10-22 18:42:55 +04:00
Alexey Sedunov
f5f1aec47b Create From Usage: Add support of get/set functions in property delegates
#KT-5977 Fixed
2014-10-22 18:42:54 +04:00
Alexey Sedunov
d4a9b922e5 Create From Usage: Fix template insertion when target container is not empty 2014-10-22 18:42:52 +04:00
Alexey Sedunov
07a2a16232 Type-related quick fixes: Render types using fully qualified names 2014-10-22 18:42:51 +04:00
Michael Bogdanov
b212fbd0b5 Remove empty try catch nodes from inlined code 2014-10-22 18:31:11 +04:00
Nikolay Krasko
f50d8c0731 Add explicit type to prevent compile error 2014-10-22 18:18:10 +04:00
Nikolay Krasko
1a7fd756e5 Check that removing open brace is out-of-block change 2014-10-22 18:18:10 +04:00
Nikolay Krasko
798a6bf689 Temp workaround: force out-of-block modification for properties with nullable types
Initializers for properties with nullable types are analyzed with binding context common for all declarations.
This can cause invalid elements are left in the cache guarded with out-of-block  modification tracker. This workaround forces increment for such cases.
2014-10-22 18:18:09 +04:00
Nikolay Krasko
5cdd5f580d Rewrite out-of-block modifier increment algorithm
1. Search the top-level function or property (only they can produce blocks that won't affect other declarations)
    2. Check if current position is hidden by this declaration

    O^2 behaviour is removed
2014-10-22 18:18:09 +04:00
Nikolay Krasko
40bd9fbdf3 Refactoring: move functions 2014-10-22 18:18:08 +04:00
Nikolay Krasko
0862eead00 Rename file: JetCodeBlockModificationListener -> KotlinCodeBlockModificationListener 2014-10-22 18:18:07 +04:00
Nikolay Krasko
474bc536d6 Rewrite to Kotlin: JetCodeBlockModificationListener 2014-10-22 18:18:07 +04:00
Nikolay Krasko
7b3d96e9e9 Rewrite to Kotlin: rename file 2014-10-22 18:18:06 +04:00
Nikolay Krasko
6b605ec4f9 Rewrite to kotlin: JetModifiableBlockHelper 2014-10-22 18:18:05 +04:00
Nikolay Krasko
565612bc19 Take all responsibility for updating trackers, stop delegating it to Java-plugin code 2014-10-22 18:18:05 +04:00
Nikolay Krasko
a988415e22 Add file text to assert message 2014-10-22 18:18:04 +04:00
Nikolay Krasko
0844a11549 Make out-of-block test functional 2014-10-22 18:18:03 +04:00
Nikolay Krasko
b58c5f7df4 Don't spam warning when file is empty
IDEA produces such files when class file had been removed from jar but indexes haven't been not fully reconstructed yet.
2014-10-22 18:18:03 +04:00
Natalia Ukhorskaya
40bb8968cc Run J2KConverter tests in webDemo mode 2014-10-22 17:30:48 +04:00
Natalia Ukhorskaya
9e19546ba8 J2K: add default implementation for NullableNotNullManager 2014-10-22 17:30:47 +04:00
Valentin Kipyatkov
82d5e044c7 Corrected test 2014-10-22 17:08:43 +04:00
Valentin Kipyatkov
34d4477a12 Dropped test that cannot work anymore 2014-10-22 17:05:49 +04:00
Valentin Kipyatkov
23c5ad78b5 Regenerated tests 2014-10-22 15:51:28 +04:00
Valentin Kipyatkov
dcfeb5829a Minor 2014-10-22 15:49:13 +04:00
Valentin Kipyatkov
0384e3d323 No filtering by visibility filter twice 2014-10-22 15:49:13 +04:00
Valentin Kipyatkov
1f548875c6 Hopefully fixed KT-4339 Auto-import suggestion doesn't go away for a long time
#KT-4339 Fixed
2014-10-22 15:49:13 +04:00
Valentin Kipyatkov
762dc31e98 More consistent API in psi 2014-10-22 15:49:13 +04:00
Valentin Kipyatkov
4fd417d419 Fixing code completion in function literal parameters
#KT-4047 Fixed
 #KT-5877 Fixed
2014-10-22 15:49:12 +04:00
Valentin Kipyatkov
59b66e7579 Fixed KT-6074 Package facade classes are shown in completion in kotlin files
#KT-6074 Fixed
2014-10-22 15:48:53 +04:00
Valentin Kipyatkov
d8dbc46867 Fixed KT-6075 Qualified name inserted when completing class with class object
#KT-6075 Fixed
2014-10-22 15:48:35 +04:00
Valentin Kipyatkov
3a2a7427e7 Fixed caret position for KT-5906 Smart completion of anonymous object should preselect single method body
#KT-5906 Fixed
2014-10-22 15:48:34 +04:00
Valentin Kipyatkov
7f55c0626f Fixed KT-6033 Smart completion: wrong replacement range by Tab for item with all arguments at once
#KT-6033 Fixed
2014-10-22 15:48:34 +04:00
Valentin Kipyatkov
a84488f59a Fixed KT-5985 Smart completion does not insert comma for constructor of nested data class
#KT-5985 Fixed
2014-10-22 15:48:17 +04:00
Valentin Kipyatkov
f64f08c9b6 Checked that KT-5984 has been fixed already 2014-10-22 15:48:00 +04:00
Valentin Kipyatkov
af883d9165 Ordering items in smart completion for 'it' 2014-10-22 15:47:47 +04:00
Valentin Kipyatkov
f5f5b514d4 Ordering items in smart completion for nullable 2014-10-22 15:47:33 +04:00
Valentin Kipyatkov
4068879d84 Ordering items in smart completion for boolean 2014-10-22 15:47:17 +04:00
Valentin Kipyatkov
9cf50154d2 Ordering items in smart completion for function type 2014-10-22 15:46:56 +04:00
Valentin Kipyatkov
65c30902e7 KT-6028 Smart completion items priority
#KT-6028 Fixed
2014-10-22 15:45:16 +04:00
Valentin Kipyatkov
e6dbfac232 Fixed smart completion of functions with "::"
#KT-6073 Fixed
2014-10-22 15:42:36 +04:00
Valentin Kipyatkov
f2a83cdf29 No need to filter by visibility in LookupElementsCollector anymore 2014-10-22 15:40:21 +04:00
Valentin Kipyatkov
042e446694 Refactored TipsManager to filter by visibility 2014-10-22 15:40:21 +04:00
Valentin Kipyatkov
13d9fd083c Auto-import fix also honors visibility 2014-10-22 15:40:20 +04:00
Valentin Kipyatkov
0a24dca821 Minor refactoring of KotlinIndicesHelper 2014-10-22 15:40:20 +04:00
Valentin Kipyatkov
1f632daf85 Code completion to filter out non-imported declarations by visibility 2014-10-22 15:40:20 +04:00
Valentin Kipyatkov
b6d4de7046 Optimization in smart completion 2014-10-22 15:40:20 +04:00
Valentin Kipyatkov
86a9f47f6c Fixed KT-6056 Smart completion does not filter out inaccessible declarations
#KT-6056
2014-10-22 15:40:20 +04:00
Alexander Udalov
fb5806f5fb Fix inheritance from mutable Java collections
Don't use CodegenUtil#getDeclaredFunctionByRawSignature because it's incorrect
in case of platform types. Instead use JetTypeMapper to find JVM signatures of
methods which are callable on the current class

 #KT-6042 Fixed
2014-10-22 10:51:14 +04:00
Alexander Udalov
07374b5638 Drop temporary hack, enums are comparable now 2014-10-22 10:49:33 +04:00
Alexander Udalov
23c1eea7d8 Disable codegen test on Android
Can't import from enum there because a package directive is appended to the
beginning of the file in Android tests, invalidating import statements
2014-10-22 10:42:24 +04:00
Natalia Ukhorskaya
7200f3cf31 Merge pull request #521 from ronshapiro/patch-1
Correct Android variant compile task name
2014-10-22 10:30:22 +04:00
Andrey Breslav
7ed7f020d3 Generation of ++ and += fixed for platform types 2014-10-22 00:41:20 +04:00
Andrey Breslav
d28c96837e Compilation errors fixed 2014-10-22 00:41:20 +04:00
Andrey Breslav
a14eefcea3 KT-6077 Compiler does not issue error on unsafe access to ArrayList with nullable values
#KT-6077 Fixed
2014-10-22 00:41:20 +04:00
Andrey Breslav
7b89771953 KT-6059 Regression: irrelevant compiler error on trait inheritance (worked in M8)
#KT-6059 Fixed
2014-10-22 00:41:19 +04:00
Andrey Breslav
d9f5bd013b Clean up declarations of runReadAction() etc 2014-10-22 00:41:19 +04:00
Andrey Breslav
9bd3ac26e3 toString() for easier debugging 2014-10-22 00:41:19 +04:00
Andrey Breslav
b5f89c661a DescriptorRenderer can now render flexible types for code (i.e. ft<L, U>) 2014-10-22 00:41:19 +04:00
Andrey Breslav
0e42de4e99 CHECK_TYPES injected through imports 2014-10-22 00:41:19 +04:00
Andrey Breslav
71d9ad5e8b Removing the static import that caused exception on compilation 2014-10-22 00:41:18 +04:00
Andrey Breslav
f06e5581aa Support creating flexible types in tests
Flexible types can not be created in normal user code, but if there's a special classifier `kotlin.internal.flexible.ft` with two type parameters,
its occurrences are replaced by flexible types, e.g. `ft<Int, Int?>` becomes `Int!`
2014-10-22 00:41:18 +04:00
Ron Shapiro
1ab0edb84c Correct Android variant compile task name
Corrects 'compiledebugKotlin' to 'compileDebugKotlin'
2014-10-21 16:40:06 -04:00
Zalim Bashorov
8067a9ad56 Added regression tests for KT-2474 Range lacks reverse() in JavaScript backend
#KT-2474 Fixed
2014-10-21 22:46:09 +04:00
Zalim Bashorov
66519d9973 Added regression tests for KT-1906 Support invoke() convention is js-backend (including classes implementing Function trait)
#KT-1906 Fixed
2014-10-21 22:46:09 +04:00
Zalim Bashorov
f3d9d21757 Added regression tests for KT-3518 Null pointer during null comparison in JS Backend. 2014-10-21 22:46:09 +04:00
Nikolay Krasko
2e3c0505cd Update to EAP 139.144.2 2014-10-21 19:45:27 +04:00
Zalim Bashorov
b3e34cc2b4 Minor: added regression tests for downTo.
Adopted tests from patch attached to KT-2586.
2014-10-21 18:25:17 +04:00
Zalim Bashorov
fedbe26480 Minor: added regression tests for KT-4235
#KT-4235 Obsolete
2014-10-21 18:25:16 +04:00
Zalim Bashorov
335771d580 JS lib: provide Kotlin object as parameter of IIFE. 2014-10-21 14:49:00 +04:00
Zalim Bashorov
98d62283c7 JS lib: simplify DefaultPrimitiveHashSet. 2014-10-21 14:49:00 +04:00
Michael Bogdanov
6eaa6201f0 Test for obsolete KT-6020: Type inference failed on property reference of generic class
#KT-6020 Can't Reproduce
2014-10-21 09:47:17 +04:00
Michael Bogdanov
da20845e9c Support non standart java source root configuration in gradle plugin
#KT-6051 Fixed
2014-10-21 09:46:59 +04:00
Alexander Udalov
3a8ad45dec Append newline to EOF for .txt test data files
Reverts and fixes 102f0d3
2014-10-21 03:18:27 +04:00
Alexander Udalov
6e5647bb67 Append newline at EOF when creating file in JetTestUtils 2014-10-21 03:17:44 +04:00
Alexander Udalov
102f0d3470 Regenerate .txt testData
Add newline to EOF, trim trailing spaces
2014-10-21 00:16:08 +04:00
Alexander Udalov
51fd654802 Regenerate injectors and keyword strings
After recent changes to Printer
2014-10-21 00:16:08 +04:00
Alexander Udalov
f8be39b26b Regenerate tests
After recent changes to Printer and TestGenerator
2014-10-21 00:16:08 +04:00
Alexander Udalov
b9836afb49 Reorder imports in test generator
To make IDEA's Optimize Imports action a no-op on most of the generated tests
2014-10-21 00:16:07 +04:00
Alexander Udalov
bc9aa9e34f Don't output trailing spaces in Printer
Also don't output trailing empty lines in TestGenerator
2014-10-21 00:16:07 +04:00
Alexander Udalov
4d9ef1042d Prohibit 'override' on classes and all modality on objects
#KT-3464 Fixed
2014-10-21 00:16:07 +04:00
Alexander Udalov
093dedcd85 Minor, don't call Type.getObjectType on array 2014-10-21 00:16:07 +04:00
Alexander Udalov
ae401cac0f Prohibit type parameters for enum classes
#KT-5696 Fixed
2014-10-21 00:16:07 +04:00
Alexander Udalov
63366042ed Fix incorrect "senseless null in when" on nullable type 2014-10-21 00:16:07 +04:00
Alexander Udalov
fe59dc27b3 Make 'when' on nullable enums exhaustive if 'null' entry is present
#KT-2902 Fixed
2014-10-21 00:16:06 +04:00
Alexander Udalov
91105b8183 Minor, fix some warnings in DeclarationsChecker 2014-10-21 00:16:06 +04:00
Alexander Udalov
c071ac854e Prohibit all modifiers for enum entries
#KT-2679 Fixed
2014-10-21 00:16:06 +04:00
Alexey Tsvetkov
1f87bea78f JS backend: added support for nested labels with the same name
#KT-5891 fixed
2014-10-20 19:51:35 +04:00
Alexey Tsvetkov
09c98226c8 JS backend: added tests for labels 2014-10-20 19:51:35 +04:00
Alexey Tsvetkov
0bc05135d8 JS test minor: renamed InlineTestUtils to DirectiveTestUtils 2014-10-20 19:51:35 +04:00
Alexey Tsvetkov
6d16d06120 JS test: extracted test with ast access and directives 2014-10-20 19:51:34 +04:00
Valentin Kipyatkov
f00823c7bf Fixed NPE 2014-10-20 18:50:37 +04:00
Evgeny Gerashchenko
b9a4ea80c5 Optimized imports. Fixed build. 2014-10-20 17:57:44 +04:00
Valentin Kipyatkov
cb00e729ad Optimization to not optimize imports on completion of class name if we do not insert any import 2014-10-20 14:49:49 +04:00
Svetlana Isakova
68e2e21fb9 Refactoring: inlined 'collectSmartCastReceiverValues' 2014-10-18 11:06:53 +04:00
Svetlana Isakova
4a1a95ea36 Rename: casted -> cast 2014-10-18 11:06:53 +04:00
Svetlana Isakova
595b3ffe23 KT-6026 Exception on instantiating a nested class in an anonymous object
#KT-6026 Fixed
2014-10-18 11:06:53 +04:00
Svetlana Isakova
c0c9552f4c KT-5971 Missing error when fun argument is safe call
#KT-5971 Fixed
2014-10-18 11:06:53 +04:00
Svetlana Isakova
c339df65a9 Small refactoring in CandidateResolver 2014-10-18 11:06:52 +04:00
Svetlana Isakova
a47729c626 KT-5455 Need warning about redundant type cast
#KT-5455 Fixed
2014-10-18 11:06:52 +04:00
Svetlana Isakova
b20327770b KT-5854 Incorrect 'Nested class should be qualified'
#KT-5854 Fixed
2014-10-18 11:06:52 +04:00
Svetlana Isakova
29fa87ee7c Slightly reduce number of candidates in task prioritizer
return only extensions (functions) when we expecting extensions (not all functions);
  for properties it's not that easy: they may have extension function types, and we want to avoid early computing of deferred types
  rename: getNonMembersByName -> getExtensionsByName

Report NO_RECEIVER_ALLOWED for '42.(f)()' where f: () -> Unit in TracingStrategyForInvoke
(we don't store candidates for such 'invoke' functions any more)
2014-10-18 11:06:52 +04:00
Svetlana Isakova
c0eb894bd9 Rename: NO_RECEIVER_ADMITTED -> NO_RECEIVER_ALLOWED 2014-10-18 11:06:51 +04:00
Svetlana Isakova
cd3dc5998f Rewrote CallableDescriptorCollectors to Kotlin 2014-10-18 11:06:51 +04:00
Svetlana Isakova
dfd88b8f24 Rename CallableDescriptorCollectors.java to CallableDescriptorCollectors.kt 2014-10-18 11:06:51 +04:00
Alexander Udalov
6ddc063a76 Regenerate test data on enums
Now they have final equals, hashCode and compareTo
2014-10-17 21:27:24 +04:00
Alexander Udalov
624e507ec2 Make enum classes comparable
#KT-3727 Fixed
2014-10-17 21:27:23 +04:00
Alexander Udalov
02861308bc Add toString() to kotlin.Enum
Overridable because it is in java.lang.Enum
2014-10-17 21:27:23 +04:00
Alexander Udalov
66a7a58313 Prohibit to override equals/hashCode in enums
#KT-5721 Fixed
2014-10-17 21:27:22 +04:00
Alexander Udalov
6ec71b3fd1 Generate lambdas in enum entry super calls
#KT-4423 Fixed
2014-10-17 21:27:22 +04:00
Alexander Udalov
1edaf43051 Fix Double and Float equality/hashCode in data classes
#KT-5818 Fixed
2014-10-17 21:27:22 +04:00
Alexander Udalov
f632a34959 Delete unused JavaSignatureFormatter 2014-10-17 21:27:21 +04:00
Alexander Udalov
d3e3039eb2 Add tests for obsolete "nested class is inaccessible"
#KT-3535 Obsolete
 #KT-3647 Obsolete
 #KT-3731 Obsolete
2014-10-17 21:27:21 +04:00
Alexey Sedunov
0def7d4b4e JetFileReferenceResolver: Stabilize reference order 2014-10-17 17:34:04 +04:00
Alexey Sedunov
80321b610a Use QUALIFIER info in JetFileReferenceResolver 2014-10-17 17:34:02 +04:00
Alexey Sedunov
f3a219f062 Shorten References: Extract common superclass for type- and expression-processing visitors 2014-10-17 17:33:48 +04:00
Alexey Sedunov
f7e947e912 Shorten References: Simplify shortening of qualified expressions 2014-10-17 13:30:19 +04:00
Natalia Ukhorskaya
be73ec2cc9 KotlinEvaluateExpressionTestGenerated:testSimple: add comment 2014-10-17 11:46:25 +04:00
Natalia Ukhorskaya
6bf0152f6d Fix KotlinEvaluateExpressionTestGenerated:testSimple 2014-10-17 10:37:54 +04:00
Denis Zharkov
ec63394121 Check that boxing instruction is simple call
like T.valueOf(unboxType(T))

 #KT-6047 fixed
2014-10-17 01:22:25 +04:00
Michael Nedzelsky
34269e1a3e JS backend: fix KT-6037 (default arguments in simple function with expression as body)
#KT-6037 Fixed
2014-10-17 00:46:05 +04:00
Evgeny Gerashchenko
954a011721 Added incremental cache format versioning. 2014-10-16 22:01:45 +04:00
Evgeny Gerashchenko
0eda00e2df Rearranged code in abstract incremental compilation test. 2014-10-16 22:01:44 +04:00
Evgeny Gerashchenko
f63f1274cd Changed shortcuts for "Show expression type".
Using same shortcuts as in Scala.
2014-10-16 19:17:09 +04:00
Alexey Tsvetkov
5fb5cea4a3 JS inline: fixed bug with simple return inline function, when result is not used.
When function body can be expression
(contains only one statement, and it's return),
 result was saved to resultExpr, not body.

 But when result was not used, resultExpr was not
 used then.

 Fixed by checking, that result is used in first place.
2014-10-16 17:16:10 +04:00
Alexey Tsvetkov
be82d4c661 JS backend: increment counter for fresh names 2014-10-16 17:16:10 +04:00
Alexander Udalov
f0169f4181 Regenerate tests 2014-10-16 17:10:33 +04:00
Alexander Udalov
6698e0ecc9 Add test for outdated smart cast with elvis issue
#KT-5335 Obsolete
2014-10-16 16:38:11 +04:00
Alexander Udalov
6387076efe Uncomment previously failing code in J2K after fixing KT-5343 2014-10-16 16:38:04 +04:00
Alexander Udalov
159878e09d Pass correct outer instance in complex case of inheritance
#KT-5343 Fixed
2014-10-16 16:16:55 +04:00
Alexander Udalov
61674fb3d9 Don't put outer instance twice for anonymous object extending inner
#KT-5343 In Progress
2014-10-16 16:16:54 +04:00
Alexander Udalov
7315146753 Fix and refactor ExpressionCodegen#pushClosureOnStack
- change Closure parameter to ClassDescriptor, load closure in the beginning
- invert and rename boolean parameter, also use it only to prevent pushing
  dispatch receiver (not the extension receiver) onto the stack because the
  only non-trivial usage of it is preceded by manual handling of the dispatch
  (not extension) receiver. This fixes innerOfLocalCaptureExtensionReceiver.kt
2014-10-16 16:16:54 +04:00
Valentin Kipyatkov
79123d6bb6 Minor 2014-10-16 15:14:23 +04:00
Valentin Kipyatkov
6b163bca8a Keyword completion uses simple prefix matching only 2014-10-16 15:14:23 +04:00
Valentin Kipyatkov
1e5ea703b5 Added a test 2014-10-16 15:14:23 +04:00
Valentin Kipyatkov
0da62a8815 Keyword completion: added missing 'out' keyword 2014-10-16 15:14:23 +04:00
Valentin Kipyatkov
6dc17e5a03 Minor refactoring in keyword completion 2014-10-16 15:14:22 +04:00
Valentin Kipyatkov
96a5e573c3 Fix in keyword completion 2014-10-16 15:14:22 +04:00
Valentin Kipyatkov
8e1a89230e Keyword correction: smaller file text 2014-10-16 15:14:22 +04:00
Valentin Kipyatkov
f7dc0fca74 Keyword correction: more correct behavior + smaller file text 2014-10-16 15:14:22 +04:00
Valentin Kipyatkov
525a1cc3c6 Fixed tests 2014-10-16 15:14:22 +04:00
Valentin Kipyatkov
d65d3b9068 Checked that KT-2795 has been fixed
#KT-2795 Fixed
2014-10-16 15:14:21 +04:00
Valentin Kipyatkov
9663fac5b1 Checked that KT-2832 has been fixed
#KT-2832 Fixed
2014-10-16 15:14:21 +04:00
Valentin Kipyatkov
50e1ec9c4f Fixed KT-5809 Code completion after "?." should not include keywords
#KT-5809 Fixed
2014-10-16 15:14:21 +04:00
Valentin Kipyatkov
549171d043 Completely rewritten keyword completion implementation using another approach
#KT-2816 Fixed
2014-10-16 15:14:21 +04:00
Natalia Ukhorskaya
6a4fe52e51 Fix Android tests 2014-10-16 14:31:57 +04:00
Andrey Breslav
a128b94e2e Typo fixed: "cast", not "casted" 2014-10-16 14:10:14 +04:00
Andrey Breslav
9feebb1dc6 "typedef" replaced with "typeAlias" in the grammar 2014-10-16 14:10:02 +04:00
Nikolay Krasko
4cb276c47f More information about context for assert 2014-10-16 13:01:37 +04:00
Nikolay Krasko
501bb398d4 Update to Idea 139.69.2 2014-10-16 13:01:36 +04:00
Evgeny Gerashchenko
1a3750f31b Stabilized order of static accessors. 2014-10-15 20:38:16 +04:00
Evgeny Gerashchenko
84c7b05781 Stabilized order of methods inherited by delegation. 2014-10-15 20:38:16 +04:00
Evgeny Gerashchenko
db45f4a062 Fixed hot swap when closure captures variables
Stabilized order of synthetic constructor parameters in anonymous class.

 #KT-5440 fixed
2014-10-15 20:33:17 +04:00
Valentin Kipyatkov
afa59a616c More tests 2014-10-15 17:30:33 +04:00
Valentin Kipyatkov
2365db1367 Fixed KT-6011 Smart completion works for argument of wrong method
#KT-6011 Fixed
2014-10-15 17:30:33 +04:00
Alexey Sedunov
b18b888161 PSI Pattern Matching: Fix matching of !!
#KT-6021 Fixed
2014-10-15 15:41:47 +04:00
Alexey Kudravtsev
6f5a2172ac moved more find usages-related stuff to idea-analysis for upsource 2014-10-15 15:11:49 +04:00
Natalia Ukhorskaya
fff8bfff5f Debugger: do not throw exception on getting source position for Kotlin object 2014-10-15 14:09:55 +04:00
Andrey Breslav
3453809b4b Defining flexible type semantic equality through subtyping 2014-10-15 14:07:55 +04:00
Andrey Breslav
f41a8d2c00 Render "<" properly in HTML 2014-10-15 14:07:54 +04:00
Andrey Breslav
2bf6db003a Error message corrected: packages can't be nested any more 2014-10-15 12:22:35 +04:00
Andrey Breslav
391b57077b KT-5976 Parser recovery is poor on object with parameters
#KT-5976 Fixed
2014-10-15 12:22:35 +04:00
Andrey Breslav
d25a858214 "typealias" escaped in DOM API generator 2014-10-15 12:22:33 +04:00
Evgeny Gerashchenko
cb9a55b375 Minor. Storing valOrVar in constructor to avoid bad action text for outdated quick fix. 2014-10-15 11:51:02 +04:00
Evgeny Gerashchenko
fbcfed6757 Fixed EA-57220. 2014-10-15 11:51:01 +04:00
Evgeny Gerashchenko
b653598df2 Fixed EA-61504. 2014-10-15 11:51:01 +04:00
Evgeny Gerashchenko
0d17a71ffa Minor. Renamed class. 2014-10-15 11:51:01 +04:00
Evgeny Gerashchenko
ef93a71e78 Made "Remove val/var from parameter" quick fix local. 2014-10-15 11:51:01 +04:00
Evgeny Gerashchenko
7a6429e35e Removed live templates completion contributor.
LT are added to completion on IDEA side.

Fixed EA-52890.
2014-10-15 11:51:01 +04:00
Evgeny Gerashchenko
745a7333b1 Fixed EA-50672. 2014-10-15 11:51:00 +04:00
Evgeny Gerashchenko
05677e26a4 Fixed EA-54056. 2014-10-15 11:51:00 +04:00
Evgeny Gerashchenko
4fe11f0998 Clarified assertion. Just in case. 2014-10-15 11:51:00 +04:00
Evgeny Gerashchenko
e1cf002c30 Clarified assertion which should be fixed on IDEA side. 2014-10-15 11:51:00 +04:00
Evgeny Gerashchenko
e9880e6787 Clarified assertion for EA-50536. 2014-10-15 11:50:59 +04:00
Evgeny Gerashchenko
a759fc2454 Added test for EA-53340. 2014-10-15 11:50:59 +04:00
Evgeny Gerashchenko
7229df26ab Project settings: navigation to EA problems. 2014-10-15 11:50:59 +04:00
Evgeny Gerashchenko
73f3db5cf8 Clarified assertion for EA-50657. 2014-10-15 11:50:59 +04:00
Natalia Ukhorskaya
a0e518870d Fix Android tests 2014-10-15 09:54:29 +04:00
Natalia Ukhorskaya
0a9adbb777 Do not try to use index in JetPositionManager in dumpMode
EA-58536 Fixed
2014-10-15 09:54:28 +04:00
Valentin Kipyatkov
3b85839bf3 Refactored StatementVisitor to StatementConverter (similar to ExpressionConverter before) + renamed ExpressionVisitor 2014-10-14 21:23:24 +04:00
Valentin Kipyatkov
a84b32af98 KT-5492 J2K: convert field with getter/setter to property
#KT-5492 Fixed
2014-10-14 21:23:24 +04:00
Valentin Kipyatkov
129c592581 J2K converter: refactored code moving code for converting class body into separate class 2014-10-14 21:19:48 +04:00
Valentin Kipyatkov
a7a1227390 Converter should not fail completely if some error occured in the after conversion pass 2014-10-14 21:19:48 +04:00
Valentin Kipyatkov
5008682bef Better diagnostic for Element has no prototype error 2014-10-14 21:19:10 +04:00
Valentin Kipyatkov
0213d37d82 More correct line breaks counting in converter 2014-10-14 21:19:10 +04:00
Valentin Kipyatkov
c8da4d90e9 J2K: minor fix 2014-10-14 21:19:10 +04:00
Valentin Kipyatkov
a08373fec6 Minor code corrections after review 2014-10-14 21:19:10 +04:00
Zalim Bashorov
f0078b5e0f JS lib: export Kotlin object when it possible.
It allows use kotlin.js on node.js without modifications.
2014-10-14 18:02:28 +04:00
Zalim Bashorov
55c19a632a JS lib: introduced different output strategies, and chose them depending of environment.
#KT-2994 Fixed
2014-10-14 18:02:28 +04:00
Pavel V. Talanov
40e1292e9a Do not create junit configuration in dumb mode 2014-10-14 17:39:42 +04:00
Pavel V. Talanov
f3b9ab9329 Minor: Log and create attachment on AssertionError in KotlinSignature line markers 2014-10-14 17:37:12 +04:00
Michael Nedzelsky
e73866040d JS backend: correct hierarchy for collections in kotlin_lib.js, maps.js 2014-10-14 16:46:01 +04:00
Michael Nedzelsky
229c92e6b8 JS backend: add files to jslib_files.xml 2014-10-14 16:45:59 +04:00
Michael Nedzelsky
aa13a67371 JS backend: remove Iterable from FAKE_CLASS list, remove Iterator from StandardClasses 2014-10-14 16:45:57 +04:00
Michael Nedzelsky
edac2dd3bd JS backend: tests for KT-2468 2014-10-14 16:45:54 +04:00
Valentin Kipyatkov
cff0c35987 Checked that KT-3596 is not reproducible 2014-10-14 16:08:17 +04:00
Valentin Kipyatkov
e1a84802f2 Minor 2014-10-14 16:08:17 +04:00
Valentin Kipyatkov
c61ee18c03 Removed some more stuff from ImportInsertHelper 2014-10-14 16:08:17 +04:00
Valentin Kipyatkov
6d69608feb Refactored completion tests to not set/restore auto-complete settings in 2 different places 2014-10-14 16:08:17 +04:00
Valentin Kipyatkov
043c65b1d4 Removed method which is not needed anymore 2014-10-14 16:08:17 +04:00
Valentin Kipyatkov
503a8deef1 Fixed bug in reference shortening + fixed test data for completion tests 2014-10-14 16:08:16 +04:00
Valentin Kipyatkov
d8b962c7f3 Completion: the same universal insertion handler is used for java classes too 2014-10-14 16:08:16 +04:00
Valentin Kipyatkov
38a5b988f0 One more class rename 2014-10-14 16:08:16 +04:00
Valentin Kipyatkov
a5223d8a38 Class renames 2014-10-14 16:08:16 +04:00
Valentin Kipyatkov
f9bf214526 Code completion: avoid duplication of elements for java classes 2014-10-14 15:47:45 +04:00
Valentin Kipyatkov
eabcbb00ab KT-5876 Code completion should never auto-insert item which requires adding import
#KT-5876 Fixed
2014-10-14 15:47:45 +04:00
Valentin Kipyatkov
a124827c4e Fixed KT-5611 Completion doesn't include not imported extensions for implicit receiver
#KT-5611 Fixed
2014-10-14 15:47:44 +04:00
Alexey Kudravtsev
22c80d2694 moved structure view to to idea-analysis to make available in upsource 2014-10-14 15:42:50 +04: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
Andrey Breslav
b1e452b568 type unescaped in *.kt files 2014-10-14 13:02:13 +04:00
Andrey Breslav
56d1979d9b File names fixed according to f202ad9f98 2014-10-14 13:02:06 +04:00
Alexey Sedunov
2b43aad4f9 Create From Usage: Fix rendering of nullable types 2014-10-14 01:59:54 +04:00
Alexey Sedunov
ff082be524 File Move: Fix update of extension references. Reuse MoveKotlinTopLevelDeclarationsProcessor 2014-10-14 01:59:53 +04:00
Alexey Sedunov
dc62d167ad Add user-data delegate for non-nullable properties 2014-10-14 01:59:52 +04:00
Alexey Sedunov
0d220c68ea Find Usages: Fix reference check for the case of multiple resolve results 2014-10-14 01:59:51 +04:00
Alexey Sedunov
f0a0df94b5 Create From Usage: Add support of property delegates 2014-10-14 01:59:50 +04:00
Alexey Sedunov
2e6d4b3501 Create From Usage: Support EXPRESSION_EXPECTED_PACKAGE_FOUND diagnostic 2014-10-14 01:59:49 +04:00
Alexey Sedunov
c73c581b11 Call Resolver: Report UNRESOLVED_REFERENCE instead of EXPRESSION_EXPECTED_PACKAGE_FOUND when callee expession is resolved to package 2014-10-14 01:59:48 +04:00
Alexey Sedunov
77a5ddbcd0 Create From Usage: Do not suggest Java classes as receiver type candidates (for now) 2014-10-14 01:59:47 +04:00
Alexey Sedunov
0dafcb6728 Create From Usage: Generate type parameters (if any) for all callable declarations 2014-10-14 01:59:46 +04:00
Alexey Sedunov
9206b571f4 Create From Usage: Always try to shorten return type reference if there is one 2014-10-14 01:59:45 +04:00
Alexey Sedunov
497e4fab79 Create From Usage: Generate Unit-typed declaration if result is unused
#KT-5903 Fixed
2014-10-14 01:59:44 +04:00
Alexey Sedunov
a3a0edca58 Pseudocode: Drop CompilationErrorInstruction 2014-10-14 01:59:43 +04:00
Alexey Sedunov
a56c54371e Pseudocode: Generate instructions for unresolved array assignments 2014-10-14 01:59:42 +04:00
Nikolay Krasko
b06b3ab4c4 Insert empty lines after functions and properties (KT-4002)
#KT-4002 Fixed
2014-10-14 00:39:23 +04:00
Nikolay Krasko
22d33a5afa Data class copy method invocation gives errors in IDE when some optional parameters specified (KT-5975)
#KT-5975 Fixed
2014-10-14 00:39:22 +04:00
Zalim Bashorov
f202ad9f98 Stdlib: run all stdlib tests with JS backend(as possible). 2014-10-13 21:25:56 +04:00
Zalim Bashorov
f20ee6df4b JS backend: fixes in ranges:
* map all number ranges and progressions;
* add missed hashCode and static EMPTY to Range implementations;
* add missed hashCode and equals to Progression implementations;
* fix type of start and end in CharRange and CharProgression.
2014-10-13 21:25:56 +04:00
Zalim Bashorov
8bd6acec5d JS stdlib: drop wrong annotations in javautilCollectionsCode.kt and fix Collections.reverse. 2014-10-13 21:25:56 +04:00
Zalim Bashorov
e54c838482 JS backend: temporary fix for CharSequence.get 2014-10-13 21:25:56 +04:00
Zalim Bashorov
64044800c9 JS stdlib: fix bug with using "__proto__" as element of DefaultPrimitiveHashSet. 2014-10-13 21:25:56 +04:00
Zalim Bashorov
49e2262ca7 JS tests: fixed waiting to finish qunit tests in SeleniumTest. 2014-10-13 21:25:56 +04:00
Zalim Bashorov
2d634931f6 JS backend: use 0 as init value when calculating hashCode in data classes as in JVM backend. 2014-10-13 21:25:56 +04:00
Zalim Bashorov
ae39524a95 JS backend: compile primitive iterators from builtins as part of stdlib. 2014-10-13 21:25:55 +04:00
Zalim Bashorov
ecb955f5b3 Stdlib: split OrderingJVM.kt to common and jvm parts 2014-10-13 21:25:55 +04:00
Zalim Bashorov
88f9621b45 Minor: update junit to 4.11 2014-10-13 21:25:55 +04:00
Zalim Bashorov
1b2aa205ec Introduce assertNotEquals 2014-10-13 21:25:55 +04:00
Zalim Bashorov
b086a2b7a5 Extract some closure-compiler arguments to separate property and change warning level to "default" 2014-10-13 21:25:55 +04:00
Pavel V. Talanov
c1f8db5962 Fix MutableDiagnosticsTest#testCaching()
Sadly relying on implementation details
2014-10-13 19:48:57 +04:00
Michael Nedzelsky
df8232c555 JS backend: minor: refactor ClassTranslator 2014-10-13 19:25:06 +04:00
Michael Nedzelsky
ab6eff5a5b JS backend: minor: remove ArrayList(Collection) from bridges/_commonFiles/javautil.kt 2014-10-13 19:25:02 +04:00
Michael Nedzelsky
aa3d0fe1d7 minor: rename TargetBackend enum values 2014-10-13 19:24:59 +04:00
Alexey Kudravtsev
869487ac82 moved to idea-analysis to make available in upsource 2014-10-13 18:33:37 +04:00
Alexey Kudravtsev
ef34875061 added sources to kotlin-upsource 2014-10-13 18:30:47 +04:00
Michael Nedzelsky
a63bbf317d JS backend: translate 0L, 1L and -1L to Kotlin.Long constants 2014-10-13 17:51:48 +04:00
Michael Nedzelsky
e5c77d1242 JS backend: minor: move constant to Namer 2014-10-13 17:51:45 +04:00
Pavel V. Talanov
ee33c09714 Android: navigate to resource
Implementation mostly copied from android plugin
 #KT-5596 Fixed
2014-10-13 16:46:55 +04:00
Andrey Breslav
838ef11f1c Test data fixed: after "type" is no longer a keyword 2014-10-13 16:42:03 +04:00
Andrey Breslav
34a98f2563 Minor. Compilation fixed 2014-10-13 16:02:39 +04:00
Andrey Breslav
f202a5c31d KT-4524 Generate implementations fails on functions with default values
#KT-4524 Fixed
2014-10-13 15:43:03 +04:00
Andrey Breslav
cc68ed894b "type" is not a keyword anymore ("typealias" reserved instead) 2014-10-13 15:41:13 +04:00
Andrey Breslav
b20439027c Advancing ABI version
Related changes:
 - serialization of flexible types supported
 - Intrinsics.checkExpressionValueIsNotNull() added
2014-10-13 15:38:23 +04:00
Andrey Breslav
4a132599fd getAllOverriddenDescriptors() moved to DescriptorUtils 2014-10-13 15:38:22 +04:00
Andrey Breslav
f7ccfafd1c Minor. [platformStatic] used 2014-10-13 15:38:21 +04:00
Andrey Breslav
f1675a9162 Minor. Getters replaced by properties 2014-10-13 15:38:21 +04:00
Andrey Breslav
8e8f41e228 Minor. Improved usability of CustomTypeVariable API 2014-10-13 15:38:20 +04:00
Andrey Breslav
070a7d4d72 Serialization of flexible types supported 2014-10-13 15:38:20 +04:00
Andrey Breslav
e76df4db11 Rendering fixed across the idea module 2014-10-13 15:38:19 +04:00
Andrey Breslav
9fb09e62af toString() on nullables fixed 2014-10-13 15:38:19 +04:00
Andrey Breslav
619df3a53e Use semantic equality in Create From Usage 2014-10-13 15:38:18 +04:00
Andrey Breslav
8eb57f5a75 Parser recovers on platform types notation:
- Foo!
- Array<(out) Foo>!
- (Mutable)List<Foo>!
2014-10-13 15:38:18 +04:00
Andrey Breslav
21d31a1a4f An option to enable assertions in the Bytecode toolwindow 2014-10-13 15:38:17 +04:00
Andrey Breslav
1214bef3e8 Always create a missing txt file, even if the test itself fails before 2014-10-13 15:38:17 +04:00
Andrey Breslav
890ef7a8ae Choosing a best fit when getting multiple exact bounds for a type variable 2014-10-13 15:38:16 +04:00
Andrey Breslav
d74b27335e RemoveExplicitTypeArguments fixed: platform types approximated before comparison 2014-10-13 15:38:16 +04:00
Andrey Breslav
94f4ddb762 IDE TypeUtils moved to idea-analysis 2014-10-13 15:38:15 +04:00
Andrey Breslav
e418a763db Fix JetType.equals(): flexible types are not equal to non-flexible ones, when we store them in a HashSet 2014-10-13 15:38:15 +04:00
Andrey Breslav
5be4dda58b Unit obtained through a generic substitution should not be mapped to VOID 2014-10-13 15:38:14 +04:00
Andrey Breslav
f5aed51fd0 TypeUtils.containsSpecialType() fixed to account for flexible types 2014-10-13 15:38:14 +04:00
Andrey Breslav
a737352b5d Assertions when approximating platform types in delegation by expression 2014-10-13 15:38:13 +04:00
Andrey Breslav
f1c66fa6b0 Assertions on approximation of platform types to non-null types
- for most expressions (ExpressionCodegen.genQualified)
2014-10-13 15:38:13 +04:00
Andrey Breslav
3d5d3e00e3 Minor. @TestDataFlie added for naviagtion 2014-10-13 15:38:12 +04:00
Andrey Breslav
57bffaf8fa All JetType subinterfaces migrated to capabilities 2014-10-13 15:38:12 +04:00
Andrey Breslav
013dd7261e Extensible specificity expressed as a type capability 2014-10-13 15:38:11 +04:00
Andrey Breslav
4b24c96cca Type capabilities introduced to facilitate extensibility of the type representation
This approach: returning adapter objects by class is crucial, because it is delegation-proof.
Simply extending interfaces in particular implementations fails when we wrap types in DelegatedType subclasses
2014-10-13 15:38:11 +04:00
Andrey Breslav
6564231040 Descriptor test data for diagnostic tests fixed 2014-10-13 15:38:10 +04:00
Andrey Breslav
25efd6684f Missing test data generated 2014-10-13 15:38:10 +04:00
Andrey Breslav
52ed640a2b Visibility fixed 2014-10-13 15:38:09 +04:00
Andrey Breslav
aea978cf90 Do not render type arguments as outermost 2014-10-13 15:38:09 +04:00
Andrey Breslav
fd3f929a11 Guessing class ids for external annotations 2014-10-13 15:38:08 +04:00
Andrey Breslav
fe2fb60daf Approximating flexible types in descriptor renderer 2014-10-13 15:38:07 +04:00
Andrey Breslav
40932f84c8 isFlexible() turned into a method in JetType
Otherwise delegated types were never recognized as flexible
2014-10-13 15:38:07 +04:00
Andrey Breslav
91b0b83ec3 Java declaration annotations are treated as type annotations
This is needed, for example, to approximate flexible types correctly when rendering them in the code
2014-10-13 15:38:06 +04:00
Andrey Breslav
bd21e487fc Unused class removed 2014-10-13 15:38:06 +04:00
Andrey Breslav
d25a76e044 Disabling @KotlinSignature checks in PLATFORM_TYPES mode 2014-10-13 15:38:05 +04:00
Andrey Breslav
ea3215b361 Massive test data update for compiledJava 2014-10-13 15:38:05 +04:00
Andrey Breslav
0b6a4df4f4 The case of Integer.getInteger("1", 2) fixed (was: OVERLOAD_RESOLUTION_AMBIGUITY) 2014-10-13 15:38:04 +04:00
Andrey Breslav
837353d9fd Skip alternative signatures in PLATFORM_TYPES mode, but use parameter names 2014-10-13 15:38:03 +04:00
Andrey Breslav
50aa918791 Failing test for type inference 2014-10-13 15:38:02 +04:00
Andrey Breslav
f5cc3e1a92 Use TypeUtils.isNullableType() in codegen 2014-10-13 15:38:02 +04:00
Andrey Breslav
1dbfe5483a Fix isNullableType() to always consider flexible types, even if they contain type parameters 2014-10-13 15:38:01 +04:00
Andrey Breslav
107480657a Spec document added 2014-10-13 15:38:00 +04:00
Andrey Breslav
d1214d2368 Another TypeUtils.isNullableType() introduced 2014-10-13 15:38:00 +04:00
Andrey Breslav
12d18533e8 Recursion depth in CommonSupertypes is bounded by maxDepth + 3 2014-10-13 15:37:59 +04:00
Andrey Breslav
364a7a6574 Do not overuse makeNullableAsSpecified in TypeSubstitutor 2014-10-13 15:37:59 +04:00
Andrey Breslav
920769d36d Fold standard flexible types in shortNames mode 2014-10-13 15:37:58 +04:00
Andrey Breslav
220c360081 Null-aware types introduced
Flexible types should drive their own conversions to nullable/not-null
2014-10-13 15:37:58 +04:00
Andrey Breslav
969beb7898 Account for substitutions of one variable for another (it must remain a variable) 2014-10-13 15:37:57 +04:00
Andrey Breslav
bdbd469aad Do not wrap flexible types into Nullable/NotNull types 2014-10-13 15:37:57 +04:00
Andrey Breslav
141e731f39 Constraint Foo on T! should be turned into Foo! on T 2014-10-13 15:37:56 +04:00
Andrey Breslav
6cb1d2e3f7 Lower bound must be a subtype of the upper bound.
The change in CommonSupertypes:

 We used to say that commonSupertype(Inv<A>, Inv<B>) = Inv<in Intersect(A, B)). This is counter-intuitive, should be Inv<out commonSupertype(A, B)>
2014-10-13 15:37:56 +04:00
Andrey Breslav
e232697da1 CommonSupertypes support for flexible types 2014-10-13 15:37:55 +04:00
Andrey Breslav
583694a450 Flexible types for primitive arrays 2014-10-13 15:37:54 +04:00
Andrey Breslav
8134d097e3 Another portion of test data fixed 2014-10-13 15:37:54 +04:00
Andrey Breslav
a3d9ff65aa Wrong "USELESS_ELVIS" fixed 2014-10-13 15:37:54 +04:00
Andrey Breslav
c3c72fc528 Switching off propagation of types and KotlinSignatures for platform types 2014-10-13 15:37:53 +04:00
Andrey Breslav
fefadaa171 Rendering platform type for java.util.Map.Entry as kotlin.(Mutable)Map.(Mutable)Entry 2014-10-13 15:37:53 +04:00
Andrey Breslav
dd2e95b3bc Substitution implemented for flexible occurrences of Java type parameters 2014-10-13 15:37:52 +04:00
Andrey Breslav
bf53222bd9 Flexible types in SAM conversions 2014-10-13 15:37:51 +04:00
Andrey Breslav
2529bb24d1 Don't create flexible types for ".class" expressions in annotation arguments 2014-10-13 15:37:51 +04:00
Andrey Breslav
c699fa96d9 Make not-null compile-time constants non-flexible 2014-10-13 15:37:51 +04:00
Andrey Breslav
867956729b Don't create platform types for annotation members 2014-10-13 15:37:50 +04:00
Andrey Breslav
bdf7e924b5 Rendering flexible types with "!" and optional parts 2014-10-13 15:37:50 +04:00
Andrey Breslav
c2a03d60f0 Better support for forced resolve while debugging 2014-10-13 15:37:49 +04:00
Andrey Breslav
b4f26bde44 Support forced resolve for lazy flexible types 2014-10-13 15:37:49 +04:00
Andrey Breslav
549df3c0eb Equality for flexible types 2014-10-13 15:37:48 +04:00
Andrey Breslav
a39d2bc24f Failing test isolated 2014-10-13 15:37:48 +04:00
Andrey Breslav
b665a1998b Supertypes should not be flexible 2014-10-13 15:37:47 +04:00
Andrey Breslav
0cbbb6a0db Test data fixed 2014-10-13 15:37:47 +04:00
Andrey Breslav
195274370f Fix the case of safe call and elvis operators: flexible types may be nullable 2014-10-13 15:37:46 +04:00
Andrey Breslav
45c1fa3741 Support flexible types in DataFlowValues 2014-10-13 15:37:46 +04:00
Andrey Breslav
f7de0e274c TypeSubstitutor respects flexible types 2014-10-13 15:37:45 +04:00
Andrey Breslav
f11095b1d0 Minor. DelegatingFlexibleType moved to top level 2014-10-13 15:37:45 +04:00
Andrey Breslav
687fdce30a Support flexible types in TypeCheckingProcedure 2014-10-13 15:37:44 +04:00
Andrey Breslav
a2f8def1e8 Tests for Java method calls 2014-10-13 15:37:44 +04:00
Andrey Breslav
6c50e1b237 Render flexible types in debug mode 2014-10-13 15:37:43 +04:00
Andrey Breslav
90e4b09272 Fix compilation errors 2014-10-13 15:37:43 +04:00
Andrey Breslav
e268e74fa3 Flexible types added to JDR
So far they act exactly like inflexible ones
2014-10-13 15:37:42 +04:00
Andrey Breslav
ad8de070fa A flag in the JDR to govern usage of platform types 2014-10-13 15:37:42 +04:00
Michael Bogdanov
a88e9666e4 As designed KT-5930: Wrong execution order in case of extension function
#KT-5930 As Designed
2014-10-13 11:31:15 +04:00
Michael Bogdanov
5abc2dac4e Generate labeled statements as statements 2014-10-13 11:31:15 +04:00
Michael Bogdanov
9d72036ba5 Fix for KT-5995: Labeled val causes an exception from the back-end
#KT-5995 Fixed
2014-10-13 11:30:28 +04:00
Michael Bogdanov
860544d299 Obsolete KT-5685: VerifyError: Bad local variable type for class with inline method and optional parameters
#KT-5685 Obsolete
2014-10-11 13:53:43 +04:00
Michael Bogdanov
605c9f48b4 Added inline annotation check on local funs 2014-10-11 13:53:43 +04:00
Michael Bogdanov
2a1520228e Support inheritance from java 8 interfaces
#KT-5969 In Progress
2014-10-11 13:53:43 +04:00
Andrey Breslav
3613fb746c Readme.md: Broken links fixed 2014-10-10 23:03:38 +04:00
Pavel V. Talanov
ebbd08a546 Respect resolve scope when adapting java types completion
Do not suggest classes from unrelated modules
2014-10-10 21:14:30 +04:00
Pavel V. Talanov
b6d76157c4 Respect source/test roots when building scope in CompletionSession 2014-10-10 21:14:29 +04:00
Pavel V. Talanov
2ded7bae73 Test abstract override in enum class 2014-10-10 18:19:57 +04:00
Pavel V. Talanov
b2c288b62a Test super calls in enum literals 2014-10-10 18:12:56 +04:00
Pavel V. Talanov
8e6618920d Minor: rename test data file 2014-10-10 18:05:36 +04:00
Pavel V. Talanov
bb5998048f Test code generation for enum deriving from a trait 2014-10-10 17:43:33 +04:00
Pavel V. Talanov
c04b52561e "abstract" modifier on enum class is an error
#KT-3454 Fixed
2014-10-10 17:43:32 +04:00
Pavel V. Talanov
6eae62c235 Do not report NON_FINAL_MEMBER_IN_FINAL_CLASS on open members in enum classes 2014-10-10 17:43:32 +04:00
Pavel V. Talanov
4136c80358 Do not report ABSTRACT_MEMBER_NOT_IMPLEMENTED on enum classes
Partial fix of KT-3454
2014-10-10 17:43:31 +04:00
Pavel V. Talanov
e703de5796 Minor: add diagnostic test for entries in enum with abstract members 2014-10-10 17:43:31 +04:00
Michael Nedzelsky
12e76f3d04 JS backend: test for KT-2901: nullable type in string template 2014-10-10 17:04:18 +04:00
Pavel V. Talanov
e7cd4bf6cf Implement modificationTracker for CompositeDiagnostics
#KT-5981 Fixed
2014-10-10 16:46:05 +04:00
Evgeny Gerashchenko
75853e3aad Saving only class files into incremental cache.
Fixed exception for JS modules.
2014-10-10 16:24:03 +04:00
Evgeny Gerashchenko
fa70192f75 Added test for EA-49318. 2014-10-10 16:00:27 +04:00
Evgeny Gerashchenko
ad1b460bea Clarified assert for EA-45243. 2014-10-10 16:00:26 +04:00
Evgeny Gerashchenko
27238a470a Minor. Removed redundant cast. 2014-10-10 16:00:26 +04:00
Evgeny Gerashchenko
9829fd83a0 Fixed EA-45529. 2014-10-10 16:00:26 +04:00
Evgeny Gerashchenko
0137b7ec3c Clarified assertion for EA-45529. 2014-10-10 16:00:25 +04:00
Evgeny Gerashchenko
38514673bf Clarified assertion for EA-53060. 2014-10-10 16:00:25 +04:00
Evgeny Gerashchenko
556b76d9a4 Made it possible to patch IDEA by adding class to idea_runner module.
See confluence page for details: http://confluence.jetbrains.com/display/JET/How+to+patch+IDEA+for+Kotlin
2014-10-10 16:00:24 +04:00
Nikolay Krasko
9cdea0479c Update to IDEA 139.1.20 2014-10-10 12:56:53 +04:00
Pavel V. Talanov
2fc2c73374 Test mutable diagnostics 2014-10-09 20:32:56 +04:00
Pavel V. Talanov
19ec9f9eda Introduce MutableDiagnosticsWithSuppression and use it in BindingTrace implementations
Exposes the fact that Diagnostics is in fact a mutable entity with readonly API
Update readonly view when diagnostics are modified
Allows to avoid recreating DiagnosticsWithSuppression every time getDiagnostics() is called in DelegatingBindingTrace
  which led to severe performance issues for large files with lots of diagnostics
2014-10-09 20:32:55 +04:00
Pavel V. Talanov
d7c06f0527 Default implementations for some functions in Diagnostics 2014-10-09 20:32:54 +04:00
Pavel V. Talanov
b98f000c29 Prevent external change in SimpleDiagnostics and convert to Kotlin 2014-10-09 20:32:54 +04:00
Pavel V. Talanov
ec077d5f8f Minor: rename DiagnosticHolder -> DiagnosticSink 2014-10-09 20:32:53 +04:00
Michael Nedzelsky
e5bbc2a0d8 JS backend: support for Throwable.getMessage 2014-10-09 19:32:00 +04:00
Alexey Tsvetkov
5649797461 JS backend: catch fix refactoring 2014-10-09 19:31:57 +04:00
Michael Nedzelsky
787b8f72c5 JS backend: fix KT-5603 (Multiple catch): support for multiply catch clauses 2014-10-09 19:31:54 +04:00
Michael Nedzelsky
b15963d3fb JS backend: fix KT-5603 (Multiple catch): add tests 2014-10-09 19:31:51 +04:00
Natalia Ukhorskaya
1ce3ddaa82 Minor add message for class cast
EA-59672
2014-10-09 19:18:25 +04:00
Natalia Ukhorskaya
da96385f00 J2K: initialize NotNullManager 2014-10-09 19:18:23 +04:00
Natalia Ukhorskaya
141c88aaa9 Make ReferenceSearcher a parameter for JavaToKotlinConverter 2014-10-09 19:18:21 +04:00
Natalia Ukhorskaya
db86ade5fb Evaluate expression: add readAction during file analysis 2014-10-09 19:17:24 +04:00
Natalia Ukhorskaya
1055aa86aa Debugger tests: do not check breakpoint line and file extension for JDK classes 2014-10-09 19:17:23 +04:00
Michael Bogdanov
1944f75802 Skip default methods on single abstract method search
Fix for KT-4886: SAM conversion doesn't work for interfaces with default methods

  #KT-4886 Fixed
2014-10-09 17:15:46 +04:00
Nikolay Krasko
062dda89ea Add dumb mode for building run configuration
#EA-61442
2014-10-09 15:21:15 +04:00
Natalia Ukhorskaya
f9f4aefb2a Evaluate expression: check for errors before running extract function for code fragment 2014-10-09 13:48:39 +04:00
Natalia Ukhorskaya
410d5deb1c Evaluate expression: add runAction EA-61399 Fixed 2014-10-09 13:48:37 +04:00
Natalia Ukhorskaya
e613e3523e Minor: fix warnings 2014-10-09 13:46:23 +04:00
Natalia Ukhorskaya
e125375654 Evaluate expression: change message when extracted function is null 2014-10-09 13:46:22 +04:00
Natalia Ukhorskaya
f5c08c4868 Evaluate expression: add message for multiple output error from extract function 2014-10-09 13:46:21 +04:00
Natalia Ukhorskaya
f45baa9dbe Fix EA-60953 - NPE: CodeInsightUtils.findElementsOfClassInRange 2014-10-09 13:46:20 +04:00
Michael Bogdanov
d4307c69d2 Fix for KT-4301: Too many StringBuilders on string concatenations
#KT-4301 Fixed
2014-10-09 12:23:06 +04:00
Michael Bogdanov
4a078c1143 Temporary disable local fun inlining (it's not supported now) 2014-10-09 10:38:14 +04:00
Nikolay Krasko
ecb293bd6c Add context information about assert (EA-60850) 2014-10-09 02:28:48 +04:00
Nikolay Krasko
4b197aafa4 Abandon storing BindingContext in JetFunctionPsiElementCellRenderer
#EA-61357 Fixed
2014-10-09 02:28:47 +04:00
Nikolay Krasko
1143db85f1 Refactoring: move method to utility and don't create intermediate kotlin scope 2014-10-09 02:28:47 +04:00
Nikolay Krasko
3ea2d420b2 Refactoring: rename methods 2014-10-09 02:28:46 +04:00
Nikolay Krasko
6c9538b040 Share check "is file under source roots" 2014-10-09 02:28:45 +04:00
Nikolay Krasko
3e4888afa7 Refactoring: remove usages with default value from overload 2014-10-09 02:28:45 +04:00
Nikolay Krasko
7bf84ec84c Refactoring: rename method and hide information about gradle 2014-10-09 02:28:44 +04:00
Nikolay Krasko
a7fbc1bc6c Always check kotlin file is in correct source root for gradle modules 2014-10-09 02:28:44 +04:00
Nikolay Krasko
a29773597e Convert to Kotlin 2014-10-09 02:28:43 +04:00
Nikolay Krasko
b172709008 Refactoring: move file 2014-10-09 02:28:42 +04:00
Nikolay Krasko
e85b36cdff Store resolution context for light classes to prevent back-end fail 2014-10-09 02:28:41 +04:00
Nikolay Krasko
ad6a0c4b72 Add information about declaration 2014-10-09 02:28:41 +04:00
Nikolay Krasko
50265c311e Don't do resolve for files not under sorce roots 2014-10-09 02:28:40 +04:00
Evgeny Gerashchenko
181b10103f Incremental compilation checkbox in settings.
Old setting via VM option is automatically migrated to "new style".
2014-10-08 20:09:18 +04:00
Evgeny Gerashchenko
514a41ac77 Minor. Moved dialog title from code to GUI settings. 2014-10-08 17:22:31 +04:00
Evgeny Gerashchenko
e554c9f53d Converted CompilerSettings to Kotlin. 2014-10-08 17:22:31 +04:00
Zalim Bashorov
c7e0e3d391 Replace js.translator with js.frontend in dependencies of idea module and remove js.translator from KotlinPlugin artifact. 2014-10-08 15:55:06 +04:00
Zalim Bashorov
401d9ac831 Minor: add js.inliner sources to kotlin-for-upsource-sources.jar 2014-10-08 15:54:49 +04:00
Valentin Kipyatkov
05aaea48e9 Added API in PSI to add/remove modifiers and refactored quickfixes to use it 2014-10-08 15:41:48 +04:00
Valentin Kipyatkov
12b7d218b7 Simplified quickfix code 2014-10-08 15:41:48 +04:00
Valentin Kipyatkov
93efcd637e JetParameter made JetCallableDeclaration 2014-10-08 15:41:47 +04:00
Valentin Kipyatkov
852fc8bc5d More renames of TypeRef to TypeReference 2014-10-08 15:41:47 +04:00
Valentin Kipyatkov
31ebee81f0 JetVariableDeclaration made JetCallableDeclaration and renamed getTypeRef/setTypeRef, getReturnTypeRef/setReturnTypeRef to getTypeReference/setTypeReference 2014-10-08 15:41:47 +04:00
Valentin Kipyatkov
c42b7b1780 Minor refactorings in ChangeMemberFunctionSignatureFix 2014-10-08 15:41:47 +04:00
Valentin Kipyatkov
b26e6665b0 JetChangeFunctionSignatureAction made nested class of quickfix class (and it does not need to be QuestionAction!) 2014-10-08 15:41:47 +04:00
Valentin Kipyatkov
61221382b5 Inlined CodeInsightUtils.createFunctionSignatureStringFromDescriptor() 2014-10-08 15:41:46 +04:00
Valentin Kipyatkov
b5722c9470 More correct code for adding type specification to function declaration with no parameter list 2014-10-08 15:41:46 +04:00
Valentin Kipyatkov
cc3ca57b75 Minor code editings 2014-10-08 15:41:46 +04:00
Michael Bogdanov
41c4c3befd Fix test data for KT-3285 2014-10-08 09:34:50 +04:00
nik
11d02e5485 use standard UnsupportedOperationException instead of NotImplementedException from internal packages 2014-10-07 20:57:47 +04:00
Evgeny Gerashchenko
b80f82dffd Fixed filename case. 2014-10-07 20:57:05 +04:00
Pavel V. Talanov
33cdefffe3 Do not log ProcessCanceledException in copy paste reference processor
It is rethrown and leads to inability to copy code

 #KT-5426
2014-10-07 19:28:49 +04:00
Michael Bogdanov
f8052817a8 Rollback some changes in MutableClosure 2014-10-07 18:43:29 +04:00
Ilya Ryzhenkov
759e42188b Update TeamCity links to https, replace link to confluence with link to kotlinlang.org. 2014-10-07 17:59:02 +04:00
Evgeny Gerashchenko
b062548392 Expanded and simplified test for generating bridges in sam conversions. 2014-10-07 17:48:17 +04:00
Ilya Ryzhenkov
72f96cd55c Generate bridges when creating SAM wrapper not from closure. 2014-10-07 17:48:17 +04:00
Michael Bogdanov
6bcb2e9001 Temporary fix for KT-5912
#KT-5912 Fixed
2014-10-07 17:48:17 +04:00
Michael Bogdanov
6b336be10c Obsolete KT-1776: Can't resolve members of auto-casted "this" in extension without typing "this" explicitly
#KT-1776 Obsolete
2014-10-07 17:21:11 +04:00
Michael Bogdanov
278e682595 Obsolete KT-3285: "A receiver of type ... is required" when using extension functions
#KT-5467 Obsolete
2014-10-07 17:21:11 +04:00
Michael Bogdanov
bb3f1f1fb7 Fix for KT-5467: JVM codegen doesn't support capture of many extension receivers
#KT-5467 Fixed
2014-10-07 17:21:10 +04:00
Michael Bogdanov
c3cfe33b64 Fix for KT-5495: Support method implementations in local traits
#KT-5495 Fixed
2014-10-07 17:21:10 +04:00
Michael Bogdanov
212d3da950 Fix for KT-5937: Receiver of javaClass-property hasn't been generated
#KT-5937 Fixed
2014-10-07 17:21:10 +04:00
Pavel V. Talanov
1e9718f55b Do not try to copy references in dumb mode
#KT-4766 Fixed
2014-10-07 16:43:32 +04:00
Zalim Bashorov
23fa0ba6ab Refactoring kotlin-maven-plugin:
* cleanup KotlinCompileMojoBase moved JVM specific things to KotlinCompileMojo;
* add support noInline in JS.
2014-10-07 16:32:07 +04:00
Zalim Bashorov
d986b0e565 Ant buildtools: added base class for Kotlin compiler ant tasks.
As side effect:
 - used cli compiler in both ant tasks.
 - got the ability to use custom args in JS ant task too.
2014-10-07 16:32:07 +04:00
Nikolay Krasko
dc97cdb51c Fix test 2014-10-07 13:34:55 +04:00
Natalia Ukhorskaya
1904955c82 Android support: implement extension for OutputParser 2014-10-07 12:15:52 +04:00
Natalia Ukhorskaya
824d79c934 Android-support: implement OutputParser 2014-10-07 12:15:52 +04:00
Natalia Ukhorskaya
ffe8ae3840 kotlin-gradle-plugin: change output format 2014-10-07 12:15:51 +04:00
Natalia Ukhorskaya
dd0642e0fc Add module for kotlin-android-plugin and optional dependency on android plugin 2014-10-07 12:15:50 +04:00
Michael Bogdanov
d0d207f387 Fix for KT-3584: Wrong bytecode generated for local class with default parameters and captured local val
#KT-3584 Fixed
2014-10-07 10:13:53 +04:00
Michael Bogdanov
989cae9f1f Fix for KT-4357: Compiler error with infix call to Array.get
#KT-4357 Fixed
2014-10-07 10:13:53 +04:00
Michael Bogdanov
7be48c7336 Support move on depth 2 2014-10-07 10:13:52 +04:00
Michael Bogdanov
e6c98078b3 Fixes for KT-4733 UnsupportedOperationException: don't know how to move type J to top of stack; KT-3430 VerifyError on a safe call to a primitive value
#KT-4733 Fixed
  #KT-3430 Fixed
2014-10-07 10:13:52 +04:00
Michael Nedzelsky
8cafea9f5a JS backend: add generateTraitMethods into ClassTranslator 2014-10-07 08:37:35 +04:00
Michael Nedzelsky
6d1b89bba3 JS backend: support for bridge methods 2014-10-07 08:37:27 +04:00
Michael Nedzelsky
541786a4db JS backend: extract generateDelegateCall from DelegationTranslator into utils 2014-10-07 08:37:23 +04:00
Michael Nedzelsky
df15e4767b extract getTraitMethods from ImplementationBodyGen to CodegenUtil 2014-10-07 08:37:20 +04:00
Michael Nedzelsky
0c3a7a9d99 add more tests for bridge methods (fake override) 2014-10-07 08:37:18 +04:00
Michael Nedzelsky
2db1d128a0 JS backend: add ArrayList(Collection) into javautilCode.kt 2014-10-07 08:37:01 +04:00
Michael Nedzelsky
1e02064a5b JS backend: add javauitl.kt to bridges/_commonFiles 2014-10-07 08:36:54 +04:00
Michael Nedzelsky
04d8960a3d JS backend: add BridgeTestGenerated 2014-10-07 08:36:50 +04:00
Michael Nedzelsky
0dd17535d6 JS backend: add TARGET_BACKEND: ONLY_JVM for some tests for bridge methods 2014-10-07 08:36:46 +04:00
Michael Nedzelsky
bdc4d14f33 JS backend: improve test generator, support for backend header in test files 2014-10-07 08:36:43 +04:00
Michael Nedzelsky
03f673d6cf JS backend: add NotNull and Nullable annotations 2014-10-07 08:36:27 +04:00
Michael Nedzelsky
6f1d362917 JS backend: add getPackageName to BasicTest, checkBlackBox to SingleFileTranslationTest 2014-10-07 08:36:22 +04:00
Michael Nedzelsky
b84e5969e2 JS backend: fix get mangling name for generic methods with multiply upper bounds 2014-10-07 08:36:18 +04:00
Zalim Bashorov
9fabdf4587 JS backend: mangling functions for extension properties. 2014-10-06 23:18:54 +04:00
Zalim Bashorov
9b04e3e3fe JS backend: use all generic parameters in mangling 2014-10-06 23:18:54 +04:00
Zalim Bashorov
10a9c0a434 JS backend: move mangling functions to separate util class. 2014-10-06 23:18:53 +04:00
Zalim Bashorov
b5ee5877ce JS backend: kotlin_lib_compiled -> stdlib. 2014-10-06 23:18:53 +04:00
Zalim Bashorov
eec4bc7e04 Minor: fix compilation in IDEA 2014-10-06 23:18:53 +04:00
Zalim Bashorov
8f6b12d296 Fixed maven build 2014-10-06 23:18:53 +04:00
Zalim Bashorov
5a63e34c19 JS tests: fix testData files 2014-10-06 23:18:53 +04:00
Zalim Bashorov
9ac193407b Fixed JS test runner: save only stdlib module from run to run. 2014-10-06 23:18:53 +04:00
Zalim Bashorov
25172d797e JS tests: disable Rhino optimization by default. 2014-10-06 23:18:52 +04:00
Zalim Bashorov
20f20f9441 JS tests: refactored StdLibTestBase and derived classes. 2014-10-06 23:18:52 +04:00
Zalim Bashorov
b72b036bdb JS tests: refactored BasicTest class. 2014-10-06 23:18:52 +04:00
Zalim Bashorov
c8278fd887 JS backend: refactor Configs. 2014-10-06 23:18:52 +04:00
Zalim Bashorov
dd1fffae40 Minor in JS tests: load and cache kotlin_lib_compiled.js 2014-10-06 23:18:52 +04:00
Zalim Bashorov
ce4bbb906b JS tests: disabled linter. 2014-10-06 23:18:51 +04:00
Zalim Bashorov
36bad02e67 Minor in JS tests: cleanup RhinoFunctionResultChecker and dependent classes. 2014-10-06 23:18:51 +04:00
Zalim Bashorov
9290c3aad7 JS tests: HACK for use JsTestsAsserter in JS tests 2014-10-06 23:18:51 +04:00
Zalim Bashorov
7a51ef5723 Stdlib: fix build -- use named object instead of instance of Any because Any not mapped yet in JS backend. 2014-10-06 23:18:51 +04:00
Zalim Bashorov
c142253fb9 JS stdlib: droped unnecessary jutilCode.kt 2014-10-06 23:18:51 +04:00
Zalim Bashorov
9827a5a21d Minor in JS stdlib: fix annotations.kt 2014-10-06 23:18:51 +04:00
Zalim Bashorov
23151936b6 JS stdlib: added volatile and synchronized. 2014-10-06 23:18:50 +04:00
Zalim Bashorov
80294f53ad JS stdlib: drop TuplesCode.kt -- switch to use tuples from stdlib. 2014-10-06 23:18:50 +04:00
Zalim Bashorov
0cac7c32b6 Stdlib: Deprecated.kt splitted to common and jvm parts. 2014-10-06 23:18:50 +04:00
Zalim Bashorov
3bc80a6d05 Stdlib: Char.kt splitted to common and jvm parts. 2014-10-06 23:18:50 +04:00
Zalim Bashorov
d7dfbe40a4 Stdlib: moved CharSequence.size and String.size to StringJVM.kt because they are intrinsic in JS. 2014-10-06 23:18:50 +04:00
Zalim Bashorov
4ba4484683 Stdlib: moved setOf and linkedListOf from JUtilJVM.kt to JUtil.kt. 2014-10-06 23:18:49 +04:00
Zalim Bashorov
5b80eef381 Added ant step for compilation Kotlin stdlib to JS. 2014-10-06 23:18:49 +04:00
Valentin Kipyatkov
5ae756addb Quickfix to correct signature of method with 'override' to not include 'override' in signature text 2014-10-06 21:26:55 +04:00
Valentin Kipyatkov
317607db70 Corrected quickfix to correct signature of method with 'override' to:
- not loose annotations and other stuff
  - not include visibility modifiers into the name and into the code generated
2014-10-06 21:26:55 +04:00
Valentin Kipyatkov
89ea4d5a85 More quickfixes to use API for setting type ref 2014-10-06 21:26:55 +04:00
Valentin Kipyatkov
d876e85eb2 Added API for changing type ref for function/variable and refactored code in some quickfixes to use it 2014-10-06 21:26:55 +04:00
Valentin Kipyatkov
2036b87ccf Deleted strange unused method 2014-10-06 21:26:55 +04:00
Evgeny Gerashchenko
6e8002138e Made Kotlin available for IDEA 140.* (trunk after 14.0) 2014-10-06 20:03:58 +04:00
Evgeny Gerashchenko
dd0436cd3a Updated base URL for jb_update_continuous_local.
It wasn't updated on time when Kotlin was transferred from IDEA 13 to 14.
2014-10-06 19:17:31 +04:00
Nikolay Krasko
44b8e22bef More tests for generating methods from different caret positions 2014-10-06 17:53:10 +04:00
Nikolay Krasko
3c6566c1b1 Auto generate "after"-file if it's not present 2014-10-06 17:53:08 +04:00
Nikolay Krasko
60a7a57e65 Auto insert caret and selection to "after" file 2014-10-06 17:53:07 +04:00
Nikolay Krasko
27b654cc50 Refactoring: rename and make public 2014-10-06 17:53:05 +04:00
Nikolay Krasko
c05d30de38 Refactoring: extract method 2014-10-06 17:53:03 +04:00
Nikolay Krasko
774af134fa Move caret to generated element and add selection 2014-10-06 17:53:02 +04:00
Nikolay Krasko
a50720d74d Remove rest of whitespace on override or implement to insert generated at caret offset 2014-10-06 17:53:00 +04:00
Nikolay Krasko
03d1c64d27 KT-5103 No delegated members in Override/Implement
#KT-5103 Fixed
2014-10-06 17:52:41 +04:00
Nikolay Krasko
a0404b11b0 Refactoring: use resolve session instead of binding context 2014-10-06 17:52:33 +04:00
Nikolay Krasko
c80cdb4790 getContainingFile() and getProject() have to be executed under read lock 2014-10-06 15:27:01 +04:00
Alexey Sedunov
74242a5fd9 Move: Updated test data (functions/properties are not imported by default) 2014-10-06 14:23:50 +04:00
Alexey Sedunov
1353e7f56b Find Usages: Disable by-convention search of invoke(). Improve scanner
accuracy when indexing possible references to component functions
2014-10-06 14:23:49 +04:00
Pavel V. Talanov
5e6619e368 Increase LibraryModificationTracker when external annotations are changed
Library cache is dropped when there are changes to external annotations
2014-10-03 21:35:11 +04:00
Pavel V. Talanov
95302fd540 Fix not generating KotlinLightField for OBJECT$ and INSTANCE$ fields
Fix navigation from Java to such fields
Fix TODO in converter
2014-10-03 21:35:06 +04:00
Pavel V. Talanov
b2ec5e1ec4 Test reference resolve from Java to Kotlin
Cases cover the most basic features
Sadly it was missing before
2014-10-03 21:35:00 +04:00
Pavel V. Talanov
af963ea244 Fix being unable to find declaration for substituted callable from library
#KT-5900 Fixed
#KT-5901 Fixed
2014-10-03 21:33:18 +04:00
Pavel V. Talanov
8f52f71378 Remove warn on performing analysis from dispatch thread
This is outdated since lazy resolve can be called from dispatch thread (Intentions do it)
2014-10-03 21:33:18 +04:00
Pavel V. Talanov
8db599c68a Convert Java file to Kotlin: do not ask whether to backup files
Do not backup files

 #KT-5530 Fixed
2014-10-03 21:33:17 +04:00
Alexey Sedunov
be2713b59c Minor: Rename CreateFunctionFromUsageFix -> CreateCallableFromUsageFix 2014-10-03 20:18:45 +04:00
Alexey Sedunov
ae7c5e1323 Create From Usage: Do not fail on qualifier receiver when it doesn't have type 2014-10-03 20:18:44 +04:00
Alexey Sedunov
b680b74ecb Create From Usage: Do not suggest list of type candidates when there is at most one 2014-10-03 20:18:43 +04:00
Alexey Sedunov
5ade563902 Create From Usage: Join local "vars" with their initializers 2014-10-03 20:18:43 +04:00
Alexey Sedunov
865c793561 Create From Usage: Do not suggest "val" for references used as assignment left-hand side 2014-10-03 20:18:42 +04:00
Alexey Sedunov
58126b28ca Create From Usage: Quick-fix for properties 2014-10-03 20:18:41 +04:00
Alexey Sedunov
8386bcd4e0 Create Local Variable From Usage: Support lambdas 2014-10-03 20:18:39 +04:00
Alexey Sedunov
6ad2157806 Create From Usage: Quick-fix for value parameters 2014-10-03 20:18:39 +04:00
Alexey Sedunov
73fc984c4c Change Signature: Fix detection of conflicts in generic classes 2014-10-03 20:18:37 +04:00
Michael Bogdanov
609caa8159 Clean 2014-10-03 17:24:15 +04:00
Michael Bogdanov
15043b3c6d Fixes for KT-4991: Prefix/postfix expressions resolved to local extensions are not supported in codegen;
KT-4989: Verify error on local functions and extensions;
KT-4987: NegativeArraySizeException on local extension convention function on nullable Int

  #KT-4991 Fixed
  #KT-4989 Fixed
  #KT-4987 Fixed
2014-10-03 17:24:14 +04:00
Michael Bogdanov
0c11ca680e Fix for KT-3969: Codegen fails on unary calls with default arguments
#KT-3969 Fixed
2014-10-03 17:24:14 +04:00
Alexey Tsvetkov
d61352c8f3 JS inline: assignment binary operation is not side-effect free 2014-10-03 14:23:57 +04:00
Alexey Tsvetkov
a795ee6218 JS backend minor: added @NotNull annotation to JsBinaryOperation's getOp() 2014-10-03 14:23:57 +04:00
Alexey Tsvetkov
8a607ce9be Minor test: added config argument 2014-10-03 14:23:57 +04:00
Alexey Tsvetkov
436fc33e84 Minor testData: fixed -Xno-inline option at extraHelp.out 2014-10-03 14:23:57 +04:00
Alexey Tsvetkov
48bd71e0b6 JS inline minor: removed unused parameter 2014-10-03 14:23:57 +04:00
Alexey Tsvetkov
f022cd6281 JS backend: restored old label naming strategy 2014-10-03 14:23:57 +04:00
Alexey Tsvetkov
886ae36e1f JS backend: removed nullable parameters
Since JsScope declareName() parameter became NotNull
2014-10-03 14:23:57 +04:00
Alexey Tsvetkov
0eedb0dc6b JS backend: added @NotNull annotation to JsNameRef's getIdent() and constructor parameters 2014-10-03 14:23:56 +04:00
Alexey Tsvetkov
89d74d94c9 JS backend: added @NotNull annotation to JsName's getIdent() 2014-10-03 14:23:56 +04:00
Zalim Bashorov
3b9232e8d4 Drop extra fields which covered by metadata: hasDefaultValue from JsParameter. 2014-10-03 14:23:56 +04:00
Zalim Bashorov
aa6ab1ffee Drop extra fields which covered by metadata: isLocal from JsFunction. 2014-10-03 14:23:56 +04:00
Zalim Bashorov
afdec6ecc4 Drop extra fields which covered by metadata: inlineStrategy from JsInvocation. 2014-10-03 14:23:56 +04:00
Zalim Bashorov
b5ab6cbad0 Drop extra fields which covered by metadata: staticRef from JsName. 2014-10-03 14:23:56 +04:00
Zalim Bashorov
d16ddd081a JS backend: copy metdata when copy node. 2014-10-03 14:23:56 +04:00
Zalim Bashorov
1c5338ccf7 JS backend: added the ability to add metadata to js nodes. 2014-10-03 14:23:55 +04:00
Zalim Bashorov
03539c1945 Minor: removed unused ChameleonJsExpression. 2014-10-03 14:23:55 +04:00
Zalim Bashorov
4816e391ff Minor in JS backend: moved js.inliner to "compiler/js" group and added descriptors to its dependencies. 2014-10-03 14:23:55 +04:00
Alexey Tsvetkov
d3fce0d0ec JS inline return statements after top return 2014-10-03 14:23:55 +04:00
Alexey Tsvetkov
7a8ba9c733 JS backend refactor: refactored LiteralFunctionTranslator after code review 2014-10-03 14:23:55 +04:00
Alexey Tsvetkov
c47732e7eb JS inline minor: optimized imports 2014-10-03 14:23:55 +04:00
Alexey Tsvetkov
64982aa72e JS backend minor: made CALL_FUNCTION constant public 2014-10-03 14:23:54 +04:00
Alexey Tsvetkov
d6f8aa6f03 JS backend minor: made undefined expression static field 2014-10-03 14:23:54 +04:00
Alexey Tsvetkov
fb475775c9 JS inline minor: inlined doDirectInline() 2014-10-03 14:23:54 +04:00
Alexey Tsvetkov
6018b103cc JS inline refactor: splitted Renaming.kt 2014-10-03 14:23:54 +04:00
Alexey Tsvetkov
17a78dd522 JS inline refactor: moved invocation and function utils to separate files 2014-10-03 14:23:54 +04:00
Alexey Tsvetkov
7fbed5ee86 JS inline refactor: extracted flattenStatement() function 2014-10-03 14:23:54 +04:00
Alexey Tsvetkov
80eca3e49e JS inline refactor: refactored clean utils after code review 2014-10-03 14:23:53 +04:00
Alexey Tsvetkov
1ad090e3a7 JS inline refactor: moved contexts to 'context' package 2014-10-03 14:23:53 +04:00
Alexey Tsvetkov
cd9349deb7 JS inline refactor: moved JS AST collecting utils to 'collectors' package 2014-10-03 14:23:53 +04:00
Alexey Tsvetkov
86c253ef6d JS inline refactor: moved JS AST modifying utils to 'rewriters' package 2014-10-03 14:23:53 +04:00
Alexey Tsvetkov
d3a8f78a88 JS inline minor: moved JsInliningContext definition to the bottom of JsInliner 2014-10-03 14:23:53 +04:00
Zalim Bashorov
0e075c7d5f JS backend: added the ability to turn off the inline optimization. 2014-10-03 14:23:53 +04:00
Alexey Tsvetkov
338789664c JS inline: use inlined function name for inline labels 2014-10-03 14:23:53 +04:00
Alexey Tsvetkov
cbb9e9c40e JS inline: inline simple-return functions directly 2014-10-03 14:23:52 +04:00
Alexey Tsvetkov
da817e7ed2 JS inline: use dfs processing order, as it is independent of declaration order 2014-10-03 14:23:52 +04:00
Alexey Tsvetkov
a5688440a1 JS inline: added inline recursion exception 2014-10-03 14:23:52 +04:00
Alexey Tsvetkov
5aaa186180 JS inline: remove unused function literals and local functions 2014-10-03 14:23:52 +04:00
Alexey Tsvetkov
ec6108ee05 JS inline: remove unused local function instances 2014-10-03 14:23:52 +04:00
Alexey Tsvetkov
7f98ceb427 JS inline: common reference utilities for cleaning up after inline 2014-10-03 14:23:52 +04:00
Alexey Tsvetkov
ddb3157a58 JS inline: added collections utils 2014-10-03 14:23:52 +04:00
Alexey Tsvetkov
c78169d236 JS inline: support inline local functions 2014-10-03 14:23:51 +04:00
Alexey Tsvetkov
1dafa79eaf JS inline: prevent inliner from inlining multiple subexpressions at once 2014-10-03 14:23:51 +04:00
Alexey Tsvetkov
87d108e75e JS inline: default parameter processing for inlined functions
When function is inlined initializers
for default parameters can be:
1. removed  if argument is not `void 0`
2. expanded otherwise
2014-10-03 14:23:51 +04:00
Alexey Tsvetkov
1f68b43558 JS inline: support inline extension functions 2014-10-03 14:23:51 +04:00
Alexey Tsvetkov
78e7b9c32b JS inline: replace returns with result variable assignment and break 2014-10-03 14:23:51 +04:00
Alexey Tsvetkov
667a22f84e JS inline: alias arguments and local variables 2014-10-03 14:23:51 +04:00
Alexey Tsvetkov
49718f143b JS inline: create JsInliningContext per function processed by JsInliner 2014-10-03 14:23:51 +04:00
Alexey Tsvetkov
0151b7a2d1 JS inline: added inlining context utilities 2014-10-03 14:23:50 +04:00
Alexey Tsvetkov
f29816f19c JS inline: added invocation utils 2014-10-03 14:23:50 +04:00
Alexey Tsvetkov
1aa55f3e54 JS inline: run JsInliner after AST is built 2014-10-03 14:23:50 +04:00
Alexey Tsvetkov
3c4125c233 JS inline: inline function calls 2014-10-03 14:23:50 +04:00
Alexey Tsvetkov
3c7677e73e JS inline: collect defined functions 2014-10-03 14:23:50 +04:00
Alexey Tsvetkov
2e38833367 JS inline: save static ref to JsFunction in JsName 2014-10-03 14:23:50 +04:00
Alexey Tsvetkov
e4cd733879 JS inline: added JsInliner 2014-10-03 14:23:50 +04:00
Alexey Tsvetkov
60271201fc JS inline: added FunctionInlineMutator 2014-10-03 14:23:49 +04:00
Alexey Tsvetkov
2c443532c5 JS inline: added InlineableResult 2014-10-03 14:23:49 +04:00
Alexey Tsvetkov
3cdae252ef JS inline: save inline status during translation 2014-10-03 14:23:49 +04:00
Alexey Tsvetkov
efac671ae6 JS inline: removed legacy inline logic 2014-10-03 14:23:49 +04:00
Alexey Tsvetkov
f076ab8f54 JS backend: added deepCopy() method to JS AST nodes 2014-10-03 14:23:49 +04:00
Alexey Tsvetkov
b880775de5 JS backend: removed JsBlock toString() truncation
Truncation complicates debugging.
Some inline tests depend on functions strings  comparison.
2014-10-03 14:23:49 +04:00
Alexey Tsvetkov
28b3ed67c1 JS backend: made JsScope hasOwnName method public 2014-10-03 14:23:48 +04:00
Alexey Tsvetkov
2b6045af0f JS backend: made JsBlock statements list modifieable
Inliner should be able to add statements of inline function to JsBlock
2014-10-03 14:23:48 +04:00
Alexey Tsvetkov
53fe237499 JS backend: made JsInvocation arguments modifieable 2014-10-03 14:23:48 +04:00
Alexey Tsvetkov
96e5985ca9 JS backend: added NotNull annotation 2014-10-03 14:23:48 +04:00
Alexey Tsvetkov
d27b7b793f JS backend: break label should be JsNameRef, not String
The reason is to make it easier to distinguish
between different break labels (that's valid on same level).
JsNameRefs can be distinguished by their JsName.
2014-10-03 14:23:48 +04:00
Alexey Tsvetkov
915f8734c5 JS backend: added visitors with context 2014-10-03 14:23:48 +04:00
Alexey Tsvetkov
15e963de25 JS test: turn rhino optimization off for stdlib tests 2014-10-03 14:23:48 +04:00
Alexey Tsvetkov
3f2d4b31be JS test: added inline tests 2014-10-03 14:23:47 +04:00
Alexey Tsvetkov
987708680f JS test: JS AST access from tests 2014-10-03 14:23:47 +04:00
Alexey Tsvetkov
1dcc096753 JS test: removed legacy inline tests 2014-10-03 14:23:47 +04:00
Alexey Tsvetkov
0484df00c3 JS test: added test utils 2014-10-03 14:23:47 +04:00
Alexey Tsvetkov
a26e77fd93 JS inline: new module 2014-10-03 14:23:47 +04:00
Nikolay Krasko
555119f59a Exceptions during 'compute' in storage manager must be processed with exception strategy
#KT-5134 Fixed
2014-10-02 23:37:49 +04:00
Valentin Kipyatkov
bbc2d30f60 KT-4849 'Join lines' should remove braces from single-statement block
#KT-4849 Fixed
2014-10-02 18:26:07 +04:00
Valentin Kipyatkov
53983774d0 Moved and renamed class + added check for JetFile 2014-10-02 18:26:07 +04:00
Valentin Kipyatkov
593e93b88b Moved code from DeclarationUtils and refactored code 2014-10-02 18:26:07 +04:00
Valentin Kipyatkov
d71c481606 Moved test data 2014-10-02 18:26:06 +04:00
Valentin Kipyatkov
8cb631d6f8 Better way of changing property intiailizer used 2014-10-02 18:26:06 +04:00
Valentin Kipyatkov
c0db84331e Fixed bug in join lines 2014-10-02 18:26:06 +04:00
Valentin Kipyatkov
c6f10ea219 Moved some code from DeclarationUtils to JetDeclarationJoinLinesHandler and refactored it 2014-10-02 18:26:06 +04:00
Valentin Kipyatkov
879f0d201e Converted JetDeclarationJoinLinesHandler to Kotlin 2014-10-02 18:26:06 +04:00
Evgeny Gerashchenko
c7633a5266 Added workaround for auto-ungzipping when downloading in Ant 1.9.4. 2014-10-02 11:48:09 +04:00
Evgeny Gerashchenko
498d1d5cf8 Updating regexp for finding URL of IDEA EAP. 2014-10-02 11:48:09 +04:00
Svetlana Isakova
ce01c61811 Rename: auto cast -> smart cast 2014-10-01 18:52:52 +04:00
Svetlana Isakova
20f3403c80 Rename: this object, receiver argument -> dispatch receiver, extension receiver 2014-10-01 18:52:51 +04:00
Svetlana Isakova
1d2d2f4845 KT-5873 Exception in ArgumentMatchImpl on smart completion
#KT-5873 Fixed
2014-10-01 18:52:51 +04:00
Nikolay Krasko
f0e7435254 A better heuristics is declaration implemented or overriden 2014-10-01 18:05:46 +04:00
Nikolay Krasko
bb7b4daef6 Drop isOverridableHeuristic and use isOverridable from utils instead 2014-10-01 18:05:45 +04:00
Nikolay Krasko
f76025710e Rewrite to Kotlin: overridden properties markers tooltip and navigation 2014-10-01 18:05:43 +04:00
Nikolay Krasko
bc5f28d9fd Refactoring: rename KotlinLightMethodFromTrait -> KotlinLightMethodForTraitFakeOverride 2014-10-01 18:05:38 +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
9de0e8c9fd Refactoring: rename file 2014-10-01 18:03:01 +04:00
Nikolay Krasko
54b2e994e1 Refactoring: move utils methods 2014-10-01 18:02:59 +04:00
Nikolay Krasko
260f9fb634 Rewrite to Kotlin: rewrite methods for markers on overridden declarations 2014-10-01 18:02:58 +04:00
Nikolay Krasko
7bf622dd26 Rewrite to Kotlin: super navigation markers methods 2014-10-01 18:02:57 +04:00
Nikolay Krasko
f7edd5abe7 Show all line markers in slow pass as they all require resolve 2014-10-01 18:02:55 +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
8ada9b68b0 Add special class for getting methods from traits 2014-10-01 18:02:31 +04:00
Nikolay Krasko
35c67734d3 Force function render use short qualified names 2014-10-01 17:58:58 +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
Nikolay Krasko
6a714436f2 Make testable navigation from line markers for super declarations 2014-10-01 17:58:55 +04:00
Nikolay Krasko
7c0acd9da5 Navigate to sources from markers not to decompiled classes 2014-10-01 17:58:53 +04:00
Nikolay Krasko
dfe3062340 Auto insert acual line markers for failed tests 2014-10-01 17:58:52 +04:00
Nikolay Krasko
2d54139018 Refactoring: move method to utils 2014-10-01 17:58:51 +04:00
Nikolay Krasko
72c7d22d5f Rewrite to Kotlin: DescriptorToDeclarationUtil 2014-10-01 17:58:49 +04:00
Zalim Bashorov
9eb1a38a25 Don't rewrite testData file if content not changed, it's for windows family.
And improved some error messages.
2014-10-01 15:35:40 +04:00
Pavel V. Talanov
92faee3fd7 Do not reuse other caches when analyzing synthetic files inside libraries classes
This is no longer correct since libraries have dependencies
2014-09-30 21:59:02 +04:00
Pavel V. Talanov
b7dbd7a68d Minor: readable toString for LibraryInfo and LibrarySourceInfo 2014-09-30 21:59:01 +04:00
Pavel V. Talanov
a8d77887af Introduce HighlightingWithDependentLibrariesTest
This tests that LibraryInfo dependencies affect source files highlighting
2014-09-30 21:59:01 +04:00
Pavel V. Talanov
e25cbcd961 Test for LibraryInfo dependencies 2014-09-30 21:59:00 +04:00
Pavel V. Talanov
23a45ae689 Provide heuristic dependencies for LibraryInfo
This is not and cannot be (with current IDEA model) accurate
For now we use the following approximation:
    If a module dependends on library 'a' and among module's dependencies (including this module)
	there is a module that depends on library 'b' then
	we assume that library 'a' depends on library 'b'
2014-09-30 21:59:00 +04:00
Pavel V. Talanov
691068c0c2 Implement LibraryDependenciesCache 2014-09-30 21:58:59 +04:00
Nikolay Krasko
f7c1802fb7 Can't call Kotlin built-in Throwable 2014-09-30 20:44:57 +04:00
Ross Hanson
bbbdfd25d9 KT-4820: Added new tests, introduced functionality to detect overridden functions, other minor fixes 2014-05-09 05:48:50 -04:00
Ross Hanson
35c5a62b11 KT-4820: Intention to remove an unused index variable from a for loop. 2014-05-09 05:48:50 -04:00
Ross Hanson
97010c7d7f KT-4820: Intention to introduce an index variable to a for loop over an ordered collection via "withIndices()." 2014-05-09 05:45:30 -04:00
30290 changed files with 757337 additions and 431880 deletions

1
.gitattributes vendored Normal file
View File

@@ -0,0 +1 @@
**/testData/** linguist-vendored

2
.gitignore vendored
View File

@@ -8,8 +8,6 @@
/ideaSDK
/android-studio/sdk
out
/pluginPublisher/idea*
/pluginPublisher/plugin-verifier.jar
tmp
workspace.xml
*.versionsBackup

15
.idea/ant.xml generated
View File

@@ -1,17 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AntConfiguration">
<buildFile url="file://$PROJECT_DIR$/grammar/buildGrammarLexer.xml" />
<buildFile url="file://$PROJECT_DIR$/compiler/frontend/buildLexer.xml" />
<buildFile url="file://$PROJECT_DIR$/build.xml">
<antCommandLine value="-J-XX:MaxPermSize=100m" />
<maximumHeapSize value="1024" />
</buildFile>
<buildFile url="file://$PROJECT_DIR$/update_dependencies.xml" />
<buildFile url="file://$PROJECT_DIR$/TeamCityBuild.xml">
<maximumHeapSize value="512" />
</buildFile>
<buildFile url="file://$PROJECT_DIR$/pluginPublisher/TeamCityPluginPublisher.xml" />
<buildFile url="file://$PROJECT_DIR$/idea_runner/runner.xml" />
<buildFile url="file://$PROJECT_DIR$/idea-runner/runner.xml" />
<buildFile url="file://$PROJECT_DIR$/replicate_versions.xml" />
<buildFile url="file://$PROJECT_DIR$/libraries/build-docs.xml">
<maximumHeapSize value="1024" />
<properties>
<property name="dokka.path" value="../../dokka" />
</properties>
</buildFile>
</component>
</project>
</project>

View File

@@ -1,9 +1,9 @@
<component name="ArtifactManager">
<artifact type="jar" name="IdeLazyResolver">
<output-path>$PROJECT_DIR$/out/artifacts/IdeLazyResolver</output-path>
<root id="archive" name="ide-lazy-resolver.jar">
<element id="module-output" name="ide-lazy-resolve" />
<element id="dir-copy" path="$PROJECT_DIR$/idea/ide-lazy-resolve" />
<output-path>$PROJECT_DIR$/out/artifacts/internal/</output-path>
<root id="archive" name="kotlin-ide-common.jar">
<element id="module-output" name="ide-common" />
<element id="dir-copy" path="$PROJECT_DIR$/idea/ide-common" />
</root>
</artifact>
</component>

View File

@@ -1,9 +0,0 @@
<component name="ArtifactManager">
<artifact type="jar" name="InjectorGenerator">
<output-path>$PROJECT_DIR$/out/artifacts/InjectorGenerator</output-path>
<root id="archive" name="injector-generator.jar">
<element id="module-output" name="injector-generator" />
<element id="dir-copy" path="$PROJECT_DIR$/injector-generator" />
</root>
</artifact>
</component>

View File

@@ -3,8 +3,7 @@
<output-path>$PROJECT_DIR$/out/artifacts/Instrumentation</output-path>
<root id="archive" name="Instrumentation.jar">
<element id="module-output" name="instrumentation" />
<element id="extracted-dir" path="$PROJECT_DIR$/ideaSDK/lib/jetbrains-asm-debug-all-4.0.jar" path-in-jar="/" />
<element id="extracted-dir" path="$PROJECT_DIR$/ideaSDK/lib/guava-17.0.jar" path-in-jar="/" />
<element id="extracted-dir" path="$PROJECT_DIR$/ideaSDK/lib/asm-all.jar" path-in-jar="/" />
</root>
</artifact>
</component>

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<component name="ArtifactManager">
<artifact name="KotlinAndroidExtensions">
<output-path>$PROJECT_DIR$/out/artifacts/KotlinAndroidExtensions</output-path>
<root id="root">
<element id="directory" name="lib">
<element id="archive" name="kotlin-android-extensions.jar">
<element id="module-output" name="android-idea-plugin" />
</element>
<element id="directory" name="jps">
<element id="archive" name="kotlin-android-extensions-jps.jar">
<element id="module-output" name="android-jps-plugin" />
</element>
</element>
<element id="archive" name="android-compiler-plugin.jar">
<element id="module-output" name="android-compiler-plugin" />
</element>
<element id="file-copy" path="$PROJECT_DIR$/dist/kotlinc/lib/kotlin-runtime.jar" />
</element>
</root>
</artifact>
</component>

View File

@@ -1,18 +0,0 @@
<component name="ArtifactManager">
<artifact name="KotlinAndroidExtensionsPlugin">
<output-path>$PROJECT_DIR$/out/artifacts/KotlinAndroidExtensionsPlugin</output-path>
<root id="root">
<element id="directory" name="lib">
<element id="archive" name="kotlin-android-extensions-plugin.jar">
<element id="module-output" name="android-compiler-plugin" />
<element id="module-output" name="android-idea-plugin" />
</element>
<element id="directory" name="jps">
<element id="archive" name="kotlin-android-extensions-jps.jar">
<element id="module-output" name="android-jps-plugin" />
</element>
</element>
</element>
</root>
</artifact>
</component>

View File

@@ -1,6 +1,12 @@
<component name="ArtifactManager">
<artifact name="KotlinBarePlugin">
<output-path>$PROJECT_DIR$/out/artifacts/BareKotlin</output-path>
<properties id="ant-postprocessing">
<options enabled="true">
<file>file://$PROJECT_DIR$/idea-runner/runner.xml</file>
<target>copy-runtime-for-idea-plugin</target>
</options>
</properties>
<root id="root">
<element id="directory" name="kotlinc">
<element id="dir-copy" path="$PROJECT_DIR$/dist/kotlinc" />
@@ -10,13 +16,11 @@
<element id="module-output" name="bare-plugin" />
<element id="module-output" name="descriptor.loader.java" />
<element id="module-output" name="frontend.java" />
<element id="module-output" name="serialization.java" />
<element id="module-output" name="descriptors" />
</element>
<element id="directory" name="jps">
<element id="artifact" artifact-name="KotlinJpsPlugin" />
</element>
<element id="file-copy" path="$PROJECT_DIR$/dist/kotlinc/lib/kotlin-runtime.jar" />
</element>
</root>
</artifact>

View File

@@ -1,18 +1,26 @@
<component name="ArtifactManager">
<artifact type="jar" name="KotlinJpsPlugin">
<output-path>$PROJECT_DIR$/out/artifacts/KotlinJpsPlugin</output-path>
<properties id="ant-postprocessing">
<options enabled="true">
<file>file://$PROJECT_DIR$/idea-runner/runner.xml</file>
<target>copy-runtime-for-jps-plugin</target>
</options>
</properties>
<root id="archive" name="kotlin-jps-plugin.jar">
<element id="directory" name="META-INF">
<element id="dir-copy" path="$PROJECT_DIR$/jps-plugin/src/META-INF" />
</element>
<element id="extracted-dir" path="$PROJECT_DIR$/dependencies/cli-parser-1.1.1.jar" path-in-jar="/" />
<element id="module-output" name="cli-common" />
<element id="module-output" name="ide-compiler-runner" />
<element id="module-output" name="idea-jps-common" />
<element id="module-output" name="jps-plugin" />
<element id="module-output" name="preloader" />
<element id="module-output" name="util" />
<element id="module-output" name="util.runtime" />
<element id="file-copy" path="$PROJECT_DIR$/resources/manifest.properties" />
<element id="file-copy" path="$PROJECT_DIR$/resources/kotlinManifest.properties" />
<element id="module-output" name="kotlinr" />
<element id="module-output" name="rmi-interface" />
</root>
</artifact>
</component>

View File

@@ -1,6 +1,12 @@
<component name="ArtifactManager">
<artifact name="KotlinPlugin">
<output-path>$PROJECT_DIR$/out/artifacts/Kotlin</output-path>
<properties id="ant-postprocessing">
<options enabled="true">
<file>file://$PROJECT_DIR$/idea-runner/runner.xml</file>
<target>copy-runtime-for-idea-plugin</target>
</options>
</properties>
<root id="root">
<element id="directory" name="lib">
<element id="archive" name="kotlin-plugin.jar">
@@ -10,17 +16,16 @@
<element id="module-output" name="frontend.java" />
<element id="module-output" name="descriptor.loader.java" />
<element id="module-output" name="idea" />
<element id="module-output" name="jet.as.java.psi" />
<element id="module-output" name="light-classes" />
<element id="module-output" name="util" />
<element id="module-output" name="util.runtime" />
<element id="module-output" name="j2k" />
<element id="module-output" name="js.translator" />
<element id="module-output" name="js.frontend" />
<element id="module-output" name="js.parser" />
<element id="module-output" name="cli-common" />
<element id="module-output" name="ide-compiler-runner" />
<element id="module-output" name="idea-jps-common" />
<element id="module-output" name="preloader" />
<element id="module-output" name="serialization" />
<element id="module-output" name="serialization.java" />
<element id="module-output" name="deserialization" />
<element id="module-output" name="backend-common" />
<element id="library" level="project" name="builtins" />
<element id="module-output" name="js.dart-ast" />
@@ -30,15 +35,23 @@
</element>
<element id="module-output" name="eval4j" />
<element id="module-output" name="idea-analysis" />
<element id="module-output" name="ide-lazy-resolve" />
<element id="module-output" name="android-compiler-plugin" />
<element id="module-output" name="android-idea-plugin" />
<element id="module-output" name="ide-common" />
<element id="file-copy" path="$PROJECT_DIR$/resources/kotlinManifest.properties" />
<element id="module-output" name="kotlin-android-plugin" />
<element id="module-output" name="js.serializer" />
<element id="module-output" name="serialization" />
<element id="module-output" name="idea-completion" />
<element id="module-output" name="idea-core" />
<element id="module-output" name="idea-js" />
<element id="module-output" name="container" />
<element id="module-output" name="rmi-interface" />
<element id="module-output" name="kotlinr" />
</element>
<element id="library" level="project" name="javax.inject" />
<element id="directory" name="jps">
<element id="artifact" artifact-name="KotlinJpsPlugin" />
</element>
<element id="file-copy" path="$PROJECT_DIR$/dist/kotlinc/lib/kotlin-runtime.jar" />
<element id="library" level="project" name="markdown" />
</element>
<element id="directory" name="kotlinc">
<element id="dir-copy" path="$PROJECT_DIR$/dist/kotlinc" />

View File

@@ -287,5 +287,4 @@
</option>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</component>
</project>
</project>

5
.idea/compiler.xml generated
View File

@@ -2,6 +2,10 @@
<project version="4">
<component name="CompilerConfiguration">
<option name="DEFAULT_COMPILER" value="Javac" />
<option name="BUILD_PROCESS_HEAP_SIZE" value="2000" />
<excludeFromCompile>
<directory url="file://$PROJECT_DIR$/core/reflection.jvm" includeSubdirectories="true" />
</excludeFromCompile>
<resourceExtensions />
<wildcardResourcePatterns>
<entry name="!?*.java" />
@@ -23,4 +27,3 @@
<option name="ADDITIONAL_OPTIONS_STRING" value="-target 1.6" />
</component>
</project>

View File

@@ -4,6 +4,7 @@
<w>accessors</w>
<w>goto</w>
<w>gradle</w>
<w>intrinsics</w>
<w>kdoc</w>
<w>kompiler</w>
<w>memoize</w>

View File

@@ -2,12 +2,14 @@
<dictionary name="abreslav">
<words>
<w>accessor</w>
<w>covariantly</w>
<w>deserialized</w>
<w>dominator</w>
<w>inferrer</w>
<w>iterable</w>
<w>nondeterministic</w>
<w>nullable</w>
<w>overridable</w>
<w>pseudocode</w>
<w>substitutor</w>
<w>subtyping</w>

8
.idea/dictionaries/bashor.xml generated Normal file
View File

@@ -0,0 +1,8 @@
<component name="ProjectDictionaryState">
<dictionary name="bashor">
<words>
<w>ctor</w>
<w>lookups</w>
</words>
</dictionary>
</component>

View File

@@ -2,6 +2,7 @@
<dictionary name="geevee">
<words>
<w>builtins</w>
<w>callables</w>
<w>klass</w>
<w>proto</w>
<w>protoc</w>

View File

@@ -1,9 +1,22 @@
<component name="ProjectDictionaryState">
<dictionary name="valentin">
<words>
<w>decapitalize</w>
<w>delegator</w>
<w>funs</w>
<w>immediates</w>
<w>initializers</w>
<w>inserter</w>
<w>negatable</w>
<w>pparent</w>
<w>prioritizer</w>
<w>processings</w>
<w>rbrace</w>
<w>rbracket</w>
<w>renderers</w>
<w>rparenth</w>
<w>selectioner</w>
<w>unpluralize</w>
</words>
</dictionary>
</component>

7
.idea/encodings.xml generated
View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" />
</project>
<component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false">
<file url="PROJECT" charset="UTF-8" />
</component>
</project>

View File

@@ -402,7 +402,6 @@
</scope>
<option name="m_ignoreJavadoc" value="true" />
</inspection_tool>
<inspection_tool class="UnnecessaryInterfaceModifier" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="UnnecessaryLabelOnBreakStatement" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="UnnecessaryLabelOnContinueStatement" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="UnnecessaryQualifierForThis" enabled="true" level="WARNING" enabled_by_default="true" />

14
.idea/libraries/Rhino.xml generated Normal file
View File

@@ -0,0 +1,14 @@
<component name="libraryTable">
<library name="Rhino">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/dependencies/rhino-1.7.6.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/rhino-1.7.6-sources.jar!/rhino1.7.6/src" />
</SOURCES>
</library>
</component>

View File

@@ -1,38 +0,0 @@
<component name="libraryTable">
<library name="android">
<ANNOTATIONS>
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/android.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/jps/android-jps-plugin.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/android-common.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/jps/android-gradle-jps.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/manifest-merger.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/builder-model-0.12.0.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/commons-compress-1.0.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/layoutlib-api.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/common.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/sdklib.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/resources_en.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/sdk-tools.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/jarutils.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/lib/android-rt.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/common/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/common/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/ultimate/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/guiTestSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/android-gradle-jps/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/android/android-src.zip!/android-gradle-jps/testSrc" />
</SOURCES>
</library>
</component>

17
.idea/libraries/android_plugin.xml generated Normal file
View File

@@ -0,0 +1,17 @@
<component name="libraryTable">
<library name="android-plugin">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$PROJECT_DIR$/ideaSDK/plugins/android/lib" />
<root url="file://$PROJECT_DIR$/ideaSDK/plugins/android/lib/jps" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/plugins/android/lib" recursive="false" />
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/plugins/android/lib/jps" recursive="false" />
</library>
</component>

View File

@@ -1,9 +0,0 @@
<component name="libraryTable">
<library name="android_tests">
<CLASSES>
<root url="jar://$PROJECT_DIR$/dependencies/android_tests.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>

14
.idea/libraries/ant.xml generated Normal file
View File

@@ -0,0 +1,14 @@
<component name="libraryTable">
<library name="ant">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/dependencies/ant-1.8/lib/ant.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/apache-ant-1.8.2-src.zip!/apache-ant-1.8.2/src/main" />
</SOURCES>
</library>
</component>

View File

@@ -1,21 +0,0 @@
<component name="libraryTable">
<library name="ant-1.7">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/dependencies/ant-1.7/lib/ant.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/apache-ant-1.7.0-src.zip!/apache-ant-1.7.0/src/etc/testcases/core/loaderref/src" />
<root url="jar://$PROJECT_DIR$/dependencies/apache-ant-1.7.0-src.zip!/apache-ant-1.7.0/src/etc/testcases/core/containersrc" />
<root url="jar://$PROJECT_DIR$/dependencies/apache-ant-1.7.0-src.zip!/apache-ant-1.7.0/src/etc/testcases/types/assertions" />
<root url="jar://$PROJECT_DIR$/dependencies/apache-ant-1.7.0-src.zip!/apache-ant-1.7.0/src/etc/testcases/taskdefs/apt" />
<root url="jar://$PROJECT_DIR$/dependencies/apache-ant-1.7.0-src.zip!/apache-ant-1.7.0/src/etc/testcases/taskdefs/rmic/src" />
<root url="jar://$PROJECT_DIR$/dependencies/apache-ant-1.7.0-src.zip!/apache-ant-1.7.0/src/etc/testcases/taskdefs/fixcrlf/input" />
<root url="jar://$PROJECT_DIR$/dependencies/apache-ant-1.7.0-src.zip!/apache-ant-1.7.0/src/etc/testcases/taskdefs/fixcrlf/expected" />
<root url="jar://$PROJECT_DIR$/dependencies/apache-ant-1.7.0-src.zip!/apache-ant-1.7.0/src/main" />
</SOURCES>
</library>
</component>

11
.idea/libraries/cli_parser.xml generated Normal file
View File

@@ -0,0 +1,11 @@
<component name="libraryTable">
<library name="cli-parser">
<CLASSES>
<root url="jar://$PROJECT_DIR$/dependencies/cli-parser-1.1.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/cli-parser-1.1.1-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -8,7 +8,7 @@
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/copyright/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
</library>
</component>

13
.idea/libraries/coverage_plugin.xml generated Normal file
View File

@@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="coverage-plugin">
<CLASSES>
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/coverage/lib/coverage.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/coverage/lib/jacocoant.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/coverage/lib/coverage-agent.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -4,11 +4,11 @@
<root url="file://$PROJECT_DIR$/annotations" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/dependencies/dx.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/android-5.0/lib/dx.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/dx-sources.jar!/" />
<root url="file://$PROJECT_DIR$/dependencies/dx-src/src" />
</SOURCES>
</library>
</component>

View File

@@ -10,21 +10,7 @@
<JAVADOC />
<SOURCES>
<root url="file://$PROJECT_DIR$/ideaSDK/plugins/gradle/lib" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-impl/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/hotswap/agentSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/groovy-psi/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/groovy-psi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/rt-constants/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/structuralsearch-groovy/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/structuralsearch-groovy/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/plugins/gradle/lib" recursive="false" />
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/plugins/Groovy/lib" recursive="false" />

View File

@@ -2,6 +2,7 @@
<library name="idea-full">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$PROJECT_DIR$/ideaSDK/lib" />
@@ -10,314 +11,8 @@
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/guava-17.0-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/asm5-src.zip!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/gradle-tooling-extension-impl/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/groovy-psi/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/jetgroovy/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/jps-standalone-builder/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/lang-impl/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/spellchecker/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/testFramework-java/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/testFramework/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/testFramework/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/util/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/RegExpSupport/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/RegExpSupport/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/RegExpSupport/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/build/cucumber-test-runner/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/build/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/images/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/forms-compiler/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/forms-compiler/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/instrumentation-util/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/javac2/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/debugger/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/debugger/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/execution/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/execution/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/idea-ui/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-analysis-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-analysis-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-indexing-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-indexing-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-psi-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-runtime/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-structure-view/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-tests/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/jsp-base-openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/jsp-openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/jsp-spi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/manifest/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/manifest/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/remote-servers/api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/remote-servers/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/structuralsearch-java/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/testFramework/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/typeMigration/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/typeMigration/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/antLayout/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-builders/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-builders/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-launcher/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/plugin-system/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/standalone-builder/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/analysis-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/analysis-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/annotations/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/boot/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/bootstrap/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/core-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/core-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/duplicates-analysis/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/editor-ui-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/editor-ui-ex/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/extensions/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/extensions/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/external-system-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/external-system-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/external-system-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/forms_rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/funcTests/project1/module1/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/indexing-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/indexing-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-api/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-impl/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lvcs-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lvcs-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-main/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-tests/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/projectModel-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/projectModel-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/remote-servers/agent-rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/remote-servers/api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/remote-servers/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/backend/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/debugger-ui/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/debugger-ui/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-model-generator/generated" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-model-generator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-reader-runtime/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-reader/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/schema-reader-generator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/smRunner/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/smRunner/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structuralsearch/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structuralsearch/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structure-view-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structure-view-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testFramework/bootstrap/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testFramework/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testFramework/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testRunner/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/usageView/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util-rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/graph-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/graph/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/graph/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/xdebugger-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/xdebugger-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/xdebugger-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ByteCodeViewer/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/testsrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/IntelliLang-tests/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/intellilang-jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/java-support" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/xml-support" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntentionPowerPak/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntentionPowerPak/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntentionPowerPak/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ShortcutPromoter/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/tests/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/commander/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/copyright/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/coverage-common/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/coverage/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cucumber-jvm-formatter/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/cvs-core/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/cvs-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/javacvs-src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/smartcvs-src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/trilead-ssh2-build213/examples" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/trilead-ssh2-build213/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/devkit/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/devkit/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/devkit/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/generate-tostring/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/generate-tostring/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/remote-servers-git/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/test-stepdefs" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/tests" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/github/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/github/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/jps-plugin/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/runtime/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-impl/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/groovy-psi/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/groovy-psi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/hotswap/agentSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/rt-constants/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/structuralsearch-groovy/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/structuralsearch-groovy/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/hg4idea/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/hg4idea/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-i18n/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-i18n/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/FxBuilderEmbedder/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/common-javaFX-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/javaFX-CE/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/javaFX-jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/junit/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/junit_rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m2/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m3/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m31/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven-server-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven2-server-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven2-server-impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven3-server-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven3-server-impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/src/main/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/src/test/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-api/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/svn4idea/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/svn4idea/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/svn4idea/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-core/jira/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-core/jira/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-core/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-java/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-tests/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/terminal/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng_rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer-core/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xpath-lang/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xpath-lang/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xpath-view/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xslt-rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/engine/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/engine/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/rt/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/IntelliLang-python/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/ide/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/pluginSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/pluginTestSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/pydevSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/python-rest/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/python-rest/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/rest/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/rest/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/actions/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/applicationConfigurable/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/comparingReferences/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/comparingReferences/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/conditionalOperatorConvertor/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/conditionalOperatorConvertor/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/textEditor/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/toolWindow/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/vfs/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/spellchecker/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/spellchecker/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/launcher-generator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/binary" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/cup" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/interpreter" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/simple" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/updater/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/updater/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/dom-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/dom-openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/dom-tests/tests" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/relaxng/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/relaxng/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/tests/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-analysis-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-analysis-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-psi-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-structure-view-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-structure-view-impl/src" />
<root url="jar://$PROJECT_DIR$/dependencies/cli-parser-1.1.1-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/lib" recursive="false" />
</library>

View File

@@ -2,323 +2,16 @@
<library name="intellij-core">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</ANNOTATIONS>
<CLASSES>
<root url="file://$PROJECT_DIR$/ideaSDK/core" />
<root url="jar://$PROJECT_DIR$/dependencies/cli-parser-1.1.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/cli-parser-1.1.1-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/guava-17.0-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/asm5-src.zip!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/gradle-tooling-extension-impl/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/groovy-psi/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/jetgroovy/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/jps-standalone-builder/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/lang-impl/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/spellchecker/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/testFramework-java/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/testFramework/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/testFramework/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/util/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/RegExpSupport/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/RegExpSupport/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/RegExpSupport/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/build/cucumber-test-runner/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/build/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/images/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/forms-compiler/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/forms-compiler/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/instrumentation-util/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/javac2/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/debugger/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/debugger/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/execution/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/execution/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/idea-ui/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-analysis-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-analysis-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-indexing-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-indexing-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-psi-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-runtime/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-structure-view/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-tests/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/jsp-base-openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/jsp-openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/jsp-spi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/manifest/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/manifest/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/remote-servers/api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/remote-servers/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/structuralsearch-java/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/testFramework/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/typeMigration/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/typeMigration/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/antLayout/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-builders/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-builders/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-launcher/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/plugin-system/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/standalone-builder/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/analysis-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/analysis-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/annotations/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/boot/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/bootstrap/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/core-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/core-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/duplicates-analysis/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/editor-ui-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/editor-ui-ex/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/extensions/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/extensions/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/external-system-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/external-system-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/external-system-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/forms_rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/funcTests/project1/module1/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/indexing-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/indexing-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-api/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-impl/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lvcs-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lvcs-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-main/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-tests/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/projectModel-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/projectModel-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/remote-servers/agent-rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/remote-servers/api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/remote-servers/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/backend/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/debugger-ui/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/debugger-ui/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-model-generator/generated" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-model-generator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-reader-runtime/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-reader/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/schema-reader-generator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/smRunner/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/smRunner/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structuralsearch/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structuralsearch/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structure-view-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structure-view-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testFramework/bootstrap/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testFramework/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testFramework/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testRunner/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/usageView/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util-rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/graph-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/graph/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/graph/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/xdebugger-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/xdebugger-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/xdebugger-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ByteCodeViewer/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/testsrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/IntelliLang-tests/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/intellilang-jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/java-support" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/xml-support" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntentionPowerPak/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntentionPowerPak/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntentionPowerPak/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ShortcutPromoter/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/tests/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/commander/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/copyright/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/coverage-common/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/coverage/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cucumber-jvm-formatter/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/cvs-core/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/cvs-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/javacvs-src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/smartcvs-src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/trilead-ssh2-build213/examples" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/trilead-ssh2-build213/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/devkit/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/devkit/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/devkit/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/generate-tostring/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/generate-tostring/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/remote-servers-git/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/test-stepdefs" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/tests" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/github/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/github/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/jps-plugin/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/runtime/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-impl/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/groovy-psi/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/groovy-psi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/hotswap/agentSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/rt-constants/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/structuralsearch-groovy/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/structuralsearch-groovy/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/hg4idea/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/hg4idea/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-i18n/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-i18n/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/FxBuilderEmbedder/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/common-javaFX-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/javaFX-CE/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/javaFX-jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/junit/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/junit_rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m2/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m3/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m31/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven-server-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven2-server-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven2-server-impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven3-server-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven3-server-impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/src/main/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/src/test/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-api/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/svn4idea/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/svn4idea/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/svn4idea/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-core/jira/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-core/jira/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-core/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-java/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-tests/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/terminal/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng_rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer-core/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xpath-lang/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xpath-lang/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xpath-view/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xslt-rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/engine/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/engine/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/rt/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/IntelliLang-python/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/ide/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/pluginSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/pluginTestSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/pydevSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/python-rest/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/python-rest/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/rest/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/rest/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/actions/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/applicationConfigurable/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/comparingReferences/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/comparingReferences/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/conditionalOperatorConvertor/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/conditionalOperatorConvertor/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/textEditor/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/toolWindow/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/vfs/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/spellchecker/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/spellchecker/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/launcher-generator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/binary" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/cup" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/interpreter" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/simple" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/updater/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/updater/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/dom-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/dom-openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/dom-tests/tests" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/relaxng/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/relaxng/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/tests/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-analysis-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-analysis-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-psi-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-structure-view-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-structure-view-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/core" recursive="false" />
</library>

View File

@@ -2,6 +2,7 @@
<library name="intellij-core-analysis">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/ideaSDK/core-analysis/intellij-core-analysis.jar!/" />
@@ -9,315 +10,8 @@
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/asm5-src.zip!/" />
<root url="jar://$PROJECT_DIR$/dependencies/cli-parser-1.1.1-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/guava-17.0-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/gradle-tooling-extension-impl/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/groovy-psi/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/jetgroovy/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/jps-standalone-builder/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/lang-impl/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/spellchecker/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/testFramework-java/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/testFramework/java-production" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/testFramework/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/.jps-build-data/groovyStubs/util/java-test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/RegExpSupport/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/RegExpSupport/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/RegExpSupport/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/build/cucumber-test-runner/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/build/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/images/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/forms-compiler/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/forms-compiler/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/instrumentation-util/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/javac2/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/compiler/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/debugger/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/debugger/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/execution/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/execution/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/idea-ui/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-analysis-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-analysis-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-indexing-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-indexing-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-psi-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-runtime/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-structure-view/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/java-tests/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/jsp-base-openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/jsp-openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/jsp-spi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/manifest/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/manifest/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/remote-servers/api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/remote-servers/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/structuralsearch-java/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/testFramework/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/typeMigration/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/java/typeMigration/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/antLayout/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-builders/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-builders/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-launcher/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/plugin-system/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/standalone-builder/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/analysis-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/analysis-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/annotations/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/boot/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/bootstrap/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/core-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/core-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/duplicates-analysis/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/editor-ui-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/editor-ui-ex/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/extensions/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/extensions/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/external-system-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/external-system-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/external-system-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/forms_rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/funcTests/project1/module1/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/indexing-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/indexing-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-api/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lang-impl/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lvcs-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/lvcs-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-main/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/platform-tests/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/projectModel-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/projectModel-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/remote-servers/agent-rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/remote-servers/api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/remote-servers/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/backend/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/debugger-ui/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/debugger-ui/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-model-generator/generated" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-model-generator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-reader-runtime/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/protocol-reader/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/script-debugger/protocol/schema-reader-generator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/smRunner/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/smRunner/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structuralsearch/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structuralsearch/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structure-view-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/structure-view-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testFramework/bootstrap/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testFramework/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testFramework/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/testRunner/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/usageView/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util-rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/graph-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/graph/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/graph/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/vcs-log/impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/xdebugger-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/xdebugger-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/xdebugger-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ByteCodeViewer/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/InspectionGadgets/testsrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/IntelliLang-tests/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/intellilang-jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/java-support" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntelliLang/xml-support" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntentionPowerPak/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntentionPowerPak/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IntentionPowerPak/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ShortcutPromoter/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ant/tests/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/commander/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/copyright/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/coverage-common/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/coverage/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cucumber-jvm-formatter/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/cvs-core/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/cvs-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/javacvs-src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/smartcvs-src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/trilead-ssh2-build213/examples" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/cvs/trilead-ssh2-build213/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/devkit/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/devkit/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/devkit/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/eclipse/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/generate-tostring/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/generate-tostring/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/remote-servers-git/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/test-stepdefs" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/git4idea/tests" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/github/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/github/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/jps-plugin/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/runtime/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/google-app-engine/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/gradle/tooling-extension-impl/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/groovy-psi/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/groovy-psi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/hotswap/agentSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/rt-constants/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/structuralsearch-groovy/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/structuralsearch-groovy/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/groovy/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/hg4idea/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/hg4idea/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-i18n/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-i18n/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/FxBuilderEmbedder/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/common-javaFX-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/javaFX-CE/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/javaFX-jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/javaFX/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/junit/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/junit_rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m2/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m3/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m31/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven-server-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven2-server-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven2-server-impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven3-server-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven3-server-impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/src/main/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/src/test/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-api/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/svn4idea/resources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/svn4idea/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/svn4idea/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-core/jira/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-core/jira/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-core/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-java/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/tasks/tasks-tests/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/terminal/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng/testSources" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng_rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer-core/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/ui-designer/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xpath-lang/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xpath-lang/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xpath-view/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xpath/xslt-rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/engine/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/engine/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/rt/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/xslt-debugger/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/IntelliLang-python/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/ide/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/pluginSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/pluginTestSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/pydevSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/python-rest/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/python-rest/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/rest/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/rest/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/actions/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/applicationConfigurable/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/comparingReferences/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/comparingReferences/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/conditionalOperatorConvertor/source" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/conditionalOperatorConvertor/testSource" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/textEditor/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/toolWindow/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/samples/vfs/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/spellchecker/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/spellchecker/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/launcher-generator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/binary" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/cup" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/interpreter" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/examples/simple" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/tools/lexer/jflex-1.4/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/updater/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/updater/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/dom-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/dom-openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/dom-tests/tests" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/openapi/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/relaxng/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/relaxng/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/tests/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-analysis-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-analysis-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-psi-impl/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-structure-view-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/xml/xml-structure-view-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
</library>
</component>

11
.idea/libraries/intellilang_plugin.xml generated Normal file
View File

@@ -0,0 +1,11 @@
<component name="libraryTable">
<library name="intellilang-plugin">
<CLASSES>
<root url="jar://$PROJECT_DIR$/ideaSDK/plugins/IntelliLang/lib/IntelliLang.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
</library>
</component>

11
.idea/libraries/jansi.xml generated Normal file
View File

@@ -0,0 +1,11 @@
<component name="libraryTable">
<library name="jansi">
<CLASSES>
<root url="jar://$PROJECT_DIR$/dependencies/jansi.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/jansi-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -8,8 +8,7 @@
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-i18n/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-i18n/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -8,17 +8,8 @@
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/antLayout/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-builders/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-builders/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/standalone-builder/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/util/src" />
<root url="jar://$PROJECT_DIR$/dependencies/protobuf-java-2.5.0-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/jps" recursive="false" />
</library>

View File

@@ -8,9 +8,7 @@
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -8,9 +8,7 @@
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/jps-builders/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-impl/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/jps/model-serialization/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/jps/test" recursive="false" />
</library>

View File

@@ -1,14 +0,0 @@
<component name="libraryTable">
<library name="js-test-libs">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/js/js.tests/testLib/rhino-1.7R4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/js/js.tests/testLib/src/rhino-1.7R4-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -1,16 +0,0 @@
<component name="libraryTable">
<library name="junit-4.11">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/ideaSDK/lib/hamcrest-core-1.3.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/lib/junit-4.11.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/hamcrest-core-1.3-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/junit-4.11-sources.jar!/" />
</SOURCES>
</library>
</component>

16
.idea/libraries/junit_4_12.xml generated Normal file
View File

@@ -0,0 +1,16 @@
<component name="libraryTable">
<library name="junit-4.12">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/ideaSDK/lib/hamcrest-core-1.3.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/lib/junit-4.12.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/hamcrest-core-1.3-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/junit-4.12-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -8,7 +8,7 @@
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/junit/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -2,10 +2,11 @@
<library name="kotlin-runtime">
<CLASSES>
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-runtime.jar!/" />
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-reflect.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-runtime-sources.jar!/" />
<root url="file://$PROJECT_DIR$/libraries/stdlib/src" />
</SOURCES>
</library>
</component>

9
.idea/libraries/markdown.xml generated Normal file
View File

@@ -0,0 +1,9 @@
<component name="libraryTable">
<library name="markdown">
<CLASSES>
<root url="jar://$PROJECT_DIR$/dependencies/markdown.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>

View File

@@ -8,17 +8,7 @@
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/src/main/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/src/test/java" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/jps-plugin/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven-server-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven2-server-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven2-server-impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven3-server-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/maven3-server-impl/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m2/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/maven/artifact-resolver-m3/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/plugins/maven/lib" recursive="false" />
</library>

View File

@@ -8,11 +8,7 @@
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-api/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/properties-psi-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/properties/testSrc" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -9,7 +9,7 @@
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/testng/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.jar!/" />
</SOURCES>
</library>
</component>

14
.idea/misc.xml generated
View File

@@ -7,6 +7,9 @@
</component>
<component name="EntryPointsManager">
<entry_points version="2.0" />
<list size="1">
<item index="0" class="java.lang.String" itemvalue="javax.inject.Inject" />
</list>
</component>
<component name="FacetAutodetectingManager">
<autodetection-disabled>
@@ -42,11 +45,6 @@
<option value="$PROJECT_DIR$/confluence/pom.xml" />
</list>
</option>
<option name="ignoredFiles">
<set>
<option value="$PROJECT_DIR$/confluence/pom.xml" />
</set>
</option>
</component>
<component name="ProjectResources">
<default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype>
@@ -54,11 +52,13 @@
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" assert-keyword="true" jdk-15="true" project-jdk-name="1.6" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
<component name="SuppressABINotification">
<option name="isSuppressed" value="true" />
</component>
<component name="WebServicesPlugin" addRequiredLibraries="true" />
<component name="com.sixrr.metrics.MetricsReloaded">
<option name="selectedProfile" value="" />
<option name="autoscroll" value="false" />
<option name="showOnlyWarnings" value="false" />
</component>
</project>
</project>

37
.idea/modules.xml generated
View File

@@ -8,47 +8,60 @@
<module fileurl="file://$PROJECT_DIR$/plugins/android-jps-plugin/android-jps-plugin.iml" filepath="$PROJECT_DIR$/plugins/android-jps-plugin/android-jps-plugin.iml" group="plugins" />
<module fileurl="file://$PROJECT_DIR$/android-studio/android-studio.iml" filepath="$PROJECT_DIR$/android-studio/android-studio.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/compiler/android-tests/android-tests.iml" filepath="$PROJECT_DIR$/compiler/android-tests/android-tests.iml" group="compiler" />
<module fileurl="file://$PROJECT_DIR$/plugins/annotation-collector/annotation-collector.iml" filepath="$PROJECT_DIR$/plugins/annotation-collector/annotation-collector.iml" group="plugins" />
<module fileurl="file://$PROJECT_DIR$/ant/ant.iml" filepath="$PROJECT_DIR$/ant/ant.iml" />
<module fileurl="file://$PROJECT_DIR$/compiler/backend/backend.iml" filepath="$PROJECT_DIR$/compiler/backend/backend.iml" group="compiler/java" />
<module fileurl="file://$PROJECT_DIR$/compiler/backend-common/backend-common.iml" filepath="$PROJECT_DIR$/compiler/backend-common/backend-common.iml" group="compiler" />
<module fileurl="file://$PROJECT_DIR$/jps-plugin/bare-plugin/bare-plugin.iml" filepath="$PROJECT_DIR$/jps-plugin/bare-plugin/bare-plugin.iml" group="ide/jps" />
<module fileurl="file://$PROJECT_DIR$/build-tools/build-tools.iml" filepath="$PROJECT_DIR$/build-tools/build-tools.iml" />
<module fileurl="file://$PROJECT_DIR$/core/builtins/builtins.iml" filepath="$PROJECT_DIR$/core/builtins/builtins.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/compiler/builtins-serializer/builtins-serializer.iml" filepath="$PROJECT_DIR$/compiler/builtins-serializer/builtins-serializer.iml" group="compiler/cli" />
<module fileurl="file://$PROJECT_DIR$/compiler/cli/cli.iml" filepath="$PROJECT_DIR$/compiler/cli/cli.iml" group="compiler/cli" />
<module fileurl="file://$PROJECT_DIR$/compiler/cli/cli-common/cli-common.iml" filepath="$PROJECT_DIR$/compiler/cli/cli-common/cli-common.iml" group="compiler/cli" />
<module fileurl="file://$PROJECT_DIR$/compiler/integration-tests/compiler-integration-tests.iml" filepath="$PROJECT_DIR$/compiler/integration-tests/compiler-integration-tests.iml" group="compiler/cli" />
<module fileurl="file://$PROJECT_DIR$/compiler/cli/cli-runner/cli-runner.iml" filepath="$PROJECT_DIR$/compiler/cli/cli-runner/cli-runner.iml" group="compiler/cli" />
<module fileurl="file://$PROJECT_DIR$/compiler/tests/compiler-tests.iml" filepath="$PROJECT_DIR$/compiler/tests/compiler-tests.iml" group="compiler" />
<module fileurl="file://$PROJECT_DIR$/compiler/container/container.iml" filepath="$PROJECT_DIR$/compiler/container/container.iml" group="compiler" />
<module fileurl="file://$PROJECT_DIR$/core/descriptor.loader.java/descriptor.loader.java.iml" filepath="$PROJECT_DIR$/core/descriptor.loader.java/descriptor.loader.java.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/core/descriptors/descriptors.iml" filepath="$PROJECT_DIR$/core/descriptors/descriptors.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/core/descriptors.runtime/descriptors.runtime.iml" filepath="$PROJECT_DIR$/core/descriptors.runtime/descriptors.runtime.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/core/deserialization/deserialization.iml" filepath="$PROJECT_DIR$/core/deserialization/deserialization.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/eval4j/eval4j.iml" filepath="$PROJECT_DIR$/eval4j/eval4j.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/compiler/frontend/frontend.iml" filepath="$PROJECT_DIR$/compiler/frontend/frontend.iml" group="compiler" />
<module fileurl="file://$PROJECT_DIR$/compiler/frontend.java/frontend.java.iml" filepath="$PROJECT_DIR$/compiler/frontend.java/frontend.java.iml" group="compiler/java" />
<module fileurl="file://$PROJECT_DIR$/generators/generators.iml" filepath="$PROJECT_DIR$/generators/generators.iml" group="infrastructure" />
<module fileurl="file://$PROJECT_DIR$/grammar/grammar.iml" filepath="$PROJECT_DIR$/grammar/grammar.iml" group="compiler" />
<module fileurl="file://$PROJECT_DIR$/ide-compiler-runner/ide-compiler-runner.iml" filepath="$PROJECT_DIR$/ide-compiler-runner/ide-compiler-runner.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/ide-lazy-resolve/ide-lazy-resolve.iml" filepath="$PROJECT_DIR$/idea/ide-lazy-resolve/ide-lazy-resolve.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/ide-common/ide-common.iml" filepath="$PROJECT_DIR$/idea/ide-common/ide-common.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea.iml" filepath="$PROJECT_DIR$/idea/idea.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-analysis/idea-analysis.iml" filepath="$PROJECT_DIR$/idea/idea-analysis/idea-analysis.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea_runner/idea_runner.iml" filepath="$PROJECT_DIR$/idea_runner/idea_runner.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/injector-generator/injector-generator.iml" filepath="$PROJECT_DIR$/injector-generator/injector-generator.iml" group="infrastructure" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-completion/idea-completion.iml" filepath="$PROJECT_DIR$/idea/idea-completion/idea-completion.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-core/idea-core.iml" filepath="$PROJECT_DIR$/idea/idea-core/idea-core.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-jps-common/idea-jps-common.iml" filepath="$PROJECT_DIR$/idea/idea-jps-common/idea-jps-common.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-js/idea-js.iml" filepath="$PROJECT_DIR$/idea/idea-js/idea-js.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea-runner/idea-runner.iml" filepath="$PROJECT_DIR$/idea-runner/idea-runner.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/idea/idea-test-framework/idea-test-framework.iml" filepath="$PROJECT_DIR$/idea/idea-test-framework/idea-test-framework.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/compiler/preloader/instrumentation/instrumentation.iml" filepath="$PROJECT_DIR$/compiler/preloader/instrumentation/instrumentation.iml" group="compiler/cli" />
<module fileurl="file://$PROJECT_DIR$/j2k/j2k.iml" filepath="$PROJECT_DIR$/j2k/j2k.iml" group="j2k" />
<module fileurl="file://$PROJECT_DIR$/compiler/jet.as.java.psi/jet.as.java.psi.iml" filepath="$PROJECT_DIR$/compiler/jet.as.java.psi/jet.as.java.psi.iml" group="compiler/java" />
<module fileurl="file://$PROJECT_DIR$/compiler/java8-tests/java8-tests.iml" filepath="$PROJECT_DIR$/compiler/java8-tests/java8-tests.iml" group="compiler" />
<module fileurl="file://$PROJECT_DIR$/jps-plugin/jps-plugin.iml" filepath="$PROJECT_DIR$/jps-plugin/jps-plugin.iml" group="ide/jps" />
<module fileurl="file://$PROJECT_DIR$/js/js.dart-ast/js.dart-ast.iml" filepath="$PROJECT_DIR$/js/js.dart-ast/js.dart-ast.iml" group="compiler/js" />
<module fileurl="file://$PROJECT_DIR$/js/js.frontend/js.frontend.iml" filepath="$PROJECT_DIR$/js/js.frontend/js.frontend.iml" group="compiler/js" />
<module fileurl="file://$PROJECT_DIR$/js/js.inliner/js.inliner.iml" filepath="$PROJECT_DIR$/js/js.inliner/js.inliner.iml" group="compiler/js" />
<module fileurl="file://$PROJECT_DIR$/js/js.parser/js.parser.iml" filepath="$PROJECT_DIR$/js/js.parser/js.parser.iml" group="compiler/js" />
<module fileurl="file://$PROJECT_DIR$/js/js.serializer/js.serializer.iml" filepath="$PROJECT_DIR$/js/js.serializer/js.serializer.iml" group="compiler/js" />
<module fileurl="file://$PROJECT_DIR$/js/js.tests/js.tests.iml" filepath="$PROJECT_DIR$/js/js.tests/js.tests.iml" group="compiler/js" />
<module fileurl="file://$PROJECT_DIR$/js/js.translator/js.translator.iml" filepath="$PROJECT_DIR$/js/js.translator/js.translator.iml" group="compiler/js" />
<module fileurl="file://$PROJECT_DIR$/jps-plugin/kannotator-jps-plugin-test/kannotator-jps-plugin-test.iml" filepath="$PROJECT_DIR$/jps-plugin/kannotator-jps-plugin-test/kannotator-jps-plugin-test.iml" group="ide/jps" />
<module fileurl="file://$PROJECT_DIR$/idea/kotlin-android-plugin/kotlin-android-plugin.iml" filepath="$PROJECT_DIR$/idea/kotlin-android-plugin/kotlin-android-plugin.iml" group="ide" />
<module fileurl="file://$PROJECT_DIR$/compiler/rmi/kotlinr/kotlinr.iml" filepath="$PROJECT_DIR$/compiler/rmi/kotlinr/kotlinr.iml" group="rmi" />
<module fileurl="file://$PROJECT_DIR$/compiler/light-classes/light-classes.iml" filepath="$PROJECT_DIR$/compiler/light-classes/light-classes.iml" group="compiler/java" />
<module fileurl="file://$PROJECT_DIR$/compiler/plugin-api/plugin-api.iml" filepath="$PROJECT_DIR$/compiler/plugin-api/plugin-api.iml" group="compiler" />
<module fileurl="file://$PROJECT_DIR$/compiler/preloader/preloader.iml" filepath="$PROJECT_DIR$/compiler/preloader/preloader.iml" group="compiler/cli" />
<module fileurl="file://$PROJECT_DIR$/core/reflection/reflection.iml" filepath="$PROJECT_DIR$/core/reflection/reflection.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/core/reflection.jvm/reflection.jvm.iml" filepath="$PROJECT_DIR$/core/reflection.jvm/reflection.jvm.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/compiler/rmi/rmi-interface/rmi-interface.iml" filepath="$PROJECT_DIR$/compiler/rmi/rmi-interface/rmi-interface.iml" group="rmi" />
<module fileurl="file://$PROJECT_DIR$/compiler/rmi/rmi-server/rmi-server.iml" filepath="$PROJECT_DIR$/compiler/rmi/rmi-server/rmi-server.iml" group="rmi" />
<module fileurl="file://$PROJECT_DIR$/core/runtime.jvm/runtime.jvm.iml" filepath="$PROJECT_DIR$/core/runtime.jvm/runtime.jvm.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/core/serialization/serialization.iml" filepath="$PROJECT_DIR$/core/serialization/serialization.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/core/serialization.java/serialization.java.iml" filepath="$PROJECT_DIR$/core/serialization.java/serialization.java.iml" group="core" />
<module fileurl="file://$PROJECT_DIR$/compiler/serialization/serialization.iml" filepath="$PROJECT_DIR$/compiler/serialization/serialization.iml" group="compiler" />
<module fileurl="file://$PROJECT_DIR$/compiler/util/util.iml" filepath="$PROJECT_DIR$/compiler/util/util.iml" />
<module fileurl="file://$PROJECT_DIR$/core/util.runtime/util.runtime.iml" filepath="$PROJECT_DIR$/core/util.runtime/util.runtime.iml" group="core" />
</modules>
</component>
</project>
</project>

View File

@@ -2,18 +2,18 @@
<configuration default="false" name="All Compiler Tests" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.jet.*" />
<option name="PATTERN" value="org.jetbrains.kotlin.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="compiler-tests" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.jet" />
<option name="PACKAGE_NAME" value="org.jetbrains.kotlin" />
<option name="MAIN_CLASS_NAME" value="" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="package" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx512m -XX:MaxPermSize=320m" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx900m -XX:MaxPermSize=320m -XX:+UseCodeCacheFlushing -XX:ReservedCodeCacheSize=64m" />
<option name="PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ENV_VARIABLES" />

View File

@@ -2,18 +2,18 @@
<configuration default="false" name="All IDEA Plugin Tests" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.jet.*" />
<option name="PATTERN" value="org.jetbrains.kotlin.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="idea" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.jet" />
<option name="PACKAGE_NAME" value="org.jetbrains.kotlin" />
<option name="MAIN_CLASS_NAME" value="" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="package" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx512m -XX:MaxPermSize=320m" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx900m -XX:MaxPermSize=320m -XX:+UseCodeCacheFlushing -XX:ReservedCodeCacheSize=64m" />
<option name="PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ENV_VARIABLES" />

View File

@@ -2,18 +2,18 @@
<configuration default="false" name="All Jvm Backend Tests" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.jet.*" />
<option name="PATTERN" value="org.jetbrains.kotlin.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="compiler-tests" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.jet.codegen" />
<option name="PACKAGE_NAME" value="org.jetbrains.kotlin.codegen" />
<option name="MAIN_CLASS_NAME" value="" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="package" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx512m -XX:MaxPermSize=320m" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx900m -XX:MaxPermSize=320m -XX:+UseCodeCacheFlushing -XX:ReservedCodeCacheSize=64m" />
<option name="PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ENV_VARIABLES" />

View File

@@ -2,7 +2,7 @@
<configuration default="false" name="All Tests" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.jet.*" />
<option name="PATTERN" value="org.jetbrains.kotlin.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
@@ -13,7 +13,7 @@
<option name="MAIN_CLASS_NAME" value="" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="package" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx900m -XX:MaxPermSize=320m -XX:+UseCodeCacheFlushing" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx900m -XX:MaxPermSize=400m -XX:+UseCodeCacheFlushing -XX:ReservedCodeCacheSize=128m" />
<option name="PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ENV_VARIABLES" />
@@ -22,7 +22,6 @@
<value defaultName="moduleWithDependencies" />
</option>
<envs>
<env name="kotlin.tests.actually.compile" value="true" />
<env name="NO_FS_ROOTS_ACCESS_CHECK" value="true" />
</envs>
<patterns />

View File

@@ -2,7 +2,7 @@
<configuration default="false" name="Android Studio" type="Application" factoryName="Application">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" value="com.intellij.idea.Main" />
<option name="VM_PARAMETERS" value="-Didea.paths.selector=AndroidStudioPreview -Didea.platform.prefix=AndroidStudio -Xmx800m -XX:ReservedCodeCacheSize=64m -XX:MaxPermSize=450m -XX:+HeapDumpOnOutOfMemoryError -ea -Didea.is.internal=true -Didea.debug.mode=true -Didea.system.path=../system-idea -Didea.config.path=../config-idea -Dapple.laf.useScreenMenuBar=true -Dapple.awt.graphics.UseQuartz=true -Dsun.io.useCanonCaches=false -Dplugin.path=$PROJECT_DIR$/out/artifacts/Kotlin" />
<option name="VM_PARAMETERS" value="-Didea.paths.selector=AndroidStudioPreview -Didea.platform.prefix=AndroidStudio -Xmx800m -XX:ReservedCodeCacheSize=64m -XX:MaxPermSize=450m -XX:+HeapDumpOnOutOfMemoryError -ea -Didea.is.internal=true -Didea.debug.mode=true -Didea.system.path=../system-idea -Didea.config.path=../config-idea -Dapple.laf.useScreenMenuBar=true -Dapple.awt.graphics.UseQuartz=true -Dsun.io.useCanonCaches=false -Dplugin.path=$PROJECT_DIR$/out/artifacts/Kotlin,$PROJECT_DIR$/out/artifacts/KotlinAndroidExtensions" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/android-studio/sdk/bin" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
@@ -24,6 +24,9 @@
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinPlugin" />
</option>
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinAndroidExtensions" />
</option>
</method>
</configuration>
</component>

View File

@@ -4,8 +4,8 @@
<module name="android-tests" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.jet.compiler.android" />
<option name="MAIN_CLASS_NAME" value="org.jetbrains.jet.compiler.android.AndroidRunner" />
<option name="PACKAGE_NAME" value="org.jetbrains.kotlin.android.tests" />
<option name="MAIN_CLASS_NAME" value="org.jetbrains.kotlin.android.tests.AndroidRunner" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="class" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx512m -XX:MaxPermSize=320m -XX:+UseCodeCacheFlushing" />

View File

@@ -1,17 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Generate Injectors" type="JetRunConfigurationType" factoryName="Kotlin">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" value="org.jetbrains.jet.generators.injectors.InjectorsPackage" />
<option name="VM_PARAMETERS" value="" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PASS_PARENT_ENVS" value="true" />
<module name="generators" />
<envs />
<RunnerSettings RunnerId="Run" />
<ConfigurationWrapper RunnerId="Run" />
<method />
</configuration>
</component>

View File

@@ -2,11 +2,11 @@
<configuration default="false" name="Generate Tests" type="Application" factoryName="Application">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.jet.generators.tests.*" />
<option name="PATTERN" value="org.jetbrains.kotlin.generators.tests.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<option name="MAIN_CLASS_NAME" value="org.jetbrains.jet.generators.tests.TestsPackage" />
<option name="MAIN_CLASS_NAME" value="org.jetbrains.kotlin.generators.tests.TestsPackage" />
<option name="VM_PARAMETERS" value="-ea" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />

View File

@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="IDEA" type="Application" factoryName="Application">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" value="com.intellij.idea.Main" />
<option name="VM_PARAMETERS" value="-Xmx800m -XX:ReservedCodeCacheSize=64m -XX:MaxPermSize=450m -XX:+HeapDumpOnOutOfMemoryError -ea -Didea.is.internal=true -Didea.debug.mode=true -Didea.system.path=../system-idea -Didea.config.path=../config-idea -Dapple.laf.useScreenMenuBar=true -Dapple.awt.graphics.UseQuartz=true -Dsun.io.useCanonCaches=false -Dplugin.path=$PROJECT_DIR$/out/artifacts/Kotlin:$PROJECT_DIR$/out/artifacts/KotlinAndroidExtensionsPlugin -Dkotlin.internal.mode.enabled=true" />
<option name="VM_PARAMETERS" value="-Xmx800m -XX:ReservedCodeCacheSize=64m -XX:MaxPermSize=450m -XX:+HeapDumpOnOutOfMemoryError -ea -Didea.is.internal=true -Didea.debug.mode=true -Didea.system.path=../system-idea -Didea.config.path=../config-idea -Dapple.laf.useScreenMenuBar=true -Dapple.awt.graphics.UseQuartz=true -Dsun.io.useCanonCaches=false -Dplugin.path=$PROJECT_DIR$/out/artifacts/Kotlin -Dkotlin.internal.mode.enabled=true -Didea.additional.classpath=../idea-kotlin-runtime/kotlin-runtime.jar,../idea-kotlin-runtime/kotlin-reflect.jar" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/ideaSDK/bin" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
@@ -10,7 +11,7 @@
<option name="ENABLE_SWING_INSPECTOR" value="false" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<module name="idea_runner" />
<module name="idea-runner" />
<envs />
<RunnerSettings RunnerId="Debug">
<option name="DEBUG_PORT" value="" />
@@ -43,7 +44,10 @@
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinPlugin" />
</option>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea_runner/runner.xml" target="force_enable_kotlin_plugin" />
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinAndroidExtensions" />
</option>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea-runner/runner.xml" target="force-enable-kotlin-plugin" />
</method>
</configuration>
</component>

View File

@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="IDEA (No ProcessCanceledException)" type="Application" factoryName="Application">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" value="com.intellij.idea.Main" />
<option name="VM_PARAMETERS" value="-Xmx800m -XX:ReservedCodeCacheSize=64m -XX:MaxPermSize=250m -XX:+HeapDumpOnOutOfMemoryError -ea -Didea.is.internal=true -Didea.debug.mode=true -Didea.system.path=../system-idea -Didea.config.path=../config-idea -Dapple.laf.useScreenMenuBar=true -Dapple.awt.graphics.UseQuartz=true -Dsun.io.useCanonCaches=false -Dplugin.path=$PROJECT_DIR$/out/artifacts/Kotlin:$PROJECT_DIR$/out/artifacts/KotlinAndroidExtensionsPlugin -Didea.ProcessCanceledException=disabled -Dkotlin.internal.mode.enabled=true" />
<option name="VM_PARAMETERS" value="-Xmx800m -XX:ReservedCodeCacheSize=64m -XX:MaxPermSize=250m -XX:+HeapDumpOnOutOfMemoryError -ea -Didea.is.internal=true -Didea.debug.mode=true -Didea.system.path=../system-idea -Didea.config.path=../config-idea -Dapple.laf.useScreenMenuBar=true -Dapple.awt.graphics.UseQuartz=true -Dsun.io.useCanonCaches=false -Dplugin.path=$PROJECT_DIR$/out/artifacts/Kotlin -Didea.ProcessCanceledException=disabled -Dkotlin.internal.mode.enabled=true -Didea.additional.classpath=../idea-kotlin-runtime/kotlin-runtime.jar,../idea-kotlin-runtime/kotlin-reflect.jar" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/ideaSDK/bin" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
@@ -10,7 +11,7 @@
<option name="ENABLE_SWING_INSPECTOR" value="false" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<module name="idea_runner" />
<module name="idea-runner" />
<envs />
<RunnerSettings RunnerId="Debug">
<option name="DEBUG_PORT" value="" />
@@ -24,7 +25,10 @@
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinPlugin" />
</option>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea_runner/runner.xml" target="force_enable_kotlin_plugin" />
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinAndroidExtensions" />
</option>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea-runner/runner.xml" target="force-enable-kotlin-plugin" />
</method>
</configuration>
</component>

26
.idea/runConfigurations/IDEA__win_.xml generated Normal file
View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="IDEA (win)" type="Application" factoryName="Application">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" value="com.intellij.idea.Main" />
<option name="VM_PARAMETERS" value="-Xmx800m -XX:ReservedCodeCacheSize=64m -XX:MaxPermSize=450m -XX:+HeapDumpOnOutOfMemoryError -ea -Didea.is.internal=true -Didea.debug.mode=true -Didea.system.path=../system-idea -Didea.config.path=../config-idea -Dapple.laf.useScreenMenuBar=true -Dapple.awt.graphics.UseQuartz=true -Dsun.io.useCanonCaches=false -Dplugin.path=$PROJECT_DIR$/out/artifacts/Kotlin -Dkotlin.internal.mode.enabled=true -Didea.additional.classpath=${JAVA_HOME}\lib\tools.jar,../idea-kotlin-runtime/kotlin-runtime.jar,../idea-kotlin-runtime/kotlin-reflect.jar" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/ideaSDK/bin" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="true" />
<option name="ALTERNATIVE_JRE_PATH" value="1.7" />
<option name="ENABLE_SWING_INSPECTOR" value="false" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<module name="idea-runner" />
<envs />
<method>
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinPlugin" />
</option>
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinAndroidExtensions" />
</option>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea-runner/runner.xml" target="force-enable-kotlin-plugin" />
</method>
</configuration>
</component>

View File

@@ -1,35 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Incremental Compilation Tests" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<module name="jps-plugin" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.jet.jps.build" />
<option name="MAIN_CLASS_NAME" value="org.jetbrains.jet.jps.build.IncrementalJpsTestGenerated" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="class" />
<option name="VM_PARAMETERS" value="-ea -Xmx512m -XX:MaxPermSize=320m -Dkotlin.incremental.compilation=true" />
<option name="PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="moduleWithDependencies" />
</option>
<envs>
<env name="kotlin.tests.actually.compile" value="false" />
</envs>
<patterns />
<RunnerSettings RunnerId="Debug">
<option name="DEBUG_PORT" value="" />
<option name="TRANSPORT" value="0" />
<option name="LOCAL" value="true" />
</RunnerSettings>
<RunnerSettings RunnerId="Run" />
<ConfigurationWrapper RunnerId="Debug" />
<ConfigurationWrapper RunnerId="Run" />
<method>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/build.xml" target="dist_quick_compiler_only" />
</method>
</configuration>
</component>

View File

@@ -1,31 +0,0 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Integration Tests" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.jet.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="compiler-integration-tests" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.kotlin" />
<option name="MAIN_CLASS_NAME" value="" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="package" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -Xmx350m -XX:MaxPermSize=320m" />
<option name="PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="moduleWithDependencies" />
</option>
<envs />
<patterns />
<RunnerSettings RunnerId="Profile " />
<RunnerSettings RunnerId="Run" />
<ConfigurationWrapper RunnerId="Run" />
<method />
</configuration>
</component>

View File

@@ -2,7 +2,7 @@
<configuration default="false" name="J2K Tests" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.jet.*" />
<option name="PATTERN" value="org.jetbrains.kotlin.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
@@ -23,8 +23,14 @@
</option>
<envs />
<patterns />
<RunnerSettings RunnerId="Debug">
<option name="DEBUG_PORT" value="" />
<option name="TRANSPORT" value="0" />
<option name="LOCAL" value="true" />
</RunnerSettings>
<RunnerSettings RunnerId="Profile " />
<RunnerSettings RunnerId="Run" />
<ConfigurationWrapper RunnerId="Debug" />
<ConfigurationWrapper RunnerId="Run" />
<method />
</configuration>

28
.idea/runConfigurations/Java_8_Tests.xml generated Normal file
View File

@@ -0,0 +1,28 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Java 8 Tests" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.kotlin.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="java8-tests" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="true" />
<option name="ALTERNATIVE_JRE_PATH" value="1.8" />
<option name="PACKAGE_NAME" value="org.jetbrains.kotlin" />
<option name="MAIN_CLASS_NAME" value="" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="package" />
<option name="VM_PARAMETERS" value="-ea -XX:+HeapDumpOnOutOfMemoryError -XX:+UseCodeCacheFlushing -XX:ReservedCodeCacheSize=64m" />
<option name="PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<envs />
<patterns />
<method />
</configuration>
</component>

View File

@@ -4,7 +4,7 @@
<module name="js.tests" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.k2js.test" />
<option name="PACKAGE_NAME" value="org.jetbrains.kotlin.js.test" />
<option name="MAIN_CLASS_NAME" value="" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="package" />

View File

@@ -4,7 +4,7 @@
<module name="kannotator-jps-plugin-test" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.jet.jps.build.kannotator" />
<option name="PACKAGE_NAME" value="org.jetbrains.kotlin.jps.build.kannotator" />
<option name="MAIN_CLASS_NAME" value="" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="package" />

View File

@@ -2,14 +2,14 @@
<configuration default="false" name="Smart Completion Tests" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="org.jetbrains.jet.completion.handlers.*" />
<option name="PATTERN" value="org.jetbrains.kotlin.completion.handlers.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="idea" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="PACKAGE_NAME" value="org.jetbrains.jet.completion.handlers" />
<option name="PACKAGE_NAME" value="org.jetbrains.kotlin.completion.handlers" />
<option name="MAIN_CLASS_NAME" value="" />
<option name="METHOD_NAME" value="" />
<option name="TEST_OBJECT" value="pattern" />
@@ -21,13 +21,13 @@
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<envs>
<env name="kotlin.tests.actually.compile" value="false" />
</envs>
<envs />
<patterns>
<pattern testClass="org.jetbrains.jet.completion.JvmSmartCompletionTestGenerated" />
<pattern testClass="org.jetbrains.jet.completion.handlers.SmartCompletionHandlerTestGenerated" />
<pattern testClass="org.jetbrains.jet.completion.handlers.SmartCompletionMultifileHandlerTest" />
<pattern testClass="org.jetbrains.kotlin.idea.completion.test.JvmSmartCompletionTestGenerated" />
<pattern testClass="org.jetbrains.kotlin.idea.completion.test.handlers.SmartCompletionHandlerTestGenerated" />
<pattern testClass="org.jetbrains.kotlin.idea.completion.test.handlers.SmartCompletionMultifileHandlerTest" />
<pattern testClass="org.jetbrains.kotlin.idea.completion.test.weighers.SmartCompletionWeigherTestGenerated" />
<pattern testClass="org.jetbrains.kotlin.idea.completion.test.MultiFileSmartCompletionTestGenerated" />
</patterns>
<RunnerSettings RunnerId="Debug">
<option name="DEBUG_PORT" value="" />

View File

@@ -0,0 +1,31 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Update-Dist-Run" type="Application" factoryName="Application" singleton="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" value="com.intellij.idea.Main" />
<option name="VM_PARAMETERS" value="-Xmx800m -XX:ReservedCodeCacheSize=64m -XX:MaxPermSize=450m -XX:+HeapDumpOnOutOfMemoryError -ea -Didea.is.internal=true -Didea.debug.mode=true -Didea.system.path=../system-idea -Didea.config.path=../config-idea -Dapple.laf.useScreenMenuBar=true -Dapple.awt.graphics.UseQuartz=true -Dsun.io.useCanonCaches=false -Dplugin.path=$PROJECT_DIR$/out/artifacts/Kotlin -Dkotlin.internal.mode.enabled=true -Didea.additional.classpath=../idea-kotlin-runtime/kotlin-runtime.jar,../idea-kotlin-runtime/kotlin-reflect.jar" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/ideaSDK/bin" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="ENABLE_SWING_INSPECTOR" value="false" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<module name="idea-runner" />
<envs />
<method>
<option name="Make" enabled="false" />
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/build.xml" target="clean_idea_output" />
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/update_dependencies.xml" target="update" />
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/build.xml" target="dist" />
<option name="MakeProject" enabled="true" />
<option name="RunConfigurationTask" enabled="true" run_configuration_name="Generate Tests" run_configuration_type="Application" />
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinPlugin" />
</option>
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinAndroidExtensions" />
</option>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea_runner/runner.xml" target="force_enable_kotlin_plugin" />
</method>
</configuration>
</component>

4
.idea/vcs.xml generated
View File

@@ -7,6 +7,10 @@
<option name="issueRegexp" value="[A-Z]+\-\d+" />
<option name="linkRegexp" value="http://youtrack.jetbrains.com/issue/$0" />
</IssueNavigationLink>
<IssueNavigationLink>
<option name="issueRegexp" value="EA\-(\d+)" />
<option name="linkRegexp" value="http://ea.jetbrains.com/browser/ea_problems/$1" />
</IssueNavigationLink>
</list>
</option>
</component>

View File

@@ -22,14 +22,25 @@
<excludeFolder url="file://$MODULE_DIR$/libraries/kotlin-jdbc/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/kotlin-swing/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/kunit/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/stdlib/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/stdlib/validator/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/.idea" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kdoc-maven-plugin/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kdoc/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-compiler/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-gradle-plugin-core/local-repo" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-gradle-plugin-core/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-gradle-plugin-test/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-gradle-plugin/local-repo" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-gradle-plugin/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-js-library/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-js-tests-junit/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-js-tests/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-maven-plugin-test/local-repo" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-maven-plugin-test/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-maven-plugin/local-repo" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-maven-plugin/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-reflect/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/kotlin-stdlib-gen/target" />
<excludeFolder url="file://$MODULE_DIR$/libraries/tools/runtime/target" />
</content>
@@ -37,4 +48,3 @@
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

View File

@@ -1,25 +1,29 @@
[![TeamCity (simple build status)](https://img.shields.io/teamcity/http/teamcity.jetbrains.com/s/bt345.svg)](https://teamcity.jetbrains.com/viewType.html?buildTypeId=bt345&branch_Kotlin=%3Cdefault%3E&tab=buildTypeStatusDiv)
[![Maven Central](https://img.shields.io/maven-central/v/org.jetbrains.kotlin/kotlin-maven-plugin.svg)](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.jetbrains.kotlin%22)
[![GitHub license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](http://www.apache.org/licenses/LICENSE-2.0)
# Kotlin Programming Language
Welcome to [Kotlin](http://kotlinlang.org/)! Some handy links:
* [Getting Started Guide](http://confluence.jetbrains.net/display/Kotlin/Getting+Started)
* [Web Demo](http://kotlin-demo.jetbrains.com/)
* [Kotlin Site](http://jetbrains.github.com/kotlin/)
* [Kotlin Site](http://kotlinlang.org/)
* [Getting Started Guide](http://kotlinlang.org/docs/tutorials/getting-started.html)
* [Try Kotlin](http://try.kotlinlang.org/)
* [API](http://jetbrains.github.com/kotlin/versions/snapshot/apidocs/index.html)
* [Issue Tracker](http://youtrack.jetbrains.com/issues/KT)
* [Forum](http://devnet.jetbrains.net/community/kotlin?view=discussions)
* [Kotlin Blog](http://blog.jetbrains.com/kotlin/)
* [follow Kotlin on twitter](http://twitter.com/#!/project_kotlin)
* [TeamCity CI build](http://teamcity.jetbrains.com/project.html?projectId=project67&tab=projectOverview)
* [Follow Kotlin on Twitter](https://twitter.com/kotlin)
* [TeamCity CI build](https://teamcity.jetbrains.com/project.html?tab=projectOverview&projectId=Kotlin)
## Editing Kotlin
* [Kotlin IDEA Plugin](http://hadihariri.com/2012/02/17/the-kotlin-journey-part-i-getting-things-set-up/)
* [Kotlin IntelliJ IDEA Plugin](http://hadihariri.com/2012/02/17/the-kotlin-journey-part-i-getting-things-set-up/)
* [Kotlin TextMate Bundle](https://github.com/k33g/kotlin-textmate-bundle#readme)
## Building
To build this project, first time you try to build you need to run this (requires Apache Ant 1.8 or higher):
To build this project, first time you try to build you need to run this (requires Apache **Ant 1.8** or higher and **JDK 1.6**):
ant -f update_dependencies.xml
@@ -31,7 +35,7 @@ which will setup the dependencies on
Then, you need to run
ant -f build.xml
which will build the binaries of the compiler and put them into the 'dist' directory. You may need to increase the **heap size** for Ant using
[ANT_OPTS](http://www.liferay.com/community/wiki/-/wiki/Main/Ant+opts).
@@ -41,9 +45,9 @@ which will build the binaries of the compiler and put them into the 'dist' direc
from 'libraries' directory after building the compiler. Refer to `libraries/ReadMe.md` for details.
## Working with the project in IDEA
## Working with the project in IntelliJ IDEA
The [root kotlin project](https://github.com/JetBrains/kotlin) already has an IDEA project, you can just open it in IDEA.
The [root kotlin project](https://github.com/JetBrains/kotlin) already has an IntelliJ IDEA project, you can just open it in IntelliJ IDEA.
You may need to set the Project SDK (File -> Project Structure -> Project).
You may also need to add `tools.jar` to your SDK: File -> Project Structure -> SDKs -> <Your JDK> -> Classpath,
@@ -52,27 +56,27 @@ then choose the `tools.jar` in the JDK's `lib` directory.
If you are not dealing with Android, you may need to disable the Android Plugin in order to compile the project.
Since Kotlin project contains code written in Kotlin itself, you will also need a Kotlin plugin to build the project in IntelliJ IDEA.
To keep the plugin version in sync with the rest of the team and our [Continuous Integration server](http://teamcity.jetbrains.com/project.html?projectId=Kotlin&tab=projectOverview)
To keep the plugin version in sync with the rest of the team and our [Continuous Integration server](https://teamcity.jetbrains.com/project.html?projectId=Kotlin&tab=projectOverview)
you should install the according to the [instructions below](#plugin-for-contributors).
If you want to have an IDEA installation without the Kotlin plugin which is separate to your default IDEA installation which has the Kotlin
plugin [see this document](http://devnet.jetbrains.net/docs/DOC-181) which describes how to have mutliple IDEA installs using different configurations and plugin directories.
If you want to have an IntelliJ IDEA installation without the Kotlin plugin which is separate to your default IntelliJ IDEA installation which has the Kotlin
plugin [see this document](http://devnet.jetbrains.net/docs/DOC-181) which describes how to have mutliple IntelliJ IDEA installations using different configurations and plugin directories.
From this root project there are Run/Debug Configurations for running IDEA or the Compiler Tests for example; so if you want to try out the latest greatest IDEA plugin
From this root project there are Run/Debug Configurations for running IDEA or the Compiler Tests for example; so if you want to try out the latest and greatest IDEA plugin
* VCS -> Git -> Pull
* Run IDEA
* a child IDEA with the Kotlin plugin will then startup
* Run IntelliJ IDEA
* a child IntelliJ IDEA with the Kotlin plugin will then startup
* you can now open the [kotlin libraries project](https://github.com/JetBrains/kotlin/tree/master/libraries) to then work with the various kotlin libraries etc.
### <a name="pre-built-plugin"></a>Using a pre-built Kotlin IDEA plugin
### <a name="pre-built-plugin"></a>Using a pre-built Kotlin IntelliJ IDEA plugin
There are several options for getting Kotlin plugin. A stable version can be obtained as any other plugin for Intellij IDEA:
There are several options for getting Kotlin plugin. A stable version can be obtained as any other plugin for IntelliJ IDEA:
Preferences -> Plugins -> Browse Repositories -> Search with "Kotlin" string
Preferences -> Plugins -> Install JetBrains plugin... -> Search with "Kotlin" string
The most recent version of the plugin can be downloaded from the
[IDEA Plugin and Tests CI build](http://teamcity.jetbrains.com/project.html?projectId=project67&tab=projectOverview). When downloading is
[IDEA Plugin and Tests CI build](https://teamcity.jetbrains.com/project.html?projectId=project67&tab=projectOverview). When downloading is
finished you can install it with "Install plugin from disk...":
Preferences -> Plugins -> Install plugin from disk...
@@ -81,23 +85,23 @@ You can now open any Kotlin based projects.
<a name="plugin-for-contributors"></a>
**Note for contributors**: If you are planning to contribute to Kotlin project you probably want to have locally the same version of plugin that build server is using for building.
As this version is constantly moving, the best way to always be updated is to let IDEA notify you when it is time to renew you plugin.
As this version is constantly moving, the best way to always be updated is to let IntelliJ IDEA notify you when it is time to renew your plugin.
Open
Open
Preferences -> Plugins -> Browse Repositories -> Manage Repositories...
and add the following URL to your repositories:
http://teamcity.jetbrains.com/guestAuth/repository/download/bt345/bootstrap.tcbuildtag/updatePlugins.xml
https://teamcity.jetbrains.com/guestAuth/repository/download/bt345/bootstrap.tcbuildtag/updatePlugins.xml
Then update the list of plugins in "Browse Repositories", you'll see two versions of Kotlin there, install the one with the higher version number.
# Contributing
We love contributions! There's [lots to do on kotlin](http://youtrack.jetbrains.com/issues/KT) and on the [standard library](http://youtrack.jetbrains.com/issues/KT?q=%23%7BStandard+Library%7D+-Resolved) so why not chat with us on the [forum](http://devnet.jetbrains.net/community/kotlin?view=discussions) about what you're interested in doing?
We love contributions! There's [lots to do on Kotlin](http://youtrack.jetbrains.com/issues/KT) and on the [standard library](https://youtrack.jetbrains.com/issues/KT?q=Subtask+of%3A+KT-2554+%23Unresolved) so why not chat with us on the [forum](http://devnet.jetbrains.net/community/kotlin?view=discussions) about what you're interested in doing?
If you want to find some issues to start off with, try [this query](http://youtrack.jetbrains.com/issues?q=tag%3A+%7BUp+For+Grabs%7D) which should find all issues that marked as "up-for-grabs".
If you want to find some issues to start off with, try [this query](https://youtrack.jetbrains.com/issues?q=tag%3A+%7BUp+For+Grabs%7D+%23Unresolved) which should find all issues that marked as "up-for-grabs".
Currently only committers can assign issues to themselves so just add a comment if you're starting work on it.
@@ -110,9 +114,9 @@ Also the [JavaScript translation](https://github.com/JetBrains/kotlin/blob/maste
## If you want to work on the compiler
The Kotlin compiler is written in Java and Kotlin (we gradually migrate more and more of it to pure Kotlin). So the easiest way to work on the compiler or IDEA plugin is
The Kotlin compiler is written in Java and Kotlin (we gradually migrate more and more of it to pure Kotlin). So the easiest way to work on the compiler or IntelliJ IDEA plugin is
* download a clean [IDEA 14 EAP build](http://confluence.jetbrains.com/display/IDEADEV/IDEA+14+EAP)
* download a clean [IDEA 15 EAP build](https://confluence.jetbrains.com/display/IDEADEV/IDEA+15+EAP)
* [install the Kotlin plugin](#pre-built-plugin)
* open the [root kotlin project](https://github.com/JetBrains/kotlin) in IDEA (opening the kotlin directory)
@@ -125,7 +129,7 @@ You can now run the various Run/Debug Configurations such as
## If you want to work on the Kotlin libraries
* download a clean [IDEA 14 EAP build](http://confluence.jetbrains.com/display/IDEADEV/IDEA+14+EAP)
* download a clean [IDEA 15 EAP build](https://confluence.jetbrains.com/display/IDEADEV/IDEA+15+EAP)
* [install the Kotlin plugin](#pre-built-plugin)
* open the [kotlin libraries project](https://github.com/JetBrains/kotlin/tree/master/libraries)
@@ -141,8 +145,10 @@ Some of the code in the standard library is created by generating code from temp
The best way to submit a patch is to [fork the project on github](http://help.github.com/fork-a-repo/) then send us a
[pull request](http://help.github.com/send-pull-requests/) via [github](http://github.com).
If you create your own fork, it might help to [enable rebase by default when you pull](http://d.strelau.net/post/47338904/git-pull-rebase-by-default)
which will avoid your local repo having too many merge commits which will help keep your pull request simple and easy to apply.
If you create your own fork, it might help to enable rebase by default
when you pull by executing `git config --global pull.rebase
true`. This will avoid your local repo having too many merge commits
which will help keep your pull request simple and easy to apply.
## Commit comments

View File

@@ -1,23 +1,29 @@
<project name="Jet CI Steps" default="none">
<project name="Kotlin CI Steps" default="none">
<import file="build.xml" optional="false"/>
<import file="replicate_versions.xml" optional="false"/>
<property name="build.number" value="snapshot"/>
<property name="jdk16.home" value="${java.home}"/>
<property name="fail.on.plugin.verifier.error" value="true"/>
<property name="version_substitute_dir" value="${basedir}/versions_temp/" />
<property name="version_substitute_dir" value="${basedir}/versions_temp/"/>
<property name="artifact.output.path" value="${basedir}/out/artifacts"/>
<property name="plugin.xml" value="idea/src/META-INF/plugin.xml"/>
<property name="plugin.xml.bk" value="${version_substitute_dir}/plugin.xml.bk"/>
<property name="plugin.xml.versioned" value="${plugin.xml}.versioned" />
<property name="plugin.xml.versioned" value="${plugin.xml}.versioned"/>
<property name="compiler.version.java" value="compiler/cli/cli-common/src/org/jetbrains/jet/cli/common/KotlinVersion.java"/>
<property name="android-extensions.plugin.xml" value="plugins/android-idea-plugin/src/META-INF/plugin.xml"/>
<property name="android-extensions.plugin.xml.bk" value="${version_substitute_dir}/kotlin-android-extensions.plugin.xml.bk"/>
<property name="android-extensions.plugin.xml.versioned" value="${android-extensions.plugin.xml}.versioned"/>
<property name="compiler.version.java" value="compiler/cli/cli-common/src/org/jetbrains/kotlin/cli/common/KotlinVersion.java"/>
<property name="compiler.version.java.bk" value="${version_substitute_dir}/KotlinVersion.java.bk"/>
<property name="compiler.version.java.versioned" value="${compiler.version.java}.versioned" />
<property name="compiler.version.java.versioned" value="${compiler.version.java}.versioned"/>
<property name="plugin.zip" value="${artifact.output.path}/kotlin-plugin-${build.number}.zip" />
<property name="bare.plugin.zip" value="${artifact.output.path}/kotlin-bare-plugin-${build.number}.zip" />
<property name="plugin.zip" value="${artifact.output.path}/kotlin-plugin-${build.number}.zip"/>
<property name="bare.plugin.zip" value="${artifact.output.path}/kotlin-bare-plugin-${build.number}.zip"/>
<property name="android-extensions.zip" value="${artifact.output.path}/kotlin-android-extensions-plugin-${build.number}.zip"/>
<macrodef name="echoprop">
<attribute name="prop"/>
@@ -41,59 +47,68 @@
</target>
<macrodef name="substituteVersionInFile">
<attribute name="target.file"/>
<attribute name="test.string"/>
<attribute name="target.file.bk" default="@{target.file}.bk"/>
<attribute name="target.file.versioned" default="@{target.file}.versioned"/>
<attribute name="token.key" default="snapshot"/>
<attribute name="version" default="${build.number}"/>
<sequential>
<!-- Create backup. Backup will be restored after build end. This will allow to rebuild project without renew
plugin.xml from repository. -->
<copy file="@{target.file}" tofile="@{target.file.bk}"/>
<attribute name="target.file"/>
<attribute name="test.string"/>
<attribute name="target.file.bk" default="@{target.file}.bk"/>
<attribute name="target.file.versioned" default="@{target.file}.versioned"/>
<attribute name="token.key" default="snapshot"/>
<attribute name="version" default="${build.number}"/>
<sequential>
<!-- Create backup. Backup will be restored after build end. This will allow to rebuild project without renew
plugin.xml from repository. -->
<copy file="@{target.file}" tofile="@{target.file.bk}"/>
<!-- Check that version has correct pattern for substitution -->
<copy todir="">
<fileset file="@{target.file.bk}">
<contains text="@{test.string}"/>
</fileset>
<filterchain>
<replacetokens>
<token key="@{token.key}" value="@{version}"/>
</replacetokens>
</filterchain>
<mergemapper to="@{target.file.versioned}"/>
</copy>
<!-- Check that version has correct pattern for substitution -->
<copy todir="">
<fileset file="@{target.file.bk}">
<contains text="@{test.string}"/>
</fileset>
<filterchain>
<replacetokens>
<token key="@{token.key}" value="@{version}"/>
</replacetokens>
</filterchain>
<mergemapper to="@{target.file.versioned}"/>
</copy>
<!-- If file doesn't exist - there's a problem with original plugin.xml. Probably there's a bad pattern used for version -->
<copy file="@{target.file.versioned}" tofile="@{target.file}" overwrite="true"/>
<!-- If file doesn't exist - there's a problem with original plugin.xml. Probably there's a bad pattern used for version -->
<copy file="@{target.file.versioned}" tofile="@{target.file}" overwrite="true"/>
<delete file="@{target.file.versioned}" quiet="true"/>
</sequential>
<delete file="@{target.file.versioned}" quiet="true"/>
</sequential>
</macrodef>
<target name="writeVersionToTemplateFiles">
<mkdir dir="${version_substitute_dir}"/>
<mkdir dir="${version_substitute_dir}"/>
<substituteVersionInFile
target.file="${plugin.xml}"
target.file.bk="${plugin.xml.bk}"
target.file.versioned="${plugin.xml.versioned}"
test.string="&lt;version&gt;@snapshot@&lt;/version&gt;"/>
<substituteVersionInFile
target.file="${plugin.xml}"
target.file.bk="${plugin.xml.bk}"
target.file.versioned="${plugin.xml.versioned}"
test.string="&lt;version&gt;@snapshot@&lt;/version&gt;"/>
<substituteVersionInFile
target.file="${compiler.version.java}"
target.file.bk="${compiler.version.java.bk}"
target.file.versioned="${compiler.version.java.versioned}"
test.string="public static final String VERSION = &quot;@snapshot@&quot;;"/>
<substituteVersionInFile
target.file="${android-extensions.plugin.xml}"
target.file.bk="${android-extensions.plugin.xml.bk}"
target.file.versioned="${android-extensions.plugin.xml.versioned}"
test.string="&lt;version&gt;@snapshot@&lt;/version&gt;"/>
<substituteVersionInFile
target.file="${compiler.version.java}"
target.file.bk="${compiler.version.java.bk}"
target.file.versioned="${compiler.version.java.versioned}"
test.string="public static final String VERSION = &quot;@snapshot@&quot;;"/>
<replicateIdeaVersion target.file="${android-extensions.plugin.xml}"/>
</target>
<target name="revertTemplateFiles">
<copy file="${plugin.xml.bk}" tofile="${plugin.xml}" overwrite="true"/>
<copy file="${compiler.version.java.bk}" tofile="${compiler.version.java}" overwrite="true"/>
<target name="revertTemplateFiles">
<copy file="${plugin.xml.bk}" tofile="${plugin.xml}" overwrite="true"/>
<copy file="${android-extensions.plugin.xml.bk}" tofile="${android-extensions.plugin.xml}" overwrite="true"/>
<copy file="${compiler.version.java.bk}" tofile="${compiler.version.java}" overwrite="true"/>
<delete dir="${version_substitute_dir}" quiet="true"/>
</target>
<delete dir="${version_substitute_dir}" quiet="true"/>
</target>
<target name="pre_build" depends="writeVersionToTemplateFiles, cleanupArtifacts"/>
@@ -105,8 +120,10 @@
<sequential>
<zip destfile="@{filename}">
<zipfileset prefix="@{dir}" dir="${artifact.output.path}/@{dir}" excludes="kotlinc/bin/*"/>
<zipfileset prefix="@{dir}/kotlinc/bin" dir="${artifact.output.path}/@{dir}/kotlinc/bin" includes="*.bat" filemode="644"/>
<zipfileset prefix="@{dir}/kotlinc/bin" dir="${artifact.output.path}/@{dir}/kotlinc/bin" excludes="*.bat" filemode="755"/>
<zipfileset prefix="@{dir}/kotlinc/bin" dir="${artifact.output.path}/@{dir}/kotlinc/bin" includes="*.bat"
filemode="644"/>
<zipfileset prefix="@{dir}/kotlinc/bin" dir="${artifact.output.path}/@{dir}/kotlinc/bin" excludes="*.bat"
filemode="755"/>
</zip>
<delete dir="${artifact.output.path}/@{dir}" quiet="true"/>
</sequential>
@@ -114,11 +131,79 @@
<zipPlugin filename="${plugin.zip}" dir="Kotlin"/>
<zipPlugin filename="${bare.plugin.zip}" dir="BareKotlin"/>
<zip destfile="${android-extensions.zip}">
<zipfileset prefix="KotlinAndroidExtensions" dir="${artifact.output.path}/KotlinAndroidExtensions"/>
</zip>
<delete dir="${artifact.output.path}/KotlinAndroidExtensions" quiet="true"/>
</target>
<target name="post_build" depends="zipArtifacts, revertTemplateFiles"/>
<macrodef name="print-statistic">
<attribute name="key"/>
<attribute name="value"/>
<sequential>
<echo message="##teamcity[buildStatisticValue key='@{key}' value='@{value}']"/>
</sequential>
</macrodef>
<macrodef name="print-file-size-statistic">
<attribute name="path"/>
<attribute name="file-name"/>
<sequential>
<local name="file.size"/>
<length file="@{path}/@{file-name}" property="file.size"/>
<print-statistic key="@{file-name} size" value="${file.size}"/>
</sequential>
</macrodef>
<target name="printStatistics">
<print-file-size-statistic path="${kotlin-home}/lib" file-name="kotlin-runtime.jar"/>
<print-file-size-statistic path="${kotlin-home}/lib" file-name="kotlin-reflect.jar"/>
<print-file-size-statistic path="${kotlin-home}/lib" file-name="kotlin-jslib.jar"/>
<print-file-size-statistic path="${output}" file-name="kotlin.js"/>
<print-file-size-statistic path="${output}" file-name="builtins.js"/>
<print-file-size-statistic path="${output}" file-name="builtins.meta.js"/>
<print-file-size-statistic path="${output}" file-name="stdlib.js"/>
<print-file-size-statistic path="${output}" file-name="stdlib.meta.js"/>
</target>
<target name="post_build" depends="zipArtifacts, revertTemplateFiles, printStatistics, remove_internal_artifacts, dont_remove_internal_artifacts"/>
<target name="none">
<fail message="Either specify pre_build or post_build"/>
</target>
<property name="teamcity.build.branch" value=""/>
<condition property="need.remove.artifacts" value="true">
<and>
<matches pattern="rr/.*" string="${teamcity.build.branch}"/>
<not>
<matches pattern="rr/internal/.*" string="${teamcity.build.branch}"/>
</not>
</and>
</condition>
<target name="remove_internal_artifacts" description="Remove internal artifacts for rr/* branches, but store them for rr/internal/*" if="need.remove.artifacts">
<echo message="Remove internal artifacts" />
<delete failonerror="false" verbose="true">
<fileset dir="dist">
<include name="kotlin-compiler-before-shrink.jar"/>
<include name="kotlin-for-upsource.jar"/>
<include name="kotlin-for-upsource-sources.jar"/>
<include name="kotlin-test-data.zip"/>
</fileset>
<fileset dir="out/artifacts/internal">
<include name="kotlin-ide-common.jar"/>
</fileset>
</delete>
</target>
<target name="dont_remove_internal_artifacts" unless="need.remove.artifacts">
<echo message="Internal artifacts left untouched"/>
</target>
</project>

View File

@@ -0,0 +1,9 @@
<root>
<item
name='com.android.tools.idea.gradle.output.parser.PatternAwareOutputParser boolean parse(java.lang.String, com.android.tools.idea.gradle.output.parser.OutputLineReader, java.util.List&lt;com.android.tools.idea.gradle.output.GradleMessage&gt;)'>
<annotation name='kotlin.jvm.KotlinSignature'>
<val name="value"
val="&quot;fun parse(line: String, reader: OutputLineReader, messages: MutableList&lt;GradleMessage&gt;): Boolean&quot;"/>
</annotation>
</item>
</root>

View File

@@ -168,4 +168,57 @@
name='com.intellij.codeInsight.editorActions.CopyPasteReferenceProcessor void restoreReferences(com.intellij.codeInsight.editorActions.ReferenceData[], TRef[]) 1'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandler boolean canSelect(com.intellij.psi.PsiElement) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandler java.util.List&lt;com.intellij.openapi.util.TextRange&gt; select(com.intellij.psi.PsiElement, java.lang.CharSequence, int, com.intellij.openapi.editor.Editor)'>
<annotation name='kotlin.jvm.KotlinSignature'>
<val name="value"
val="&quot;fun select(e: PsiElement, editorText: CharSequence, cursorOffset: Int, editor: Editor): List&lt;TextRange&gt;?&quot;"/>
</annotation>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandler java.util.List&lt;com.intellij.openapi.util.TextRange&gt; select(com.intellij.psi.PsiElement, java.lang.CharSequence, int, com.intellij.openapi.editor.Editor) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandler java.util.List&lt;com.intellij.openapi.util.TextRange&gt; select(com.intellij.psi.PsiElement, java.lang.CharSequence, int, com.intellij.openapi.editor.Editor) 1'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandler java.util.List&lt;com.intellij.openapi.util.TextRange&gt; select(com.intellij.psi.PsiElement, java.lang.CharSequence, int, com.intellij.openapi.editor.Editor) 3'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandlerBase java.util.List&lt;com.intellij.openapi.util.TextRange&gt; expandToWholeLine(java.lang.CharSequence, com.intellij.openapi.util.TextRange)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandlerBase java.util.List&lt;com.intellij.openapi.util.TextRange&gt; expandToWholeLine(java.lang.CharSequence, com.intellij.openapi.util.TextRange) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandlerBase java.util.List&lt;com.intellij.openapi.util.TextRange&gt; expandToWholeLine(java.lang.CharSequence, com.intellij.openapi.util.TextRange) 1'>
<annotation name='org.jetbrains.annotations.Nullable'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandlerBase java.util.List&lt;com.intellij.openapi.util.TextRange&gt; expandToWholeLine(java.lang.CharSequence, com.intellij.openapi.util.TextRange, boolean)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandlerBase java.util.List&lt;com.intellij.openapi.util.TextRange&gt; expandToWholeLine(java.lang.CharSequence, com.intellij.openapi.util.TextRange, boolean) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandlerBase java.util.List&lt;com.intellij.openapi.util.TextRange&gt; select(com.intellij.psi.PsiElement, java.lang.CharSequence, int, com.intellij.openapi.editor.Editor)'>
<annotation name='kotlin.jvm.KotlinSignature'>
<val name="value"
val="&quot;fun select(e: PsiElement, editorText: CharSequence, cursorOffset: Int, editor: Editor): List&lt;TextRange&gt;?&quot;"/>
</annotation>
</item>
<item
name='com.intellij.codeInsight.editorActions.ExtendWordSelectionHandlerBase java.util.List&lt;com.intellij.openapi.util.TextRange&gt; select(com.intellij.psi.PsiElement, java.lang.CharSequence, int, com.intellij.openapi.editor.Editor) 3'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -0,0 +1,9 @@
<root>
<item name='com.intellij.codeInsight.editorActions.wordSelection.BasicSelectioner boolean canSelect(com.intellij.psi.PsiElement) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.codeInsight.editorActions.wordSelection.BasicSelectioner boolean canSelectBasic(com.intellij.psi.PsiElement) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -5,13 +5,7 @@
<val name="value" val="&quot;fun isAvailable(project: Project, editor: Editor, file: PsiFile): Boolean&quot;"/>
</annotation>
</item>
<item
name='com.intellij.codeInsight.intention.IntentionAction void invoke(com.intellij.openapi.project.Project, com.intellij.openapi.editor.Editor, com.intellij.psi.PsiFile)'>
<annotation name='jet.runtime.typeinfo.KotlinSignature'>
<val name="value" val="&quot;fun invoke(project: Project, editor: Editor, file: PsiFile): Unit&quot;"/>
</annotation>
</item>
<item
<item
name='com.intellij.codeInsight.intention.PsiElementBaseIntentionAction boolean isAvailable(com.intellij.openapi.project.Project, com.intellij.openapi.editor.Editor, com.intellij.psi.PsiElement) 1'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>

View File

@@ -2,7 +2,14 @@
<item name='com.intellij.debugger.engine.DebugProcessImpl com.intellij.debugger.jdi.VirtualMachineProxyImpl getVirtualMachineProxy()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
<item
name='com.intellij.debugger.engine.FrameExtraVariablesProvider java.util.Set&lt;com.intellij.debugger.engine.evaluation.TextWithImports&gt; collectVariables(com.intellij.debugger.SourcePosition, com.intellij.debugger.engine.evaluation.EvaluationContext, java.util.Set&lt;java.lang.String&gt;)'>
<annotation name='kotlin.jvm.KotlinSignature'>
<val name="value"
val="&quot;fun collectVariables(sourcePosition: SourcePosition?, evalContext: EvaluationContext?, alreadyCollected: Set&lt;String&gt;?): Set&lt;TextWithImports&gt;?&quot;"/>
</annotation>
</item>
<item
name='com.intellij.debugger.engine.MethodFilter boolean locationMatches(com.intellij.debugger.engine.DebugProcessImpl, com.sun.jdi.Location) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>

View File

@@ -1,117 +1,121 @@
<root>
<item name='com.intellij.formatting.Spacing com.intellij.formatting.Spacing createKeepingFirstColumnSpacing(int, int, boolean, int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.Spacing com.intellij.formatting.Spacing createSpacing(int, int, int, boolean, int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder append(com.intellij.formatting.SpacingBuilder)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder after(com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder afterInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder afterInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder afterInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder around(com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder around(com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder aroundInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder aroundInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder aroundInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder aroundInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder before(com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder beforeInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder beforeInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder between(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder between(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder between(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder between(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder betweenInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder betweenInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder withinPair(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder withinPairInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder blankLines(int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder lineBreakInCode()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder lineBreakInCodeIf(boolean)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder none()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder spaceIf(boolean)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder spaces(int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder spacing(int, int, int, boolean, int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.DependentSpacingRule com.intellij.formatting.DependentSpacingRule registerData(com.intellij.formatting.DependentSpacingRule.Anchor, int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.Spacing com.intellij.formatting.Spacing createKeepingFirstColumnSpacing(int, int, boolean, int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.Spacing com.intellij.formatting.Spacing createSpacing(int, int, int, boolean, int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder append(com.intellij.formatting.SpacingBuilder)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder after(com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder afterInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder afterInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder afterInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder around(com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder around(com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder aroundInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder aroundInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder aroundInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder aroundInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder before(com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder beforeInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder beforeInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder between(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder between(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder between(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder between(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.TokenSet)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder betweenInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder betweenInside(com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.TokenSet, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder withinPair(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder com.intellij.formatting.SpacingBuilder.RuleBuilder withinPairInside(com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType, com.intellij.psi.tree.IElementType)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder blankLines(int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder lineBreakInCode()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder lineBreakInCodeIf(boolean)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder none()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder spaceIf(boolean)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder spaces(int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.formatting.SpacingBuilder.RuleBuilder com.intellij.formatting.SpacingBuilder spacing(int, int, int, boolean, int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -8,4 +8,7 @@
<item name='com.intellij.ide.util.PsiElementListCellRenderer java.lang.String getElementText(T) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.ide.util.PsiElementListCellRenderer java.util.Comparator&lt;T&gt; getComparator()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -9,4 +9,16 @@
name='com.intellij.lang.SmartEnterProcessorWithFixers.FixEnterProcessor boolean doEnter(com.intellij.psi.PsiElement, com.intellij.psi.PsiFile, com.intellij.openapi.editor.Editor, boolean) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.lang.WhitespacesAndCommentsBinder int getEdgePosition(java.util.List&lt;com.intellij.psi.tree.IElementType&gt;, boolean, com.intellij.lang.WhitespacesAndCommentsBinder.TokenTextGetter) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
<annotation name='org.jetbrains.annotations.ReadOnly'/>
</item>
<item
name='com.intellij.lang.WhitespacesAndCommentsBinder int getEdgePosition(java.util.List&lt;com.intellij.psi.tree.IElementType&gt;, boolean, com.intellij.lang.WhitespacesAndCommentsBinder.TokenTextGetter) 2'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.lang.WhitespacesAndCommentsBinder.TokenTextGetter java.lang.CharSequence get(int)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -0,0 +1,6 @@
<root>
<item
name='com.intellij.openapi.project.DumbService com.intellij.openapi.project.DumbService getInstance(com.intellij.openapi.project.Project)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -22,7 +22,11 @@
<item name='com.intellij.openapi.roots.OrderEnumerator com.intellij.openapi.roots.OrderEnumerator recursively()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
<item
name='com.intellij.openapi.roots.OrderEnumerator com.intellij.openapi.roots.OrderEnumerator satisfying(com.intellij.openapi.util.Condition&lt;com.intellij.openapi.roots.OrderEntry&gt;)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.openapi.roots.ProjectFileIndex.SERVICE com.intellij.openapi.roots.ProjectFileIndex getInstance(com.intellij.openapi.project.Project)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>

View File

@@ -0,0 +1,17 @@
<root>
<item name='com.intellij.openapi.util.text.LineTokenizer java.lang.String[] tokenize(char[], boolean)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.openapi.util.text.LineTokenizer java.lang.String[] tokenize(char[], boolean, boolean)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.openapi.util.text.LineTokenizer java.lang.String[] tokenize(char[], int, int, boolean)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.openapi.util.text.LineTokenizer java.lang.String[] tokenize(char[], int, int, boolean, boolean)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.openapi.util.text.StringUtil java.lang.String decapitalize(java.lang.String)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -21,4 +21,8 @@
<item name='com.intellij.refactoring.move.moveFilesOrDirectories.MoveFileHandler void updateMovedFile(com.intellij.psi.PsiFile) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.refactoring.move.moveFilesOrDirectories.MoveFileHandler$1 void retargetUsages(java.util.List&lt;com.intellij.usageView.UsageInfo&gt;, java.util.Map&lt;com.intellij.psi.PsiElement,com.intellij.psi.PsiElement&gt;) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -1,5 +1,8 @@
<root>
<item name='org.apache.tools.ant.types.Path java.lang.String[] list()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='org.apache.tools.ant.types.Path org.apache.tools.ant.types.Path createPath()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>
</root>

14
ant/ant.iml Normal file
View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="ant" level="project" />
<orderEntry type="library" name="kotlin-runtime" level="project" />
<orderEntry type="module" module-name="preloader" />
</component>
</module>

View File

@@ -0,0 +1,7 @@
<!-- NOTE: this Antlib is deprecated. Use org/jetbrains/kotlin/ant/antlib.xml instead -->
<!-- TODO: delete this file -->
<antlib>
<taskdef name="kotlinc" classname="org.jetbrains.kotlin.ant.Kotlin2JvmTask"/>
<taskdef name="kotlin2js" classname="org.jetbrains.kotlin.ant.Kotlin2JsTask"/>
<typedef name="withKotlin" classname="org.jetbrains.kotlin.ant.KotlinCompilerAdapter"/>
</antlib>

View File

@@ -0,0 +1,77 @@
/*
* Copyright 2010-2015 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.kotlin.ant
import org.apache.tools.ant.types.Path
import java.io.File
public class Kotlin2JsTask : KotlinCompilerBaseTask() {
override val compilerFqName = "org.jetbrains.kotlin.cli.js.K2JSCompiler"
public var library: Path? = null
public var outputPrefix: File? = null
public var outputPostfix: File? = null
public var sourceMap: Boolean = false
public var metaInfo: Boolean = false
/**
* {@link K2JsArgumentConstants.CALL} (default) if need generate a main function call (main function will be auto detected)
* {@link K2JsArgumentConstants.NO_CALL} otherwise.
*/
public var main: String? = null
public fun createLibrary(): Path {
val libraryPath = library
if (libraryPath == null) {
val t = Path(getProject())
library = t
return t
}
return libraryPath.createPath()
}
override fun fillSpecificArguments() {
args.add("-output")
args.add(output!!.canonicalPath)
// TODO: write test
library?.let {
args.add("-library-files")
args.add(it.list().map { File(it).canonicalPath }.join(separator = ","))
}
outputPrefix?.let {
args.add("-output-prefix")
args.add(it.canonicalPath)
}
outputPostfix?.let {
args.add("-output-postfix")
args.add(it.canonicalPath)
}
main?.let {
args.add("-main")
args.add(it)
}
if (noStdlib) args.add("-no-stdlib")
if (sourceMap) args.add("-source-map")
if (metaInfo) args.add("-meta-info")
}
}

View File

@@ -0,0 +1,86 @@
/*
* Copyright 2010-2015 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.kotlin.ant
import org.apache.tools.ant.types.Path
import org.apache.tools.ant.types.Reference
import java.io.File.pathSeparator
public class Kotlin2JvmTask : KotlinCompilerBaseTask() {
override val compilerFqName = "org.jetbrains.kotlin.cli.jvm.K2JVMCompiler"
public var externalAnnotations: Path? = null
public var includeRuntime: Boolean = true
public var moduleName: String? = null
private var compileClasspath: Path? = null
public fun createExternalAnnotations(): Path {
if (externalAnnotations == null) {
externalAnnotations = Path(getProject())
}
return externalAnnotations!!.createPath()
}
public fun setClasspath(classpath: Path) {
if (compileClasspath == null) {
compileClasspath = classpath
}
else {
compileClasspath!!.append(classpath)
}
}
public fun setClasspathRef(ref: Reference) {
if (compileClasspath == null) {
compileClasspath = Path(getProject())
}
compileClasspath!!.createPath().setRefid(ref)
}
public fun addConfiguredClasspath(classpath: Path) {
setClasspath(classpath)
}
override fun fillSpecificArguments() {
args.add("-d")
args.add(output!!.canonicalPath)
compileClasspath?.let {
args.add("-classpath")
args.add(it.list().join(pathSeparator))
}
externalAnnotations?.let {
args.add("-annotations")
args.add(it.list().join(pathSeparator))
}
if (moduleName == null) {
moduleName = defaultModuleName
}
moduleName?.let {
args.add("-module-name")
args.add(moduleName!!)
}
if (noStdlib) args.add("-no-stdlib")
if (includeRuntime) args.add("-include-runtime")
}
}

View File

@@ -0,0 +1,71 @@
/*
* Copyright 2010-2015 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.kotlin.ant
import org.apache.tools.ant.AntClassLoader
import org.apache.tools.ant.Task
import org.jetbrains.kotlin.preloading.ClassPreloadingUtils
import org.jetbrains.kotlin.preloading.Preloader
import java.io.File
import java.lang.ref.SoftReference
import java.net.JarURLConnection
object KotlinAntTaskUtil {
private var classLoaderRef = SoftReference<ClassLoader?>(null)
private val libPath: File by lazy {
// Find path of kotlin-ant.jar in the filesystem and find kotlin-compiler.jar in the same directory
val resourcePath = "/" + javaClass.getName().replace('.', '/') + ".class"
val jarConnection = javaClass.getResource(resourcePath).openConnection() as? JarURLConnection
?: throw UnsupportedOperationException("Kotlin compiler Ant task should be loaded from the JAR file")
val antTaskJarPath = File(jarConnection.getJarFileURL().toURI())
antTaskJarPath.getParentFile()
}
val compilerJar: File by lazy {
File(libPath, "kotlin-compiler.jar").assertExists()
}
val runtimeJar: File by lazy {
File(libPath, "kotlin-runtime.jar").assertExists()
}
private fun File.assertExists(): File {
if (!this.exists()) {
throw IllegalStateException("${getName()} is not found in the directory of Kotlin Ant task")
}
return this
}
synchronized fun getOrCreateClassLoader(): ClassLoader {
val cached = classLoaderRef.get()
if (cached != null) return cached
val myLoader = javaClass.classLoader
if (myLoader !is AntClassLoader) return myLoader
val classLoader = ClassPreloadingUtils.preloadClasses(listOf(compilerJar), Preloader.DEFAULT_CLASS_NUMBER_ESTIMATE, myLoader, null)
classLoaderRef = SoftReference(classLoader)
return classLoader
}
}
public val Task.defaultModuleName: String?
get() = owningTarget?.name ?: project?.name

View File

@@ -0,0 +1,165 @@
/*
* Copyright 2010-2015 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.kotlin.ant;
import kotlin.KotlinPackage;
import kotlin.jvm.functions.Function1;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.MagicNames;
import org.apache.tools.ant.taskdefs.Javac;
import org.apache.tools.ant.taskdefs.compilers.Javac13;
import org.apache.tools.ant.taskdefs.condition.AntVersion;
import org.apache.tools.ant.types.Commandline;
import org.apache.tools.ant.types.Path;
import org.jetbrains.annotations.NotNull;
import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static org.apache.tools.ant.Project.MSG_WARN;
public class KotlinCompilerAdapter extends Javac13 {
private static final List<String> KOTLIN_EXTENSIONS = Arrays.asList("kt", "kts");
private Path externalAnnotations;
private String moduleName;
public List<Commandline.Argument> additionalArguments = new ArrayList<Commandline.Argument>(0);
public void setExternalAnnotations(Path externalAnnotations) {
this.externalAnnotations = externalAnnotations;
}
public void setModuleName(String moduleName) {
this.moduleName = moduleName;
}
public Path createExternalAnnotations() {
if (externalAnnotations == null) {
externalAnnotations = new Path(getProject());
}
return externalAnnotations.createPath();
}
public Commandline.Argument createCompilerArg() {
Commandline.Argument argument = new Commandline.Argument();
additionalArguments.add(argument);
return argument;
}
@Override
public String[] getSupportedFileExtensions() {
List<String> result = KotlinPackage.plus(Arrays.asList(super.getSupportedFileExtensions()), KOTLIN_EXTENSIONS);
//noinspection SSBasedInspection
return result.toArray(new String[result.size()]);
}
@Override
public boolean execute() throws BuildException {
Javac javac = getJavac();
checkAntVersion();
Kotlin2JvmTask kotlinc = new Kotlin2JvmTask();
kotlinc.setFailOnError(javac.getFailonerror());
kotlinc.setOutput(javac.getDestdir());
Path classpath = javac.getClasspath();
if (classpath != null) {
kotlinc.setClasspath(classpath);
}
// We use the provided src dir instead of compileList, because the latter is insane:
// it is constructed only of sources which are newer than classes with the same name
kotlinc.setSrc(javac.getSrcdir());
kotlinc.setExternalAnnotations(externalAnnotations);
if (moduleName == null) {
moduleName = AntPackage.getDefaultModuleName(javac);
}
kotlinc.setModuleName(moduleName);
kotlinc.getAdditionalArguments().addAll(additionalArguments);
// Javac13#execute passes everything in compileList to javac, which doesn't recognize .kt files
File[] compileListForJavac = filterOutKotlinSources(compileList);
boolean hasKotlinFilesInSources = compileListForJavac.length < compileList.length;
if (hasKotlinFilesInSources) {
kotlinc.execute();
if (!Integer.valueOf(0).equals(kotlinc.getExitCode())) {
// Don't run javac if failOnError = false and there were errors on Kotlin sources
return false;
}
}
else {
// This is needed for addRuntimeToJavacClasspath, where kotlinc arguments will be used.
kotlinc.fillArguments();
}
javac.log("Running javac...");
compileList = compileListForJavac;
addRuntimeToJavacClasspath(kotlinc);
return compileList.length == 0 || super.execute();
}
private void addRuntimeToJavacClasspath(@NotNull Kotlin2JvmTask kotlinc) {
for (String arg : kotlinc.getArgs()) {
// If "-no-stdlib" was specified explicitly, probably the user also wanted the javac classpath to not have it
if ("-no-stdlib".equals(arg)) return;
}
if (compileClasspath == null) {
compileClasspath = new Path(getProject());
}
compileClasspath.add(new Path(getProject(), KotlinAntTaskUtil.INSTANCE$.getRuntimeJar().getAbsolutePath()));
}
private void checkAntVersion() {
AntVersion checkVersion = new AntVersion();
checkVersion.setAtLeast("1.8.2");
if (!checkVersion.eval()) {
getJavac().log("<withKotlin> task requires Ant of version at least 1.8.2 to operate reliably. " +
"Please upgrade or, as a workaround, make sure you have at least one Java source and " +
"the output directory is clean before running this task. " +
"You have: " + getProject().getProperty(MagicNames.ANT_VERSION), MSG_WARN);
}
}
@NotNull
private static File[] filterOutKotlinSources(@NotNull File[] files) {
List<File> nonKotlinSources = KotlinPackage.filterNot(files, new Function1<File, Boolean>() {
@Override
public Boolean invoke(File file) {
for (String extension : KOTLIN_EXTENSIONS) {
if (file.getPath().endsWith("." + extension)) return true;
}
return false;
}
});
return nonKotlinSources.toArray(new File[nonKotlinSources.size()]);
}
}

View File

@@ -0,0 +1,99 @@
/*
* Copyright 2010-2015 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.kotlin.ant
import org.apache.tools.ant.BuildException
import org.apache.tools.ant.Task
import org.apache.tools.ant.types.Commandline
import org.apache.tools.ant.types.Path
import org.apache.tools.ant.types.Reference
import java.io.File
import java.io.PrintStream
public abstract class KotlinCompilerBaseTask : Task() {
protected abstract val compilerFqName: String
protected val args: MutableList<String> = arrayListOf()
public var src: Path? = null
public var output: File? = null
public var nowarn: Boolean = false
public var verbose: Boolean = false
public var printVersion: Boolean = false
public var failOnError: Boolean = true
public var noStdlib: Boolean = false
public val additionalArguments: MutableList<Commandline.Argument> = arrayListOf()
internal var exitCode: Int? = null
public fun createSrc(): Path {
val srcPath = src
if (srcPath == null) {
val t = Path(getProject())
src = t
return t
}
return srcPath.createPath()
}
public fun setSrcRef(ref: Reference) {
createSrc().setRefid(ref)
}
public fun createCompilerArg(): Commandline.Argument {
val argument = Commandline.Argument()
additionalArguments.add(argument)
return argument
}
abstract fun fillSpecificArguments()
public fun fillArguments() {
val sourcePaths = src ?: throw BuildException("\"src\" should be specified")
args.addAll(sourcePaths.list().map { File(it).canonicalPath })
output ?: throw BuildException("\"output\" should be specified")
if (nowarn) args.add("-nowarn")
if (verbose) args.add("-verbose")
if (printVersion) args.add("-version")
args.addAll(additionalArguments.flatMap { it.getParts().toList() })
fillSpecificArguments()
}
final override fun execute() {
fillArguments()
val compilerClass = KotlinAntTaskUtil.getOrCreateClassLoader().loadClass(compilerFqName)
val compiler = compilerClass.newInstance()
val exec = compilerClass.getMethod("execFullPathsInMessages", javaClass<PrintStream>(), javaClass<Array<String>>())
log("Compiling ${src!!.list().toList()} => [${output!!.canonicalPath}]");
val result = exec(compiler, System.err, args.toTypedArray())
exitCode = (result as Enum<*>).ordinal()
if (failOnError && exitCode != 0) {
throw BuildException("Compile failed; see the compiler error output for details.")
}
}
}

View File

@@ -0,0 +1,5 @@
<antlib>
<taskdef name="kotlinc" classname="org.jetbrains.kotlin.ant.Kotlin2JvmTask"/>
<taskdef name="kotlin2js" classname="org.jetbrains.kotlin.ant.Kotlin2JsTask"/>
<typedef name="withKotlin" classname="org.jetbrains.kotlin.ant.KotlinCompilerAdapter"/>
</antlib>

View File

@@ -1,151 +0,0 @@
/*
* Copyright 2010-2013 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.jet.buildtools.ant;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;
import org.apache.tools.ant.types.Commandline;
import org.apache.tools.ant.types.Path;
import org.apache.tools.ant.types.Reference;
import org.jetbrains.jet.buildtools.core.BytecodeCompiler;
import org.jetbrains.jet.buildtools.core.Util;
import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static org.jetbrains.jet.buildtools.core.Util.getPath;
/**
* Kotlin bytecode compiler Ant task.
* <p/>
* See
* http://evgeny-goldin.org/javadoc/ant/tutorial-writing-tasks.html
* http://evgeny-goldin.org/javadoc/ant/develop.html
* http://svn.apache.org/viewvc/ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/Javac.java?view=markup.
*/
public class BytecodeCompilerTask extends Task {
private File output;
private File stdlib;
private Path src;
private Path externalAnnotations;
private Path compileClasspath;
private boolean includeRuntime = true;
private final List<Commandline.Argument> additionalArguments = new ArrayList<Commandline.Argument>();
public void setOutput(File output) {
this.output = output;
}
public void setStdlib(File stdlib) {
this.stdlib = stdlib;
}
public void setSrc(Path src) {
this.src = src;
}
public Path createSrc() {
if (src == null) {
src = new Path(getProject());
}
return src.createPath();
}
public void setExternalAnnotations(Path externalAnnotations) {
this.externalAnnotations = externalAnnotations;
}
public Path createExternalAnnotations() {
if (externalAnnotations == null) {
externalAnnotations = new Path(getProject());
}
return externalAnnotations.createPath();
}
public void setIncludeRuntime(boolean includeRuntime) {
this.includeRuntime = includeRuntime;
}
public Commandline.Argument createCompilerArg() {
Commandline.Argument argument = new Commandline.Argument();
additionalArguments.add(argument);
return argument;
}
/**
* Set the classpath to be used for this compilation.
*
* @param classpath an Ant Path object containing the compilation classpath.
*/
public void setClasspath(Path classpath) {
if (this.compileClasspath == null) {
this.compileClasspath = classpath;
}
else {
this.compileClasspath.append(classpath);
}
}
/**
* Adds a reference to a classpath defined elsewhere.
*
* @param ref a reference to a classpath.
*/
public void setClasspathRef(Reference ref) {
if (this.compileClasspath == null) {
this.compileClasspath = new Path(getProject());
}
this.compileClasspath.createPath().setRefid(ref);
}
/**
* Set the nested {@code <classpath>} to be used for this compilation.
*
* @param classpath an Ant Path object containing the compilation classpath.
*/
public void addConfiguredClasspath(Path classpath) {
setClasspath(classpath);
}
@Override
public void execute() {
String stdlibPath = stdlib != null ? getPath(stdlib) : null;
String[] classpath = compileClasspath != null ? compileClasspath.list() : null;
String[] externalAnnotationsPath = externalAnnotations != null ? externalAnnotations.list() : null;
List<String> args = new ArrayList<String>();
for (Commandline.Argument argument : additionalArguments) {
args.addAll(Arrays.asList(argument.getParts()));
}
if (src == null) {
throw new BuildException("\"src\" should be specified");
}
if (output == null) {
throw new BuildException("\"output\" should be specified");
}
String[] source = Util.getPaths(src.list());
String destination = getPath(output);
log(String.format("Compiling [%s] => [%s]", Arrays.toString(source), destination));
BytecodeCompiler.compileSources(source, destination, includeRuntime, stdlibPath, classpath, externalAnnotationsPath, args);
}
}

View File

@@ -1,99 +0,0 @@
/*
* Copyright 2010-2013 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.jet.buildtools.ant
import org.apache.tools.ant.Task
import org.apache.tools.ant.types.Path
import org.apache.tools.ant.types.Reference
import org.jetbrains.jet.buildtools.core.Util
import org.jetbrains.jet.cli.common.arguments.K2JSCompilerArguments
import org.jetbrains.jet.cli.common.messages.MessageCollectorPlainTextToStream
import org.jetbrains.jet.cli.js.K2JSCompiler
import java.io.File
import org.apache.tools.ant.BuildException
import org.jetbrains.jet.cli.common.ExitCode
import org.jetbrains.jet.config.Services
/**
* Kotlin JavaScript compiler Ant task.
* http://evgeny-goldin.org/javadoc/ant/tutorial-writing-tasks.html
*/
public class Kotlin2JsCompilerTask : Task() {
public var src: Path? = null
public var output: File? = null
public var library: Path? = null
public var outputPrefix: File? = null
public var outputPostfix: File? = null
public var sourceMap: Boolean = false
/**
* {@link K2JsArgumentConstants.CALL} (default) if need generate a main function call (main function will be auto detected)
* {@link K2JsArgumentConstants.NO_CALL} otherwise.
*/
public var main: String? = null
public fun createSrc(): Path {
val srcPath = src
if (srcPath == null) {
val t = Path(getProject())
src = t
return t
}
return srcPath.createPath()
}
public fun setSrcRef(ref: Reference) {
createSrc().setRefid(ref)
}
public fun createLibrary(): Path {
val libraryPath = library
if (libraryPath == null) {
val t = Path(getProject())
library = t
return t
}
return libraryPath.createPath()
}
override fun execute(): Unit {
val arguments = K2JSCompilerArguments()
val sourcePaths = src ?: throw BuildException("\"src\" should be specified")
arguments.freeArgs = Util.getPaths(sourcePaths.list()).toList()
val outputFile = output ?: throw BuildException("\"output\" should be specified")
arguments.outputFile = outputFile.canonicalPath
arguments.outputPrefix = outputPrefix?.canonicalPath
arguments.outputPostfix = outputPostfix?.canonicalPath
arguments.main = main
arguments.sourceMap = sourceMap
log("Compiling ${arguments.freeArgs} => [${arguments.outputFile}]");
val compiler = K2JSCompiler()
val exitCode = compiler.exec(MessageCollectorPlainTextToStream.PLAIN_TEXT_TO_SYSTEM_ERR, Services.EMPTY, arguments)
if (exitCode != ExitCode.OK) {
throw BuildException("Compilation finished with exit code $exitCode")
}
}
}

View File

@@ -1,57 +0,0 @@
/*
* Copyright 2010-2013 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.jet.buildtools.ant;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.taskdefs.Javac;
import org.apache.tools.ant.taskdefs.compilers.DefaultCompilerAdapter;
import org.apache.tools.ant.taskdefs.compilers.Javac13;
import org.apache.tools.ant.types.Path;
public class KotlinCompilerAdapter extends DefaultCompilerAdapter {
private Path externalAnnotations;
public void setExternalAnnotations(Path externalAnnotations) {
this.externalAnnotations = externalAnnotations;
}
public Path createExternalAnnotations() {
if (externalAnnotations == null) {
externalAnnotations = new Path(getProject());
}
return externalAnnotations.createPath();
}
@Override
public boolean execute() throws BuildException {
Javac javac = getJavac();
BytecodeCompilerTask kotlinTask = new BytecodeCompilerTask();
kotlinTask.setOutput(javac.getDestdir());
kotlinTask.setClasspath(javac.getClasspath());
kotlinTask.setSrc(javac.getSrcdir());
kotlinTask.setExternalAnnotations(externalAnnotations);
kotlinTask.execute();
javac.log("Running javac...");
Javac13 javac13 = new Javac13();
javac13.setJavac(javac);
return javac13.execute();
}
}

View File

@@ -1,15 +0,0 @@
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<!-- http://evgeny-goldin.org/javadoc/ant/Types/antlib.html -->
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<antlib>
<taskdef
name = "kotlinc"
classname = "org.jetbrains.jet.buildtools.ant.BytecodeCompilerTask"/>
<taskdef
name = "kotlin2js"
classname = "org.jetbrains.jet.buildtools.ant.Kotlin2JsCompilerTask"/>
<typedef
name = "withKotlin"
classname = "org.jetbrains.jet.buildtools.ant.KotlinCompilerAdapter"/>
</antlib>

View File

@@ -1,19 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/core/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/ant/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="cli" />
<orderEntry type="library" name="idea-full" level="project" />
<orderEntry type="module" module-name="frontend" />
<orderEntry type="module" module-name="backend" />
<orderEntry type="module" module-name="util" />
<orderEntry type="library" name="ant-1.7" level="project" />
</component>
</module>

Some files were not shown because too many files have changed in this diff Show More