Compare commits

...

131 Commits

Author SHA1 Message Date
Nikolay Krasko
43ae60fca2 Add absent LightVirtualFileBase and BinaryLightVirtualFile 2015-03-18 15:50:55 +03:00
Nikolay Krasko
9dbe2f57cf Revert: Switch to the new(right) API for register extension points and extensions. (5e782dd547) 2015-03-18 15:50:22 +03:00
Nikolay Krasko
c2ff12d2c7 Merge tag 'build-0.11.65' into idea13
Conflicts:
	idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/LibraryModificationTracker.kt
	jps-plugin/testData/incremental/pureKotlin/classObjectConstantChanged/build.log
	jps-plugin/testData/incremental/pureKotlin/traitClassObjectConstantChanged/build.log
	jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantChanged/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantChanged/const.kt
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantChanged/const.kt.new
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantUnchanged/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantUnchanged/const.kt
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantUnchanged/const.kt.new
2015-03-18 14:30:47 +03:00
Nikolay Krasko
ec3bcb4599 Use ported SimpleModificationTracker 2015-03-18 13:27:49 +03:00
Nikolay Krasko
40c86f00e8 Build android plugin - enumerate more libraries in classpath 2015-03-17 20:20:44 +03:00
Nikolay Krasko
1914b15046 Drop callableBug test 2015-03-17 20:20:42 +03:00
Nikolay Krasko
fa6b61f8b1 Apply workaround for bad initialization order 2015-03-17 20:20:40 +03:00
Nikolay Krasko
76dbcfd97d Revert incompatible changes 2015-03-17 20:20:38 +03:00
Nikolay Krasko
b6e5590d24 Merge with 0.11.8 2015-03-17 16:39:23 +03:00
Nikolay Krasko
03e20787df Merge remote-tracking branch 'origin/master' into idea13 2015-03-12 15:26:49 +03:00
Nikolay Krasko
5bac0fe856 Revert to old findChildByType() signature 2015-03-12 14:08:11 +03:00
Nikolay Krasko
e84d28d645 Merge remote-tracking branch 'origin/master' into idea13 2015-03-12 13:30:18 +03:00
Nikolay Krasko
2ea578d257 Merge tag 'build-0.10.1410' into idea13
Conflicts:
	idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/LibraryModificationTracker.kt
	update_dependencies.xml
2015-03-12 13:13:37 +03:00
Nikolay Krasko
947849c241 Merge tag 'build-0.10.1357' into idea13
Conflicts:
	generators/src/org/jetbrains/kotlin/generators/tests/GenerateTests.kt
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantChanged/const.kt
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantChanged/const.kt.new
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantUnchanged/const.kt
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantUnchanged/const.kt.new
2015-03-11 15:43:52 +03:00
Nikolay Krasko
0336a84a81 Revert action name in suppression 2015-03-11 15:08:36 +03:00
Nikolay Krasko
6d46c8f784 Test fix for document convert 2015-03-11 15:07:57 +03:00
Nikolay Krasko
78a844d1d1 Dependency to gradle plugin in jps tests 2015-03-11 14:07:20 +03:00
Nikolay Krasko
fcc3a02337 Fix android studio version for idea 13 branch 2015-03-10 18:55:09 +03:00
Nikolay Krasko
e76493c310 Delete kotlinUsedInJava folder 2015-03-10 17:54:15 +03:00
Nikolay Krasko
8d243ce1af Update API 2015-03-10 16:19:43 +03:00
Yan Zhulanow
7d9b902f7f Run both plugins in all platforms. Cherry-pick cdb7a4002e 2015-03-10 14:50:12 +03:00
Nikolay Krasko
24cca11c3d Update tests and compilation fixes after merge 2015-03-06 21:08:36 +03:00
Nikolay Krasko
4fbb13b744 Conflicting local parameters after merge 2015-03-06 21:07:07 +03:00
Nikolay Krasko
69d9592070 Merge tag 'build-0.10.1316' into idea13
Conflicts:
	generators/src/org/jetbrains/kotlin/generators/tests/GenerateTests.kt
	idea/idea.iml
	idea/kotlin-android-plugin/src/org/jetbrains/kotlin/android/KotlinOutputParser.kt
	idea/src/META-INF/plugin.xml
	idea/src/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluationBuilder.kt
	idea/tests/org/jetbrains/kotlin/findUsages/JetFindUsagesTestGenerated.java
	idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluateExpressionTestGenerated.java
	j2k/tests/org/jetbrains/kotlin/j2k/JavaToKotlinConverterForWebDemoTestGenerated.java
	jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt
	jps-plugin/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java
	jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/build.log
	update_dependencies.xml
2015-03-06 20:28:39 +03:00
Nikolay Krasko
01313ebf90 Filter out enum methods 2015-03-02 15:08:45 +03:00
Nikolay Krasko
1270cb0811 Fix kotlinConstantChangedUsedInJava incremental test 2015-03-02 14:46:32 +03:00
Nikolay Krasko
6c4929ba91 Merge tag 'build-0.10.1094' into idea13
Conflicts:
	idea/idea-analysis/src/org/jetbrains/kotlin/idea/configuration/ModuleTypeCache.kt
	idea/src/org/jetbrains/kotlin/idea/quickfix/createFromUsage/callableBuilder/CallableBuilder.kt
	idea/tests/org/jetbrains/kotlin/idea/JetLightCodeInsightFixtureTestCase.java
	jps-plugin/testData/incremental/custom/kotlinConstantChangedUsedInJava/build.log
2015-02-27 15:15:08 +03:00
Nikolay Krasko
56ce371c24 Merge tag 'build-0.10.1023' into idea13
Conflicts:
	compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/JetCoreEnvironment.java
	idea/src/META-INF/plugin.xml
	jps-plugin/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java
	jps-plugin/testData/incremental/pureKotlin/compilationErrorThenFixedWithPhantomPart/build.log
	jps-plugin/testData/incremental/pureKotlin/compilationErrorThenFixedWithPhantomPart2/build.log
	jps-plugin/testData/incremental/withJava/convertBetweenJavaAndKotlin/javaToKotlin/build.log
	jps-plugin/testData/incremental/withJava/convertBetweenJavaAndKotlin/kotlinToJava/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/funRenamed/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/methodAddedInSuper/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/onlyTopLevelFunctionInFileRemoved/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/propertyRenamed/build.log
	update_dependencies.xml
2015-02-27 02:28:09 +03:00
Nikolay Krasko
1176ed1cf4 Fixes after merge 2015-02-26 11:54:34 +03:00
Nikolay Krasko
5139ab5649 Merge tag 'build-0.10.1012' into idea13
Conflicts:
	.idea/libraries/idea_full.xml
	.idea/libraries/intellij_core.xml
	.idea/libraries/intellij_core_analysis.xml
	idea/src/org/jetbrains/kotlin/idea/codeInsight/KotlinCopyPasteReferenceProcessor.kt
	idea/testData/debugger/tinyApp/outs/frameClassObject.out
	idea/testData/debugger/tinyApp/outs/frameExtFunExtFun.out
	idea/testData/debugger/tinyApp/outs/frameInnerClass.out
	idea/testData/debugger/tinyApp/outs/frameThis0.out
	idea/testData/debugger/tinyApp/outs/frameThis0Ext.out
	idea/testData/debugger/tinyApp/outs/frameThis0This0.out
	idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluateExpressionTestGenerated.java
	jps-plugin/jps-plugin.iml
	jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt
	jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCacheImpl.kt
	jps-plugin/testData/incremental/pureKotlin/classObjectConstantChanged/build.log
	jps-plugin/testData/incremental/pureKotlin/filesExchangePackages/build.log
	jps-plugin/testData/incremental/pureKotlin/multiplePackagesModified/build.log
	jps-plugin/testData/incremental/pureKotlin/packageFileAdded/build.log
	jps-plugin/testData/incremental/pureKotlin/traitClassObjectConstantChanged/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantChanged/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantUnchanged/build.log
2015-02-25 21:03:01 +03:00
Nikolay Krasko
13eb7652d4 Use rest API to fetch IDEA 2015-02-12 18:08:52 +03:00
Nikolay Krasko
cf8db5f5c3 Test regenerate and custom fixes after merge 2015-02-12 17:58:32 +03:00
Nikolay Krasko
099837ff7a Merge tag 'build-0.10.823' into idea13
Conflicts:
	build.xml
	generators/src/org/jetbrains/kotlin/generators/tests/GenerateTests.kt
	idea/idea.iml
	idea/src/META-INF/plugin.xml
	idea/testData/debugger/tinyApp/outs/toStringRenderer.out
	idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/renderer/toStringRenderer.kt
	idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinDebuggerTestBase.kt
	idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt
	idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluateExpressionTestGenerated.java
	jps-plugin/jps-plugin.iml
	jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt
	jps-plugin/src/org/jetbrains/kotlin/jps/incremental/IncrementalCacheImpl.kt
	jps-plugin/test/org/jetbrains/kotlin/jps/build/AbstractIncrementalJpsTest.kt
	jps-plugin/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java
2015-02-12 17:49:56 +03:00
Natalia Ukhorskaya
6773844306 Fix OutputParser for Gradle plugin 2015-02-03 13:36:58 +03:00
Natalia Ukhorskaya
20545dc8c8 Change usages of com.android.tools.idea.gradle.output.parser package to com.android.ide.common.blame.parser 2015-02-03 13:36:25 +03:00
Alexander Udalov
40f6934590 Revert "Use javac2 filter to disable NotNull instrumentation of Kotlin code"
This reverts commit 5194310d6e.
2015-01-27 16:15:54 +03:00
Alexander Udalov
31ddb15f46 Merge tag 'build-0.10.555' into idea13
Conflicts:
	update_dependencies.xml
2015-01-27 16:02:55 +03:00
Alexander Udalov
c9be769ab5 Workaround ASM bug by downloading newer version from IDEA 14 2015-01-27 15:59:23 +03:00
Alexey Sedunov
9cf6574119 Fix previously incorrect merge 2015-01-26 15:25:16 +03:00
Alexey Sedunov
53ca4ef3fa Revert commit:
967f470 Evgeny Gerashchenko at 11/12/2014 21:19 (committed at 1/19/2015 16:36) Added multi-module tests on incremental compilation
2015-01-26 13:33:08 +03:00
Alexey Sedunov
19a919479b Revert commit:
00f2ba5 Evgeny Gerashchenko at 11/13/2014 20:11 (committed at 1/19/2015 16:36) Test with Java and Kotlin changed simultaneously
2015-01-26 13:32:51 +03:00
Alexey Sedunov
27144c3354 Revert commit:
7268775 Evgeny Gerashchenko at 11/26/2014 20:04 (committed at 1/19/2015 16:36) Rebuilding dependent modules
2015-01-26 13:32:44 +03:00
Alexey Sedunov
3e3d9111c8 Revert commit:
c60797e Evgeny Gerashchenko at 11/28/2014 17:25 (committed at 1/19/2015 16:36) 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-26 13:32:17 +03:00
Alexey Sedunov
ade2ebb234 Merge branch 'origin/master' upto 432bdcd into idea13 2015-01-26 13:31:48 +03:00
Alexey Sedunov
127a9a1a4a Merge branch 'origin/master' upto build-0.10.434 into idea13
Conflicts:
	idea/testData/debugger/tinyApp/outs/frameLambdaNotUsed.out
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/constantChanged/build.log
2015-01-24 10:52:58 +03:00
Nikolay Krasko
f7d06e9880 Drop library usages tests 2015-01-15 20:28:08 +03:00
Nikolay Krasko
e5e5a07462 Don't build upsource and zip with test in idea 13 2015-01-15 20:28:06 +03:00
Nikolay Krasko
a9922dd360 Revert test data for idea 13 2015-01-15 20:28:04 +03:00
Nikolay Krasko
3de3b7515c Merge fixes 2015-01-15 20:28:02 +03:00
Nikolay Krasko
140503eb97 Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	idea/src/META-INF/coverage.xml
	idea/src/META-INF/plugin.xml
	idea/src/org/jetbrains/jet/plugin/coverage/KotlinCoverageExtension.kt
	idea/src/org/jetbrains/kotlin/idea/completion/CompletionSorting.kt
	idea/src/org/jetbrains/kotlin/idea/completion/smart/NameSimilarity.kt
	idea/src/org/jetbrains/kotlin/idea/debugger/KotlinSourcePositionProvider.kt
	idea/src/org/jetbrains/kotlin/idea/debugger/KotlinSteppingConfigurableUi.java
	idea/src/org/jetbrains/kotlin/idea/debugger/filter/DebuggerFiltersUtil.kt
	idea/src/org/jetbrains/kotlin/idea/refactoring/changeSignature/JetChangeSignatureUsageProcessor.java
	idea/src/org/jetbrains/kotlin/idea/refactoring/move/MoveJavaInnerClassKotlinUsagesHandler.kt
	idea/testData/debugger/tinyApp/outs/delegatedPropertyInClass.out
	idea/testData/debugger/tinyApp/outs/frameExtensionFun.out
	idea/testData/debugger/tinyApp/outs/frameLambdaNotUsed.out
	idea/testData/debugger/tinyApp/outs/frameSharedVarLocalVar.out
	idea/testData/debugger/tinyApp/outs/frameSimple.out
	idea/testData/debugger/tinyApp/outs/frameThis0.out
	idea/testData/debugger/tinyApp/outs/toStringRenderer.out
	idea/tests/org/jetbrains/jet/plugin/coverage/AbstractKotlinCoverageOutputFilesTest.kt
	idea/tests/org/jetbrains/kotlin/idea/JetLightCodeInsightFixtureTestCase.java
	idea/tests/org/jetbrains/kotlin/idea/KotlinCodeInsightTestCase.java
	idea/tests/org/jetbrains/kotlin/idea/KotlinCompletionTestCase.java
	idea/tests/org/jetbrains/kotlin/idea/KotlinDaemonAnalyzerTestCase.java
	idea/tests/org/jetbrains/kotlin/idea/KotlinHierarchyViewTestBase.java
	idea/tests/org/jetbrains/kotlin/idea/KotlinLightQuickFixTestCase.java
	idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinDebuggerTestCase.java
	idea/tests/org/jetbrains/kotlin/idea/resolve/AbstractReferenceResolveTest.java
	j2k/tests/org/jetbrains/kotlin/j2k/AbstractJavaToKotlinConverterTest.kt
	update_dependencies.xml
2015-01-15 02:48:37 +03:00
Nikolay Krasko
c680cfe5d9 Fix compile errors 2015-01-14 20:52:24 +03:00
Nikolay Krasko
88f9e4162d Merge commit '3b81d6333477' into idea13
Conflicts:
	.idea/artifacts/Instrumentation.xml
	compiler/frontend/src/org/jetbrains/kotlin/cfg/PseudocodeVariableDataCollector.kt
	compiler/frontend/src/org/jetbrains/kotlin/psi/psiUtil/JetStringTemplateExpressionManipulator.kt
	compiler/frontend/src/org/jetbrains/kotlin/psi/psiUtil/StringTemplateExpressionManipulator.kt
	compiler/frontend/src/org/jetbrains/kotlin/resolve/diagnostics/MutableDiagnosticsWithSuppression.kt
	core/descriptor.loader.java/src/org/jetbrains/kotlin/load/java/lazy/descriptors/LazyJavaMemberScope.kt
	generators/src/org/jetbrains/kotlin/generators/tests/GenerateTests.kt
	idea/src/org/jetbrains/jet/plugin/coverage/KotlinCoverageExtension.kt
	idea/src/org/jetbrains/jet/plugin/debugger/KotlinSourcePositionProvider.kt
	idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt
	idea/src/org/jetbrains/jet/plugin/refactoring/changeSignature/JetChangeSignatureUsageProcessor.java
	idea/src/org/jetbrains/jet/plugin/refactoring/move/MoveJavaInnerClassKotlinUsagesHandler.kt
	idea/tests/org/jetbrains/jet/plugin/KotlinCodeInsightTestCase.java
	idea/tests/org/jetbrains/jet/plugin/KotlinCompletionTestCase.java
	idea/tests/org/jetbrains/jet/plugin/KotlinDaemonAnalyzerTestCase.java
	idea/tests/org/jetbrains/jet/plugin/KotlinHierarchyViewTestBase.java
	idea/tests/org/jetbrains/jet/plugin/KotlinLightQuickFixTestCase.java
	idea/tests/org/jetbrains/jet/plugin/decompiler/stubBuilder/AbstractClsStubBuilderTest.kt
	j2k/tests/org/jetbrains/kotlin/j2k/AbstractJavaToKotlinConverterTest.kt
	j2k/tests/org/jetbrains/kotlin/j2k/JavaToKotlinConverterForWebDemoTestGenerated.java
2015-01-14 20:51:36 +03:00
Nikolay Krasko
c282075d89 Merge with 0.10.289 2015-01-14 19:32:56 +03:00
Nikolay Krasko
8f7000aaa3 Merge remote-tracking branch 'origin/master' into idea13 2014-12-25 18:38:04 +03:00
Nikolay Krasko
baeaedef6f Change the way temporary directory is created 2014-12-25 17:50:04 +03:00
Nikolay Krasko
e27347714b configureFromExistingVirtualFile() changes .class file in idea 13 2014-12-25 17:08:54 +03:00
Nikolay Krasko
bb2f4a86b3 Mute KotlinSourcePositionProvider in idea 13 2014-12-25 17:08:17 +03:00
Nikolay Krasko
09d0d775c3 Merge remote-tracking branch 'origin/master' into idea13 (some tests still fail)
Conflicts:
	compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/KotlinWrappingLightClass.java
	idea/src/META-INF/plugin.xml
	idea/src/org/jetbrains/jet/plugin/conversion/copy/ConvertJavaCopyPastePostProcessor.kt
	idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt
	idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinObjectRenderer.kt
	idea/testData/debugger/tinyApp/outs/delegatedPropertyInClass.out
	idea/tests/org/jetbrains/jet/findUsages/AbstractJetFindUsagesTest.java
	idea/tests/org/jetbrains/jet/plugin/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt
	j2k/tests/test/org/jetbrains/jet/j2k/test/JavaToKotlinConverterForWebDemoTestGenerated.java
	jps-plugin/testData/incremental/pureKotlin/multiplePackagesModified/build.log
	jps-plugin/testData/incremental/pureKotlin/packageFileAdded/build.log
	libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/FinishBuildListener.kt
	libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/ParentLastURLClassLoader.java
	update_dependencies.xml
2014-12-25 13:39:28 +03:00
Nikolay Krasko
a9ab2a912f Change test data file extension and enable tests 2014-12-17 14:24:59 +03:00
Nikolay Krasko
9e7975db5f No ZipFileCache in idea 13 2014-12-17 14:04:40 +03:00
Nikolay Krasko
a83d7f780b Disable test temporary 2014-12-16 19:33:12 +03:00
Nikolay Krasko
90d50e77d9 Merge remote-tracking branch 'origin/master' into idea13 2014-12-16 19:05:34 +03:00
Nikolay Krasko
7a9096ef95 Disable coverage support in idea 13 2014-12-16 18:56:46 +03:00
Nikolay Krasko
f7626370b8 Fix compile errors after merge 2014-12-16 16:23:39 +03:00
Nikolay Krasko
acdef44fc2 Remove test for incremental build that can't be fixed in idea 13 2014-12-16 15:55:39 +03:00
Nikolay Krasko
50a39b4d1b Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	idea/idea-analysis/src/org/jetbrains/jet/plugin/framework/JsLibraryStdDetectionUtil.java
	jps-plugin/test/org/jetbrains/jet/jps/build/IncrementalJpsTestGenerated.java
	update_dependencies.xml
2014-12-16 15:26:16 +03:00
Nikolay Krasko
9df07c08fa Ability to build with other version of BuildOutputParser on TeamCity 2014-12-08 18:07:02 +03:00
Nikolay Krasko
1b825ae9c6 Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	idea/tests/org/jetbrains/jet/editor/TypedHandlerTest.java
	update_dependencies.xml
2014-12-08 15:30:38 +03:00
Nikolay Krasko
e38da456c3 Compile error fix 2014-12-05 21:45:23 +03:00
Nikolay Krasko
879fef3ed0 Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	idea/tests/org/jetbrains/jet/plugin/KotlinCompletionTestCase.java
	update_dependencies.xml
2014-12-05 21:15:52 +03:00
Michael Bogdanov
8827c074cf Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	compiler/testData/diagnostics/tests/recovery/namelessInJava.lazy.log
	idea/tests/org/jetbrains/jet/plugin/JetLightCodeInsightFixtureTestCase.java
	jps-plugin/testData/incremental/pureKotlin/classRedeclaration/build.log
	jps-plugin/testData/incremental/withJava/javaUsedInKotlin/methodAddedInSuper/build.log
	jps-plugin/testData/incremental/withJava/javaUsedInKotlin/methodRenamed/build.log
	jps-plugin/testData/incremental/withJava/javaUsedInKotlin/samConversions/methodAdded/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/funRenamed/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/methodAddedInSuper/build.log
	jps-plugin/testData/incremental/withJava/kotlinUsedInJava/propertyRenamed/build.log
2014-11-27 15:47:46 +03:00
Nikolay Krasko
8430f15f43 Change android studio version pattern recognize (rc1 suffix added) 2014-11-21 18:59:34 +03:00
Nikolay Krasko
be3ab85c71 Change test data: in IDEA 13 in case of constant change recompile not all files but everything else 2014-11-21 16:20:35 +03:00
Nikolay Krasko
d7053c253e Method without name in Java is treated differently in Idea 13 and Idea 14 2014-11-20 22:01:23 +03:00
Nikolay Krasko
e3122fc2b3 Merge remote-tracking branch 'origin/HEAD' into idea13
Conflicts:
	update_dependencies.xml
2014-11-20 15:19:18 +03:00
Zalim Bashorov
0e82f7b9bc Fix after merge: fix again resolve values and valueOf of enums. 2014-11-13 21:17:53 +03:00
Zalim Bashorov
8882774930 Revert to use old API 2014-11-13 19:17:24 +03:00
Zalim Bashorov
217f824abe Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	core/descriptor.loader.java/src/org/jetbrains/jet/lang/resolve/java/lazy/descriptors/LazyJavaMemberScope.kt
	idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinObjectRenderer.kt
	jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilder.kt
	update_dependencies.xml
2014-11-13 19:14:17 +03:00
Zalim Bashorov
5dfaae54d7 Update to IDEA 135.1306 2014-11-13 17:44:44 +03:00
Nikolay Krasko
dd6d977823 Remove incremental compiler tests and modify test data for tests that can't be implemented in Idea 13 2014-11-11 19:08:35 +03:00
Nikolay Krasko
83b62a1d16 Merge remote-tracking branch 'origin/master' into idea13 2014-11-11 14:49:16 +03:00
Evgeny Gerashchenko
e04c207f4e Updated test data after unlucky merging... 2014-11-07 17:28:30 +03:00
Evgeny Gerashchenko
ae789ae816 Reverted reverting +1 in line numbers of debugger test, fixed test data introduced by merging with master. 2014-11-07 14:43:55 +03:00
Evgeny Gerashchenko
44c8741807 Merge branch 'master' into idea13
Conflicts:
	idea/testData/debugger/tinyApp/outs/skipClassloader.out
	update_dependencies.xml
2014-11-06 21:24:35 +03:00
Evgeny Gerashchenko
428e614766 Reverted "Debugger: implement getSourcePosition for fields"
Corresponding API is not present in IDEA 13
2014-11-06 15:51:52 +03:00
Evgeny Gerashchenko
4fc045a630 Merge branch 'master' into idea13
Conflicts:
	build.xml
	generators/src/org/jetbrains/jet/generators/tests/GenerateTests.kt
	idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinObjectRenderer.kt
	idea/testData/debugger/tinyApp/outs/delegatedPropertyInClass.out
	idea/testData/debugger/tinyApp/outs/frameAnonymousObject.out
	idea/testData/debugger/tinyApp/outs/frameExtFunExtFun.out
	idea/testData/debugger/tinyApp/outs/frameInnerLambda.out
	idea/testData/debugger/tinyApp/outs/frameLambda.out
	idea/testData/debugger/tinyApp/outs/frameSharedVar.out
	idea/testData/debugger/tinyApp/outs/frameSharedVarLocalVar.out
	idea/testData/debugger/tinyApp/outs/frameSimple.out
	idea/testData/debugger/tinyApp/outs/frameThis0.out
	idea/testData/debugger/tinyApp/outs/frameThis0Ext.out
	idea/testData/debugger/tinyApp/outs/frameThis0This0.out
	idea/testData/debugger/tinyApp/outs/toStringRenderer.out
	j2k/tests/test/org/jetbrains/jet/j2k/test/AbstractJavaToKotlinConverterTest.kt
	j2k/tests/test/org/jetbrains/jet/j2k/test/JavaToKotlinConverterForWebDemoTestGenerated.java
	update_dependencies.xml
2014-11-06 15:39:28 +03:00
Evgeny Gerashchenko
be5c460b6f Updated to IDEA 14 release (139.224.1) 2014-11-05 18:37:19 +03:00
Nikolay Krasko
5b926b682f Restore SmartCompletionPriorityWeigher lost in merge 2014-10-23 15:37:47 +04:00
Natalia Ukhorskaya
37b56a1cd2 Do not run J2KConverter tests in web demo mode for idea13 2014-10-23 12:31:41 +04:00
Andrey Breslav
f5a064e9d4 Compilation fixed 2014-10-22 21:09:57 +04:00
Andrey Breslav
050f09d4ce Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java
	idea/src/org/jetbrains/jet/plugin/completion/CompletionSorting.kt
	j2k/src/org/jetbrains/jet/j2k/JavaToKotlinTranslator.kt
2014-10-22 21:05:08 +04:00
Andrey Breslav
8fa3e8afd0 Tests fixed 2014-10-22 20:47:19 +04:00
Andrey Breslav
c41aa2e75c Reverting fff8bfff Debugger: do not throw exception on getting source position for Kotlin object
It is not compilable in IDEA 13
2014-10-22 15:47:43 +04:00
Andrey Breslav
0fef218403 Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	idea/src/org/jetbrains/jet/plugin/completion/KeywordCompletion.kt
	idea/tests/org/jetbrains/jet/plugin/refactoring/move/JetMoveTestGenerated.java
	jps-plugin/test/org/jetbrains/jet/jps/build/AbstractIncrementalJpsTest.kt
	update_dependencies.xml
2014-10-22 13:55:56 +04:00
Andrey Breslav
eb70d9b4be Merge branch 'master' into idea13 2014-10-15 14:36:49 +04:00
Natalia Ukhorskaya
145564c0e6 Android: navigate to resource
Implementation mostly copied from android plugin
 #KT-5596 Fixed
(cherry picked from commit ee33c09)
2014-10-14 15:35:15 +04:00
Natalia Ukhorskaya
4144587f5e Get android plugin from last android studio build 2014-10-14 15:35:14 +04:00
Pavel V. Talanov
190c721e71 Merge master into idea13 2014-10-13 19:58:44 +04:00
Pavel V. Talanov
be68f58633 Merge master into idea13 2014-10-13 19:52:01 +04:00
Natalia Ukhorskaya
d3f8fe2198 Merge branch 'origin/master' into idea13
Conflicts:
	idea/src/org/jetbrains/jet/plugin/codeInsight/KotlinCopyPasteReferenceProcessor.kt
2014-10-08 13:00:26 +04:00
Natalia Ukhorskaya
f9d943f0fa Fix OverrideImplement tests 2014-10-08 11:54:37 +04:00
Natalia Ukhorskaya
c8db7ccdaf Fix errors after merge 2014-10-07 12:57:42 +04:00
Natalia Ukhorskaya
f1da18e018 Android support: show errors from kotlin-gradle plugin in Messages View for idea13 2014-10-07 12:43:02 +04:00
Natalia Ukhorskaya
06ae5c0300 Merge branch 'master' into idea13
Conflicts:
	compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/KotlinWrappingLightClass.java
	idea/src/META-INF/plugin.xml
	idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt
	update_dependencies.xml
2014-10-07 12:38:14 +04:00
Zalim Bashorov
a822c517ba Fix build after merge. 2014-09-26 22:49:10 +04:00
Zalim Bashorov
4e12b48500 Merge remote-tracking branch 'remotes/origin/master' into idea13
Conflicts:
	idea/src/org/jetbrains/jet/plugin/conversion/copy/ConvertJavaCopyPastePostProcessor.kt
2014-09-26 21:18:22 +04:00
Zalim Bashorov
0cc918d18c Fix build after merge. 2014-09-26 15:17:53 +04:00
Zalim Bashorov
31ef63182f Merge remote-tracking branch 'remotes/origin/master' into idea13
Conflicts:
	idea/testData/debugger/tinyApp/outs/frameAnonymousObject.out
	idea/testData/debugger/tinyApp/outs/frameInnerLambda.out
	idea/testData/debugger/tinyApp/outs/frameLambda.out
	idea/testData/debugger/tinyApp/outs/frameLambdaNotUsed.out
	idea/testData/debugger/tinyApp/outs/frameObject.out
	idea/testData/debugger/tinyApp/outs/frameSharedVar.out
2014-09-26 14:14:12 +04:00
Zalim Bashorov
63f5dc8215 Fix after merge: fix resolve values and valueOf of enums. 2014-09-25 18:46:25 +04:00
Zalim Bashorov
73c3d5bb94 Fix after merge: disabled until MoveInnerClassUsagesHandler will be backported to IDEA 13 2014-09-25 18:33:40 +04:00
Zalim Bashorov
de2540ade8 Fix after merge: fix resolve values and valueOf of enums. 2014-09-25 18:31:49 +04:00
Zalim Bashorov
4ddb5849d9 Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	update_dependencies.xml
2014-09-24 14:11:56 +04:00
Zalim Bashorov
907851c198 Update to IDEA 135.1286 2014-09-24 14:06:17 +04:00
Natalia Ukhorskaya
65d0f3d717 Debugger: implement filters for old UI 2014-09-03 18:47:53 +04:00
Natalia Ukhorskaya
2be6bbba4f Merge branch 'master' into idea13
Conflicts:
	jps-plugin/test/org/jetbrains/jet/jps/build/AbstractIncrementalJpsTest.kt
	update_dependencies.xml
2014-09-03 12:36:22 +04:00
Nikolay Krasko
db53285bdc Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	.idea/libraries/idea_full.xml
	.idea/libraries/intellij_core_analysis.xml
	idea/src/org/jetbrains/jet/plugin/conversion/copy/ConvertJavaCopyPastePostProcessor.kt
	idea/tests/org/jetbrains/jet/plugin/debugger/KotlinDebuggerTestCase.java
	update_dependencies.xml
2014-08-29 13:46:04 +04:00
Nikolay Krasko
a862f5614b Revert sources roots 2014-08-21 14:31:22 +04:00
Nikolay Krasko
78c804f2a1 Revert test data changed for 138.1283.4 EAP 2014-08-21 13:19:50 +04:00
Nikolay Krasko
8f803b5681 Disable build artifact for upsource 2014-08-21 13:19:48 +04:00
Nikolay Krasko
a5f1da861a Revert configure environment 2014-08-21 13:19:40 +04:00
Nikolay Krasko
def48c60cc Revert api changes 2014-08-21 13:19:28 +04:00
Nikolay Krasko
bc0e0a83f6 Merge remote-tracking branch 'origin/master' into idea13
Conflicts:
	idea/src/org/jetbrains/jet/plugin/completion/weigher/JetCompletionSorting.kt
	idea/src/org/jetbrains/jet/plugin/conversion/copy/ConvertJavaCopyPastePostProcessor.kt
	idea/tests/org/jetbrains/jet/plugin/JetLightCodeInsightFixtureTestCase.java
	update_dependencies.xml
	JavaRuntimeDetectionUtil
        JsLibraryStdDetectionUtil
        CompletionSorting
        ...
2014-08-20 15:13:34 +04:00
Zalim Bashorov
be4a167900 Update to IDEA 135.1230 2014-07-25 17:15:40 +04:00
Zalim Bashorov
ccacc28cef Revert idea14 specific changes after merge -- fix testData for debugger 2014-07-25 17:15:39 +04:00
Zalim Bashorov
bab1615407 Revert idea14 specific changes after merge -- in code: VfsRootAccess -> VirtualDirectoryImpl 2014-07-25 14:54:41 +04:00
Zalim Bashorov
bda504d7da Revert idea14 specific changes after merge -- in code 2014-07-25 14:54:07 +04:00
Zalim Bashorov
d89a74b34c Revert idea14 specific changes after merge -- XMLs 2014-07-25 14:52:57 +04:00
Zalim Bashorov
596877eb6c Merge remote-tracking branch 'remotes/origin/master' into idea13 2014-07-24 15:41:19 +04:00
Andrey Breslav
fb9af72614 Fix EA-57538 - assert: IDELightClassGenerationSupport.getContextForPackage 2014-07-02 19:47:50 +04:00
Natalia Ukhorskaya
9b0f872769 Gradle plugin: unable to build project in multi flavor environment with gradle 0.11+
#KT-5348 Fixed
(cherry picked from commit 09e8d0d)
2014-07-02 14:24:49 +04:00
Andrey Breslav
1d650bf37d Change inspections' level to "WEAK WARNING" + disable "Explicit 'get'" by default 2014-07-02 14:03:52 +04:00
352 changed files with 1495 additions and 6876 deletions

View File

@@ -8,13 +8,7 @@
<root url="file://$PROJECT_DIR$/ideaSDK/plugins/android/lib/jps" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/android/android/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/android/android/common/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/android/android/rt/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/android/android/jps-plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/android/android/ultimate/src" />
</SOURCES>
<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>

View File

@@ -1,13 +0,0 @@
<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.zip!/plugins/coverage/src" />
</SOURCES>
</library>
</component>

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

@@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="gradle-plugin">
<CLASSES>
<root url="file://$PROJECT_DIR$/ideaSDK/plugins/gradle/lib" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="file://$PROJECT_DIR$/ideaSDK/plugins/gradle/lib" />
</SOURCES>
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/plugins/gradle/lib" recursive="false" />
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/plugins/gradle/lib" recursive="false" type="SOURCES" />
</library>
</component>

View File

@@ -4,11 +4,11 @@
<root url="file://$PROJECT_DIR$/annotations" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/ideaSDK/lib/guava-17.0.jar!/" />
<root url="jar://$PROJECT_DIR$/ideaSDK/lib/guava-14.0.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/guava-17.0-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/guava-14.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@@ -9,19 +9,16 @@
</CLASSES>
<JAVADOC />
<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$/dependencies/cli-parser-1.1.1-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-builders/java-test" />
<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" />
@@ -41,12 +38,10 @@
<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" />
@@ -59,10 +54,7 @@
<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" />
@@ -72,11 +64,7 @@
<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!/json/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/json/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/json/tests/test" />
<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" />
@@ -84,9 +72,8 @@
<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/dvcs-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/dvcs-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/dvcs/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/dvcs/testFramework" />
<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" />
@@ -100,7 +87,6 @@
<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" />
@@ -116,7 +102,6 @@
<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" />
@@ -124,8 +109,6 @@
<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" />
@@ -137,11 +120,9 @@
<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-api/vcs-api-core/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" />
@@ -150,6 +131,8 @@
<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/IdeaTestAssistant/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IdeaTestAssistant/testSrc" />
<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" />
@@ -157,20 +140,18 @@
<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/javaee-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" />
@@ -178,14 +159,13 @@
<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/devkit/resources" />
<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/editorconfig/src" />
<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" />
@@ -193,37 +173,30 @@
<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/testFramework" />
<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/gen" />
<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/resources" />
<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/engine/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/engine/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/plugin/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" />
@@ -234,8 +207,8 @@
<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/artifact-resolver-m3/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" />
@@ -245,16 +218,15 @@
<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/resources" />
<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" />
@@ -277,16 +249,7 @@
<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/course-creator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/course-creator/tests" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/learn-python/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/learn-python/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/learn-python/tests" />
<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/ipnb/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/ipnb/testSrc" />
<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" />
@@ -294,7 +257,6 @@
<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" />
@@ -322,6 +284,7 @@
<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/resources" />
<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" />
@@ -330,7 +293,6 @@
<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" />

View File

@@ -2,14 +2,15 @@
<library name="intellij-core">
<ANNOTATIONS>
<root url="file://$PROJECT_DIR$/annotations" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/" />
</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/guava-17.0-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/cli-parser-1.1.1-sources.jar!/" />
<root url="jar://$PROJECT_DIR$/dependencies/guava-14.0.1-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" />
@@ -19,6 +20,7 @@
<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" />
@@ -73,9 +75,6 @@
<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!/json/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/json/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/json/tests/test" />
<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" />
@@ -84,8 +83,6 @@
<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/dvcs-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/dvcs-impl/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" />
@@ -136,7 +133,6 @@
<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-api/vcs-api-core/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" />
@@ -184,7 +180,6 @@
<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/editorconfig/src" />
<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" />
@@ -195,9 +190,9 @@
<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/gen" />
<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" />
@@ -219,10 +214,8 @@
<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/engine/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/engine/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/plugin/test" />
<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" />
@@ -276,16 +269,9 @@
<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/course-creator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/course-creator/tests" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/learn-python/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/learn-python/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/learn-python/tests" />
<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/ipnb/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/ipnb/testSrc" />
<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" />

View File

@@ -5,22 +5,20 @@
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/" />
</ANNOTATIONS>
<CLASSES>
<root url="jar://$PROJECT_DIR$/ideaSDK/core-analysis/intellij-core-analysis.jar!/" />
<root url="file://$PROJECT_DIR$/ideaSDK/lib" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/dependencies/asm5-src.zip!/" />
<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-builders/java-test" />
<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" />
@@ -40,12 +38,10 @@
<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" />
@@ -58,10 +54,7 @@
<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" />
@@ -71,11 +64,7 @@
<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!/json/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/json/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/json/tests/test" />
<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" />
@@ -83,9 +72,8 @@
<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/dvcs-api/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/dvcs-impl/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/dvcs/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/platform/dvcs/testFramework" />
<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" />
@@ -99,7 +87,6 @@
<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" />
@@ -115,7 +102,6 @@
<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" />
@@ -123,8 +109,6 @@
<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" />
@@ -136,11 +120,9 @@
<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-api/vcs-api-core/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" />
@@ -149,6 +131,8 @@
<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/IdeaTestAssistant/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/IdeaTestAssistant/testSrc" />
<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" />
@@ -156,20 +140,18 @@
<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/javaee-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" />
@@ -177,14 +159,13 @@
<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/devkit/resources" />
<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/editorconfig/src" />
<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" />
@@ -192,37 +173,30 @@
<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/testFramework" />
<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/gen" />
<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/resources" />
<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/engine/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/engine/test" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/plugin/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/plugins/java-decompiler/plugin/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" />
@@ -233,8 +207,8 @@
<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/artifact-resolver-m3/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" />
@@ -244,16 +218,15 @@
<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/resources" />
<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" />
@@ -276,16 +249,7 @@
<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/course-creator/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/course-creator/tests" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/learn-python/gen" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/learn-python/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/edu/learn-python/tests" />
<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/ipnb/src" />
<root url="jar://$PROJECT_DIR$/ideaSDK/sources/sources.zip!/python/ipnb/testSrc" />
<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" />
@@ -293,7 +257,6 @@
<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" />
@@ -321,6 +284,7 @@
<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/resources" />
<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" />
@@ -329,10 +293,10 @@
<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" />
</SOURCES>
<jarDirectory url="file://$PROJECT_DIR$/ideaSDK/lib" recursive="false" />
</library>
</component>

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,$PROJECT_DIR$/out/artifacts/KotlinAndroidExtensions" />
<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 -Didea.plugins.path=$PROJECT_DIR$/out/artifacts/KotlinPlugins" />
<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" />
@@ -27,6 +27,7 @@
<option name="BuildArtifacts" enabled="true">
<artifact name="KotlinAndroidExtensions" />
</option>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea-runner/runner.xml" target="join-idea-plugins" />
</method>
</configuration>
</component>

View File

@@ -2,7 +2,7 @@
<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/KotlinAndroidExtensions -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 -Didea.plugins.path=$PROJECT_DIR$/out/artifacts/KotlinPlugins -Dkotlin.internal.mode.enabled=true" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/ideaSDK/bin" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
@@ -47,6 +47,7 @@
<artifact name="KotlinAndroidExtensions" />
</option>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea-runner/runner.xml" target="force-enable-kotlin-plugin" />
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea-runner/runner.xml" target="join-idea-plugins" />
</method>
</configuration>
</component>

View File

@@ -2,7 +2,7 @@
<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/KotlinAndroidExtensions -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 -Didea.plugins.path=$PROJECT_DIR$/out/artifacts/KotlinPlugins -Didea.ProcessCanceledException=disabled -Dkotlin.internal.mode.enabled=true" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/ideaSDK/bin" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
@@ -28,6 +28,7 @@
<artifact name="KotlinAndroidExtensions" />
</option>
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea-runner/runner.xml" target="force-enable-kotlin-plugin" />
<option name="AntTarget" enabled="true" antfile="file://$PROJECT_DIR$/idea-runner/runner.xml" target="join-idea-plugins" />
</method>
</configuration>
</component>

View File

@@ -0,0 +1,9 @@
<root>
<item
name='com.android.ide.common.blame.parser.PatternAwareOutputParser boolean parse(java.lang.String, com.android.ide.common.blame.parser.util.OutputLineReader, java.util.List&lt;com.android.ide.common.blame.output.GradleMessage&gt;, com.android.utils.ILogger)'>
<annotation name='kotlin.jvm.KotlinSignature'>
<val name="value"
val="&quot;fun parse(p0: String, p1: OutputLineReader, p2: List&lt;GradleMessage&gt;, p3: ILogger): Boolean&quot;"/>
</annotation>
</item>
</root>

View File

@@ -1,9 +0,0 @@
<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

@@ -0,0 +1,5 @@
<root>
<item name='com.intellij.openapi.progress.ProgressManager com.intellij.openapi.progress.ProgressManager getInstance()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -6,7 +6,15 @@
name='com.intellij.psi.stubs.AbstractStubIndex java.util.Collection&lt;Psi&gt; get(Key, com.intellij.openapi.project.Project, com.intellij.psi.search.GlobalSearchScope)'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
<item
name='com.intellij.psi.stubs.AbstractStubIndex java.util.Collection&lt;Psi&gt; get(Key, com.intellij.openapi.project.Project, com.intellij.psi.search.GlobalSearchScope) 0'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.psi.stubs.AbstractStubIndex java.util.Collection&lt;Psi&gt; get(Key, com.intellij.openapi.project.Project, com.intellij.psi.search.GlobalSearchScope) 1'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.psi.stubs.AbstractStubIndex java.util.Collection&lt;Psi&gt; get(Key, com.intellij.openapi.project.Project, com.intellij.psi.search.GlobalSearchScope) 2'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>

View File

@@ -0,0 +1,12 @@
<root>
<item name='com.intellij.util.containers.MultiMap java.util.Collection&lt;? extends V&gt; values()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item name='com.intellij.util.containers.MultiMap java.util.Set&lt;K&gt; keySet()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
<item
name='com.intellij.util.containers.MultiMap java.util.Set&lt;java.util.Map.Entry&lt;K,java.util.Collection&lt;V&gt;&gt;&gt; entrySet()'>
<annotation name='org.jetbrains.annotations.NotNull'/>
</item>
</root>

View File

@@ -85,9 +85,7 @@
<pathelement location="${idea.sdk}/lib/javac2.jar"/>
<pathelement location="${idea.sdk}/lib/asm-all.jar"/>
</path>
<taskdef name="javac2" classname="com.intellij.ant.Javac2" classpathref="javac2.classpath" loaderref="javac2.loader"/>
<typedef name="skip" classname="com.intellij.ant.ClassFilterAnnotationRegexp" classpathref="javac2.classpath"
loaderref="javac2.loader"/>
<taskdef name="javac2" classname="com.intellij.ant.Javac2" classpathref="javac2.classpath"/>
<echo message="Use javac2 from Idea lib"/>
</then>
<else>
@@ -496,7 +494,6 @@
<javac2 destdir="${output}/classes/compiler" debug="true" debuglevel="lines,vars,source" includeAntRuntime="false"
source="${java.target}" target="${java.target}">
<withKotlin externalannotations="${external.annotations.path}"/>
<skip pattern="kotlin/jvm/internal/.*"/>
<src refid="compilerSources.path"/>
<classpath refid="classpath"/>
</javac2>
@@ -681,6 +678,8 @@
</src>
<classpath>
<pathelement path="${idea.sdk}/core/intellij-core.jar"/>
<pathelement path="${idea.sdk}/lib/idea.jar"/>
<pathelement path="${idea.sdk}/lib/openapi.jar"/>
<pathelement path="${idea.sdk}/core-analysis/intellij-core-analysis.jar"/>
<pathelement path="${kotlin-home}/lib/kotlin-compiler.jar"/>
<pathelement path="${bootstrap.runtime}"/>
@@ -699,7 +698,6 @@
<javac2 destdir="${output}/classes/ant" debug="true" debuglevel="lines,vars,source" includeAntRuntime="false"
source="${java.target}" target="${java.target}">
<withKotlin externalannotations="${external.annotations.path}"/>
<skip pattern="kotlin/jvm/internal/.*"/>
<src>
<dirset dir="${basedir}/ant">
<include name="src"/>
@@ -740,6 +738,7 @@
<macrodef name="new-kotlinc">
<attribute name="output"/>
<attribute name="withJava" default="true"/>
<element name="src"/>
<element name="class-path"/>
@@ -776,15 +775,19 @@
<arg value="${toString:classpath.path}"/>
</java>
<javac2 srcdir="${toString:src.dirset}" destdir="@{output}" debug="true" debuglevel="lines,vars,source"
includeAntRuntime="false" source="${java.target}" target="${java.target}">
<skip pattern="kotlin/jvm/internal/.*"/>
<classpath>
<path refid="classpath.path"/>
<!-- Include @{output} here for Java compiler to resolve symbols from Kotlin sources -->
<pathelement location="@{output}"/>
</classpath>
</javac2>
<if>
<equals arg1="@{withJava}" arg2="true"/>
<then>
<javac2 srcdir="${toString:src.dirset}" destdir="@{output}" debug="true" debuglevel="lines,vars,source"
includeAntRuntime="false" source="${java.target}" target="${java.target}">
<classpath>
<path refid="classpath.path"/>
<!-- Include @{output} here for Java compiler to resolve symbols from Kotlin sources -->
<pathelement location="@{output}"/>
</classpath>
</javac2>
</then>
</if>
</sequential>
</macrodef>
@@ -802,7 +805,7 @@
</target>
<target name="stdlib">
<new-kotlinc output="${output}/classes/stdlib">
<new-kotlinc output="${output}/classes/stdlib" withJava="false">
<src>
<include name="libraries/stdlib/src"/>
</src>
@@ -943,7 +946,6 @@
<javac2 destdir="${output}/classes/idea-analysis" debug="true" debuglevel="lines,vars,source" includeAntRuntime="false"
source="${java.target}" target="${java.target}">
<withKotlin externalannotations="${external.annotations.path}"/>
<skip pattern="kotlin/jvm/internal/.*"/>
<src>
<dirset dir="${basedir}/idea/ide-common" includes="src"/>
<dirset dir="${basedir}/idea/idea-analysis" includes="src"/>
@@ -1012,5 +1014,5 @@
<target name="build-bootstrap-artifacts" depends="dist,zip-compiler"/>
<target name="build-artifacts" depends="dist,zip-compiler,kotlin-for-upsource,zip-test-data"/>
<target name="build-artifacts" depends="dist,zip-compiler"/>
</project>

View File

@@ -0,0 +1,69 @@
/*
* 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 com.intellij.ide.plugins;
import com.intellij.openapi.extensions.ExtensionPoint;
import com.intellij.openapi.extensions.ExtensionsArea;
import com.intellij.util.containers.ContainerUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.kotlin.utils.UtilsPackage;
import java.io.File;
import java.lang.reflect.Method;
import java.util.List;
import java.util.Set;
// TODO drop this temporary hack to access to PluginManagerCore methods when CoreApplicationEnvironment got similar features.
public class PluginManagerCoreProxy {
private PluginManagerCoreProxy() {}
@Nullable
public static IdeaPluginDescriptorImpl loadDescriptorFromDir(@NotNull File file, @NotNull String fileName) {
return PluginManagerCore.loadDescriptorFromDir(file, fileName);
}
@Nullable
public static IdeaPluginDescriptorImpl loadDescriptorFromJar(@NotNull File file, @NotNull String fileName) {
try {
Method loadDescriptorFromJar = PluginManagerCore.class.getDeclaredMethod("loadDescriptorFromJar", File.class, String.class);
loadDescriptorFromJar.setAccessible(true);
return (IdeaPluginDescriptorImpl) loadDescriptorFromJar.invoke(null, file, fileName);
}
catch (Exception e) {
throw UtilsPackage.rethrow(e);
}
}
// copied as is from PluginManagerCore#registerExtensionPointsAndExtensions
public static void registerExtensionPointsAndExtensions(ExtensionsArea area, List<IdeaPluginDescriptorImpl> loadedPlugins) {
for (IdeaPluginDescriptorImpl descriptor : loadedPlugins) {
descriptor.registerExtensionPoints(area);
}
Set<String> epNames = ContainerUtil.newHashSet();
for (ExtensionPoint point : area.getExtensionPoints()) {
epNames.add(point.getName());
}
for (IdeaPluginDescriptorImpl descriptor : loadedPlugins) {
for (String epName : epNames) {
descriptor.registerExtensions(area, epName);
}
}
}
}

View File

@@ -17,46 +17,35 @@
package org.jetbrains.kotlin.cli.jvm.compiler;
import com.google.common.collect.Sets;
import com.intellij.codeInsight.ContainerProvider;
import com.intellij.codeInsight.ExternalAnnotationsManager;
import com.intellij.codeInsight.runner.JavaMainMethodProvider;
import com.intellij.core.CoreApplicationEnvironment;
import com.intellij.core.CoreJavaFileManager;
import com.intellij.core.JavaCoreApplicationEnvironment;
import com.intellij.core.JavaCoreProjectEnvironment;
import com.intellij.ide.plugins.IdeaPluginDescriptorImpl;
import com.intellij.ide.plugins.PluginManagerCoreProxy;
import com.intellij.lang.java.JavaParserDefinition;
import com.intellij.mock.MockApplication;
import com.intellij.mock.MockProject;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.application.Application;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.components.ServiceManager;
import com.intellij.openapi.extensions.Extensions;
import com.intellij.openapi.extensions.ExtensionsArea;
import com.intellij.openapi.fileTypes.ContentBasedFileSubstitutor;
import com.intellij.openapi.fileTypes.FileTypeExtensionPoint;
import com.intellij.openapi.fileTypes.PlainTextFileType;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Disposer;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.FileContextProvider;
import com.intellij.psi.PsiElementFinder;
import com.intellij.psi.PsiManager;
import com.intellij.psi.augment.PsiAugmentProvider;
import com.intellij.psi.compiled.ClassFileDecompilers;
import com.intellij.psi.impl.PsiElementFinderImpl;
import com.intellij.psi.impl.PsiTreeChangePreprocessor;
import com.intellij.psi.impl.compiled.ClsCustomNavigationPolicy;
import com.intellij.psi.impl.compiled.ClsStubBuilderFactory;
import com.intellij.psi.impl.file.impl.JavaFileManager;
import com.intellij.psi.meta.MetaDataContributor;
import com.intellij.psi.stubs.BinaryFileStubBuilders;
import com.intellij.util.containers.ContainerUtil;
import kotlin.Function1;
import kotlin.Unit;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.TestOnly;
import org.jetbrains.kotlin.codegen.extensions.ExpressionCodegenExtension;
import org.jetbrains.kotlin.extensions.ExternalDeclarationsProvider;
import org.jetbrains.kotlin.asJava.JavaElementFinder;
import org.jetbrains.kotlin.asJava.KotlinLightClassForPackage;
import org.jetbrains.kotlin.asJava.LightClassGenerationSupport;
@@ -65,11 +54,9 @@ import org.jetbrains.kotlin.cli.common.messages.CompilerMessageLocation;
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity;
import org.jetbrains.kotlin.cli.common.messages.MessageCollector;
import org.jetbrains.kotlin.cli.jvm.JVMConfigurationKeys;
import org.jetbrains.kotlin.codegen.extensions.ExpressionCodegenExtension;
import org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar;
import org.jetbrains.kotlin.config.CommonConfigurationKeys;
import org.jetbrains.kotlin.config.CompilerConfiguration;
import org.jetbrains.kotlin.extensions.ExternalDeclarationsProvider;
import org.jetbrains.kotlin.idea.JetFileType;
import org.jetbrains.kotlin.load.kotlin.KotlinBinaryClassCache;
import org.jetbrains.kotlin.load.kotlin.VirtualFileFinderFactory;
@@ -170,8 +157,6 @@ public class JetCoreEnvironment {
@NotNull CompilerConfiguration configuration,
@NotNull List<String> configFilePaths
) {
Extensions.cleanRootArea(parentDisposable);
registerAppExtensionPoints();
JavaCoreApplicationEnvironment applicationEnvironment = new JavaCoreApplicationEnvironment(parentDisposable);
for (String configPath : configFilePaths) {
@@ -184,39 +169,23 @@ public class JetCoreEnvironment {
return applicationEnvironment;
}
private static void registerAppExtensionPoints() {
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), ContentBasedFileSubstitutor.EP_NAME, ContentBasedFileSubstitutor.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), BinaryFileStubBuilders.EP_NAME, FileTypeExtensionPoint.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), FileContextProvider.EP_NAME, FileContextProvider.class);
//
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), MetaDataContributor.EP_NAME, MetaDataContributor.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), ClsStubBuilderFactory.EP_NAME, ClsStubBuilderFactory.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), PsiAugmentProvider.EP_NAME, PsiAugmentProvider.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), JavaMainMethodProvider.EP_NAME, JavaMainMethodProvider.class);
//
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), ContainerProvider.EP_NAME, ContainerProvider.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), ClsCustomNavigationPolicy.EP_NAME, ClsCustomNavigationPolicy.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), ClassFileDecompilers.EP_NAME,
ClassFileDecompilers.Decompiler.class);
}
private static void registerApplicationExtensionPointsAndExtensionsFrom(@NotNull CompilerConfiguration configuration, @NotNull String configFilePath) {
IdeaPluginDescriptorImpl descriptor;
CompilerJarLocator locator = configuration.get(JVMConfigurationKeys.COMPILER_JAR_LOCATOR);
File pluginRoot = locator == null ? PathUtil.getPathUtilJar() : locator.getCompilerJar();
Application app = ApplicationManager.getApplication();
File parentFile = pluginRoot.getParentFile();
if (pluginRoot.isDirectory() &&
app != null && app.isUnitTestMode() &&
FileUtil.toCanonicalPath(parentFile.getPath()).endsWith("out/production")
) {
File jar = locator == null ? PathUtil.getPathUtilJar() : locator.getCompilerJar();
if (jar.isFile()) {
descriptor = PluginManagerCoreProxy.loadDescriptorFromJar(jar, configFilePath);
}
else {
// hack for load extensions when compiler run directly from out directory(e.g. in tests)
File srcDir = parentFile.getParentFile().getParentFile();
pluginRoot = new File(srcDir, "idea/src");
File srcDir = jar.getParentFile().getParentFile().getParentFile();
File pluginDir = new File(srcDir, "idea/src");
descriptor = PluginManagerCoreProxy.loadDescriptorFromDir(pluginDir, configFilePath);
}
CoreApplicationEnvironment.registerExtensionPointAndExtensions(pluginRoot, configFilePath, Extensions.getRootArea());
assert descriptor != null : "Can not load descriptor from " + configFilePath + " relative to " + jar;
PluginManagerCoreProxy.registerExtensionPointsAndExtensions(Extensions.getRootArea(), Collections.singletonList(descriptor));
}
private static void registerApplicationServicesForCLI(@NotNull JavaCoreApplicationEnvironment applicationEnvironment) {
@@ -251,12 +220,7 @@ public class JetCoreEnvironment {
this.configuration = configuration.copy();
this.configuration.setReadOnly(true);
projectEnvironment = new JavaCoreProjectEnvironment(parentDisposable, applicationEnvironment){
@Override
protected void preregisterServices() {
registerProjectExtensionPoints(Extensions.getArea(getProject()));
}
};
projectEnvironment = new JavaCoreProjectEnvironment(parentDisposable, applicationEnvironment);
MockProject project = projectEnvironment.getProject();
annotationsManager = new CoreExternalAnnotationsManager(project.getComponent(PsiManager.class));
@@ -266,6 +230,12 @@ public class JetCoreEnvironment {
registerProjectServicesForCLI(projectEnvironment);
registerProjectServices(projectEnvironment);
// This extension points should be registered in JavaCoreApplicationEnvironment
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), ClsCustomNavigationPolicy.EP_NAME,
ClsCustomNavigationPolicy.class);
CoreApplicationEnvironment.registerExtensionPoint(Extensions.getRootArea(), ClassFileDecompilers.EP_NAME,
ClassFileDecompilers.Decompiler.class);
for (File path : configuration.getList(JVMConfigurationKeys.CLASSPATH_KEY)) {
addToClasspath(path);
}
@@ -307,11 +277,6 @@ public class JetCoreEnvironment {
}
}
private static void registerProjectExtensionPoints(ExtensionsArea area) {
CoreApplicationEnvironment.registerExtensionPoint(area, PsiTreeChangePreprocessor.EP_NAME, PsiTreeChangePreprocessor.class);
CoreApplicationEnvironment.registerExtensionPoint(area, PsiElementFinder.EP_NAME, PsiElementFinder.class);
}
// made public for Upsource
public static void registerProjectServices(@NotNull JavaCoreProjectEnvironment projectEnvironment) {
MockProject project = projectEnvironment.getProject();
@@ -328,13 +293,8 @@ public class JetCoreEnvironment {
project.registerService(LightClassGenerationSupport.class, cliLightClassGenerationSupport);
project.registerService(CliLightClassGenerationSupport.class, cliLightClassGenerationSupport);
project.registerService(CodeAnalyzerInitializer.class, cliLightClassGenerationSupport);
ExtensionsArea area = Extensions.getArea(project);
area.getExtensionPoint(PsiElementFinder.EP_NAME)
.registerExtension(new PsiElementFinderImpl(project, ServiceManager.getService(project, JavaFileManager.class)));
area.getExtensionPoint(PsiElementFinder.EP_NAME)
Extensions.getArea(project)
.getExtensionPoint(PsiElementFinder.EP_NAME)
.registerExtension(new JavaElementFinder(project, cliLightClassGenerationSupport));
}

View File

@@ -17,7 +17,6 @@
package org.jetbrains.kotlin.load.java.structure.impl;
import com.intellij.psi.PsiParameter;
import com.intellij.psi.impl.compiled.ClsParameterImpl;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.kotlin.load.java.structure.JavaAnnotation;
@@ -48,12 +47,7 @@ public class JavaValueParameterImpl extends JavaElementImpl<PsiParameter> implem
@Override
@Nullable
public Name getName() {
PsiParameter psi = getPsi();
if (psi instanceof ClsParameterImpl && ((ClsParameterImpl) psi).isAutoGeneratedName()) {
return null;
}
String name = psi.getName();
String name = getPsi().getName();
return name == null ? null : Name.identifier(name);
}

View File

@@ -30,7 +30,6 @@ import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiElementFinder;
import com.intellij.psi.PsiManager;
import com.intellij.psi.PsiPackage;
import com.intellij.psi.impl.PsiElementFinderImpl;
import com.intellij.psi.impl.file.PsiPackageImpl;
import com.intellij.psi.impl.file.impl.JavaFileManager;
import com.intellij.psi.search.GlobalSearchScope;
@@ -88,9 +87,10 @@ public class KotlinJavaPsiFacade {
}
public PsiClass findClass(@NotNull String qualifiedName, @NotNull GlobalSearchScope scope) {
ProgressIndicatorProvider.checkCanceled(); // We hope this method is being called often enough to cancel daemon processes smoothly
ProgressIndicatorProvider.checkCanceled();
if (shouldUseSlowResolve()) {
// TODO: Update in IDEA 14
if (DumbService.getInstance(getProject()).isDumb()) {
PsiClass[] classes = findClassesInDumbMode(qualifiedName, scope);
if (classes.length != 0) {
return classes[0];
@@ -127,11 +127,6 @@ public class KotlinJavaPsiFacade {
return pkg.findClassByShortName(className, scope);
}
private boolean shouldUseSlowResolve() {
DumbService dumbService = DumbService.getInstance(getProject());
return dumbService.isDumb() && dumbService.isAlternativeResolveEnabled();
}
@NotNull
private KotlinPsiElementFinderWrapper[] finders() {
KotlinPsiElementFinderWrapper[] answer = elementFinders;
@@ -152,7 +147,8 @@ public class KotlinJavaPsiFacade {
getProject().getExtensions(PsiElementFinder.EP_NAME), new Function1<PsiElementFinder, Boolean>() {
@Override
public Boolean invoke(PsiElementFinder finder) {
return !(finder instanceof KotlinFinderMarker || finder instanceof PsiElementFinderImpl);
// TODO: Filter out PsiElementFinderImpl in idea 14
return !(finder instanceof KotlinFinderMarker);
}
});

View File

@@ -22,9 +22,9 @@ import org.jetbrains.kotlin.JetNodeTypes
import org.jetbrains.kotlin.lexer.JetTokens
public abstract class JetDoubleColonExpression(node: ASTNode) : JetExpressionImpl(node) {
public fun getTypeReference(): JetTypeReference? = findChildByType(JetNodeTypes.TYPE_REFERENCE)
public fun getTypeReference(): JetTypeReference? = findChildByType(JetNodeTypes.TYPE_REFERENCE) as JetTypeReference?
public fun getDoubleColonTokenReference(): PsiElement = findChildByType(JetTokens.COLONCOLON)
public fun getDoubleColonTokenReference(): PsiElement = findChildByType(JetTokens.COLONCOLON)!!
override fun <R, D> accept(visitor: JetVisitor<R, D>, data: D): R {
return visitor.visitDoubleColonExpression(this, data)

View File

@@ -16,13 +16,17 @@
package org.jetbrains.kotlin.psi.psiUtil
import com.intellij.psi.AbstractElementManipulator
import org.jetbrains.kotlin.psi.JetStringTemplateExpression
import com.intellij.openapi.util.TextRange
import org.jetbrains.kotlin.psi.JetPsiFactory
import com.intellij.openapi.util.text.StringUtil
import com.intellij.psi.ElementManipulator
public class JetStringTemplateExpressionManipulator : ElementManipulator<JetStringTemplateExpression> {
override fun handleContentChange(element: JetStringTemplateExpression?, newContent: String?): JetStringTemplateExpression? {
return handleContentChange(element!!, getRangeInElement(element), newContent!!)
}
public class JetStringTemplateExpressionManipulator : AbstractElementManipulator<JetStringTemplateExpression>() {
override fun handleContentChange(element: JetStringTemplateExpression, range: TextRange, newContent: String): JetStringTemplateExpression? {
val node = element.getNode()
val content = if (element.isSingleQuoted()) StringUtil.escapeStringCharacters(newContent) else newContent

View File

@@ -16,13 +16,18 @@
package org.jetbrains.kotlin.psi.psiUtil
import com.intellij.psi.AbstractElementManipulator
import org.jetbrains.kotlin.psi.JetStringTemplateExpression
import com.intellij.openapi.util.TextRange
import org.jetbrains.kotlin.psi.JetPsiFactory
import com.intellij.openapi.util.text.StringUtil
import com.intellij.psi.ElementManipulator
public class StringTemplateExpressionManipulator: ElementManipulator<JetStringTemplateExpression> {
override fun handleContentChange(element: JetStringTemplateExpression?, newContent: String?): JetStringTemplateExpression? {
return handleContentChange(element!!, getRangeInElement(element), newContent!!)
}
public class StringTemplateExpressionManipulator: AbstractElementManipulator<JetStringTemplateExpression>() {
override fun handleContentChange(element: JetStringTemplateExpression, range: TextRange, newContent: String): JetStringTemplateExpression? {
val node = element.getNode()
val content = if (node.getFirstChildNode().getTextLength() == 1) StringUtil.escapeStringCharacters(newContent) else newContent

View File

@@ -0,0 +1,22 @@
package org.jetbrains.kotlin.resolve;
import com.intellij.openapi.util.ModificationTracker;
import java.util.concurrent.atomic.AtomicIntegerFieldUpdater;
//NOTE: copied to support changes depending on IDEA 14 branch
public class SimpleModificationTracker implements ModificationTracker {
public volatile int myCounter;
@Override
public long getModificationCount() {
return myCounter;
}
private static final AtomicIntegerFieldUpdater<SimpleModificationTracker> UPDATER =
AtomicIntegerFieldUpdater.newUpdater(SimpleModificationTracker.class, "myCounter");
public void incModificationCount() {
UPDATER.incrementAndGet(this);
}
}

View File

@@ -18,12 +18,20 @@ package org.jetbrains.kotlin.resolve.diagnostics
import org.jetbrains.kotlin.diagnostics.Diagnostic
import java.util.ArrayList
import com.intellij.openapi.util.CompositeModificationTracker
import com.intellij.util.CachedValueImpl
import com.intellij.psi.util.CachedValueProvider
import com.intellij.psi.PsiElement
import org.jetbrains.annotations.TestOnly
import org.jetbrains.kotlin.resolve.BindingContext
import com.intellij.openapi.util.ModificationTracker
import org.jetbrains.kotlin.resolve.SimpleModificationTracker
//NOTE: copied to support changes depending on IDEA 14 branch
private class CompositeModificationTracker(val additionalTracker: ModificationTracker) : SimpleModificationTracker() {
override fun getModificationCount(): Long {
return super.getModificationCount() + additionalTracker.getModificationCount()
}
}
public class MutableDiagnosticsWithSuppression(
private val bindingContext: BindingContext,

View File

@@ -23,14 +23,14 @@ import org.jetbrains.kotlin.resolve.BindingTrace
import org.jetbrains.kotlin.util.slicedMap.ReadOnlySlice
import org.jetbrains.kotlin.util.slicedMap.WritableSlice
import org.jetbrains.kotlin.resolve.diagnostics.Diagnostics
import com.intellij.util.containers.ContainerUtil
import com.intellij.util.containers.ConcurrentSoftValueHashMap
public class LockBasedLazyResolveStorageManager(private val storageManager: StorageManager): StorageManager by storageManager, LazyResolveStorageManager {
override fun <K, V> createSoftlyRetainedMemoizedFunction(compute: Function1<K, V>) =
storageManager.createMemoizedFunction<K, V>(compute, ContainerUtil.createConcurrentSoftValueMap<K, Any>())
storageManager.createMemoizedFunction<K, V>(compute, ConcurrentSoftValueHashMap<K, Any>())
override fun <K, V> createSoftlyRetainedMemoizedFunctionWithNullableValues(compute: Function1<K, V>) =
storageManager.createMemoizedFunctionWithNullableValues<K, V>(compute, ContainerUtil.createConcurrentSoftValueMap<K, Any>())
storageManager.createMemoizedFunctionWithNullableValues<K, V>(compute, ConcurrentSoftValueHashMap<K, Any>())
// It seems safe to have a separate lock for traces:
// no other locks will be acquired inside the trace operations

View File

@@ -212,7 +212,7 @@ public class JavaElementFinder extends PsiElementFinder implements KotlinFinderM
return answer.toArray(new PsiClass[answer.size()]);
}
@Override
// implements a method added in 14.1
@NotNull
public PsiFile[] getPackageFiles(@NotNull PsiPackage psiPackage, @NotNull GlobalSearchScope scope) {
FqName packageFQN = new FqName(psiPackage.getQualifiedName());
@@ -220,12 +220,13 @@ public class JavaElementFinder extends PsiElementFinder implements KotlinFinderM
return result.toArray(new PsiFile[result.size()]);
}
@Override
// implements a method added in IDEA 14.1
@SuppressWarnings({"UnusedDeclaration", "MethodMayBeStatic"})
@Nullable
public Condition<PsiFile> getPackageFilesFilter(@NotNull final PsiPackage psiPackage, @NotNull GlobalSearchScope scope) {
return new Condition<PsiFile>() {
@Override
public boolean value(PsiFile input) {
public boolean value(@Nullable PsiFile input) {
if (!(input instanceof JetFile)) {
return true;
}

View File

@@ -162,17 +162,6 @@ public abstract class KotlinWrappingLightClass extends AbstractLightClass implem
});
}
@Override
public boolean processDeclarations(
@NotNull PsiScopeProcessor processor, @NotNull ResolveState state, PsiElement lastParent, @NotNull PsiElement place
) {
if (isEnum()) {
if (!PsiClassImplUtil.processDeclarationsInEnum(processor, state, myInnersCache)) return false;
}
return super.processDeclarations(processor, state, lastParent, place);
}
@Override
public String getText() {
JetClassOrObject origin = getOrigin();

View File

@@ -11,7 +11,7 @@ public class Nameless {
import p.*
class K : <!INVISIBLE_MEMBER!>Nameless<!>() {
class K : Nameless() {
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {}
val<!SYNTAX!><!> : Int = 1
}
}

View File

@@ -58,7 +58,8 @@ public abstract class KotlinIntegrationTestBase {
protected abstract File getTestDataDir();
protected int runJava(String logName, String... arguments) throws Exception {
GeneralCommandLine commandLine = new GeneralCommandLine().withWorkDirectory(getTestDataDir());
GeneralCommandLine commandLine = new GeneralCommandLine();
commandLine.setWorkDirectory(getTestDataDir());
commandLine.setExePath(getJavaRuntime().getAbsolutePath());
commandLine.addParameters(arguments);

View File

@@ -89,6 +89,23 @@ public final class DescriptorResolverUtils {
return null;
}
/**
* @return true if {@code method} is a static method of enum class, which is to be put into its class object (and not into the
* corresponding package). This applies to values() and valueOf(String) methods
*/
public static boolean shouldBeInEnumClassObject(@NotNull JavaMethod method) {
if (!method.getContainingClass().isEnum()) return false;
String name = method.getName().asString();
if (name.equals("values")) {
return method.getValueParameters().isEmpty();
}
else if (name.equals("valueOf")) {
return isMethodWithOneParameterWithFqName(method, "java.lang.String");
}
return false;
}
public static boolean isObjectMethodInInterface(@NotNull JavaMember member) {
return member.getContainingClass().isInterface() && member instanceof JavaMethod && isObjectMethod((JavaMethod) member);
}

View File

@@ -46,6 +46,7 @@ import org.jetbrains.kotlin.resolve.jvm.PLATFORM_TYPES
import org.jetbrains.kotlin.descriptors.annotations.Annotations
import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter
import org.jetbrains.kotlin.resolve.scopes.DescriptorKindExclude.NonExtensions
import org.jetbrains.kotlin.load.java.components.DescriptorResolverUtils
public abstract class LazyJavaMemberScope(
protected val c: LazyJavaResolverContext,
@@ -79,6 +80,8 @@ public abstract class LazyJavaMemberScope(
val result = LinkedHashSet<SimpleFunctionDescriptor>()
for (method in memberIndex().findMethodsByName(name)) {
if (DescriptorResolverUtils.shouldBeInEnumClassObject(method)) continue
val descriptor = resolveMethodToFunctionDescriptor(method, true)
result.add(descriptor)
result.addIfNotNull(c.samConversionResolver.resolveSamAdapter(descriptor))

View File

@@ -54,7 +54,7 @@ import org.jetbrains.kotlin.idea.codeInsight.surroundWith.AbstractSurroundWithTe
import org.jetbrains.kotlin.idea.codeInsight.unwrap.AbstractUnwrapRemoveTest
import org.jetbrains.kotlin.idea.configuration.AbstractConfigureProjectByChangingFileTest
import org.jetbrains.kotlin.idea.conversion.copy.AbstractJavaToKotlinCopyPasteConversionTest
import org.jetbrains.kotlin.idea.coverage.AbstractKotlinCoverageOutputFilesTest
// import org.jetbrains.kotlin.idea.coverage.AbstractKotlinCoverageOutputFilesTest
import org.jetbrains.kotlin.idea.debugger.AbstractJetPositionManagerTest
import org.jetbrains.kotlin.idea.debugger.AbstractKotlinSteppingTest
import org.jetbrains.kotlin.idea.debugger.AbstractSmartStepIntoTest
@@ -662,9 +662,13 @@ fun main(args: Array<String>) {
model("debugger/selectExpression/disallowMethodCalls", testMethod = "doTestWoMethodCalls")
}
/*
No coverage in idea 13
testClass(javaClass<AbstractKotlinCoverageOutputFilesTest>()) {
model("coverage/outputFiles")
}
*/
testClass(javaClass<AbstractReferenceResolveTest>(), "org.jetbrains.kotlin.idea.kdoc.KdocResolveTestGenerated") {
model("kdoc/resolve")

View File

@@ -36,6 +36,13 @@
</if>
</target>
<target name="join-idea-plugins">
<delete dir="${basedir}/../out/artifacts/KotlinPlugins"/>
<mkdir dir="${basedir}/../out/artifacts/KotlinPlugins"/>
<copydir src="${basedir}/../out/artifacts/Kotlin" dest="${basedir}/../out/artifacts/KotlinPlugins/Kotlin" />
<copydir src="${basedir}/../out/artifacts/KotlinAndroidExtensions" dest="${basedir}/../out/artifacts/KotlinPlugins/KotlinAndroidExtensions" />
</target>
<target name="copy-runtime-for-idea-plugin">
<!-- For local build and the first (bootstrap) step of the build, IDEA plugin needs the runtime it was compiled against -->
<!-- Otherwise (on the second step of the build) we distribute the same runtime in the compiler and the plugin -->

View File

@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.idea.caches.resolve
import com.intellij.openapi.util.SimpleModificationTracker
import com.intellij.openapi.util.DefaultModificationTracker
import com.intellij.openapi.project.Project
import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.vfs.VirtualFileManager
@@ -30,7 +30,7 @@ import com.intellij.codeInsight.ExternalAnnotationsManager
import com.intellij.codeInsight.ExternalAnnotationsListener
import com.intellij.psi.PsiModifierListOwner
class LibraryModificationTracker(project: Project) : SimpleModificationTracker() {
class LibraryModificationTracker(project: Project) : DefaultModificationTracker() {
class object {
platformStatic fun getInstance(project: Project) = ServiceManager.getService(project, javaClass<LibraryModificationTracker>())!!
}

View File

@@ -28,7 +28,7 @@ import com.intellij.openapi.vfs.VirtualFileEvent
import com.intellij.openapi.vfs.VirtualFileMoveEvent
import com.intellij.openapi.vfs.VirtualFileCopyEvent
import com.intellij.openapi.vfs.VirtualFilePropertyEvent
import com.intellij.openapi.util.SimpleModificationTracker
import com.intellij.openapi.util.DefaultModificationTracker
import kotlin.platform.platformStatic
class ModuleTypeCacheManager private (project: Project) {
@@ -43,7 +43,7 @@ class ModuleTypeCacheManager private (project: Project) {
(module: Module?) ->
val moduleType = if (module != null) computeType(module) else null
CachedValueProvider.Result.create<ModuleType>(moduleType, vfsModificationTracker)
}, false)
}, false)!!
fun isGradleModule(module: Module) = getModuleType(module) == ModuleType.GRADLE
@@ -51,7 +51,7 @@ class ModuleTypeCacheManager private (project: Project) {
return cachedValue.getValue(module)
}
private class VfsModificationTracker(project: Project): SimpleModificationTracker() {
private class VfsModificationTracker(project: Project): DefaultModificationTracker() {
{
val connection = project.getMessageBus().connect();
connection.subscribe(VirtualFileManager.VFS_CHANGES, BulkVirtualFileListenerAdapter(

View File

@@ -29,12 +29,12 @@ import com.intellij.openapi.util.Key
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.psi.util.CachedValueProvider
import com.intellij.psi.util.CachedValuesManager
import com.intellij.testFramework.BinaryLightVirtualFile
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
import org.jetbrains.kotlin.descriptors.PackageFragmentDescriptor
import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl
import org.jetbrains.kotlin.idea.caches.resolve.LIBRARY_NAME_PREFIX
import org.jetbrains.kotlin.idea.decompiler.navigation.files
import org.jetbrains.kotlin.idea.framework.JsHeaderLibraryDetectionUtil
import org.jetbrains.kotlin.idea.project.ProjectStructureUtil
import org.jetbrains.kotlin.name.FqName
@@ -147,7 +147,7 @@ class JsMetaFileVirtualFileHolder private(val myProject: Project) {
return result
}
private inner class JsMetaFileBinaryLightVirtualFile(name: String) : BinaryLightVirtualFile(name) {
private inner class JsMetaFileBinaryLightVirtualFile(name: String) : files.BinaryLightVirtualFile(name) {
override fun getFileType(): FileType = JavaClassFileType.INSTANCE
}
}

View File

@@ -0,0 +1,110 @@
/*
* 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.idea.decompiler.navigation.files;
import com.intellij.openapi.fileTypes.FileType;
import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.util.ArrayUtil;
import com.intellij.util.LocalTimeCounter;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
/**
* In-memory implementation of {@link VirtualFile}.
*/
@SuppressWarnings({"UnnecessaryFinalOnLocalVariableOrParameter", "unused"})
public class BinaryLightVirtualFile extends LightVirtualFileBase {
private byte[] myContent = ArrayUtil.EMPTY_BYTE_ARRAY;
public BinaryLightVirtualFile() {
this("");
}
public BinaryLightVirtualFile(@NonNls String name) {
this(name, ArrayUtil.EMPTY_BYTE_ARRAY);
}
public BinaryLightVirtualFile(@NonNls String name, byte[] content) {
this(name, null, content, LocalTimeCounter.currentTime());
}
public BinaryLightVirtualFile(final String name, final FileType fileType, final byte[] content) {
this(name, fileType, content, LocalTimeCounter.currentTime());
}
public BinaryLightVirtualFile(VirtualFile original, final byte[] content, long modificationStamp) {
this(original.getName(), original.getFileType(), content, modificationStamp);
}
public BinaryLightVirtualFile(final String name,
final FileType fileType,
final byte[] content,
final long modificationStamp) {
super(name, fileType, modificationStamp);
setContent(content);
}
@Override
public InputStream getInputStream() throws IOException {
return VfsUtilCore.byteStreamSkippingBOM(myContent, this);
}
@Override
@NotNull
public OutputStream getOutputStream(Object requestor, final long newModificationStamp, long newTimeStamp) throws IOException {
return VfsUtilCore.outputStreamAddingBOM(new ByteArrayOutputStream() {
@Override
public void close() {
setModificationStamp(newModificationStamp);
byte[] content = toByteArray();
setContent(content);
}
}, this);
}
@Override
@NotNull
public byte[] contentsToByteArray() throws IOException {
return myContent;
}
public void setContent(Object requestor, byte[] content, boolean fireEvent) {
setContent(content);
setModificationStamp(LocalTimeCounter.currentTime());
}
private void setContent(byte[] content) {
//StringUtil.assertValidSeparators(content);
myContent = content;
}
public byte[] getContent() {
return myContent;
}
@Override
public String toString() {
return "BinaryLightVirtualFile: " + getPresentableUrl();
}
}

View File

@@ -0,0 +1,218 @@
/*
* 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.idea.decompiler.navigation.files;
import com.intellij.openapi.fileTypes.FileType;
import com.intellij.openapi.vfs.DeprecatedVirtualFileSystem;
import com.intellij.openapi.vfs.NonPhysicalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileSystem;
import com.intellij.util.LocalTimeCounter;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.io.IOException;
/**
* In-memory implementation of {@link VirtualFile}.
*/
@SuppressWarnings({"UnnecessaryFinalOnLocalVariableOrParameter", "unused"})
public abstract class LightVirtualFileBase extends VirtualFile {
private FileType myFileType;
private String myName = "";
private long myModStamp = LocalTimeCounter.currentTime();
private boolean myIsWritable = true;
private boolean myValid = true;
private VirtualFile myOriginalFile;
public LightVirtualFileBase(final String name, final FileType fileType, final long modificationStamp) {
myName = name;
myFileType = fileType;
myModStamp = modificationStamp;
}
public void setFileType(final FileType fileType) {
myFileType = fileType;
}
public VirtualFile getOriginalFile() {
return myOriginalFile;
}
public void setOriginalFile(VirtualFile originalFile) {
myOriginalFile = originalFile;
}
private static class MyVirtualFileSystem extends DeprecatedVirtualFileSystem implements NonPhysicalFileSystem {
@NonNls private static final String PROTOCOL = "mock";
private MyVirtualFileSystem() {
startEventPropagation();
}
@Override
@NotNull
public String getProtocol() {
return PROTOCOL;
}
@Override
@Nullable
public VirtualFile findFileByPath(@NotNull String path) {
return null;
}
@Override
public void refresh(boolean asynchronous) {
}
@Override
@Nullable
public VirtualFile refreshAndFindFileByPath(@NotNull String path) {
return null;
}
@Override
public void deleteFile(Object requestor, @NotNull VirtualFile vFile) throws IOException {
}
@Override
public void moveFile(Object requestor, @NotNull VirtualFile vFile, @NotNull VirtualFile newParent) throws IOException {
}
@NotNull
@Override
public VirtualFile copyFile(Object requestor,
@NotNull VirtualFile vFile,
@NotNull VirtualFile newParent,
@NotNull final String copyName) throws IOException {
throw new IOException("Cannot copy files");
}
@Override
public void renameFile(Object requestor, @NotNull VirtualFile vFile, @NotNull String newName) throws IOException {
}
@NotNull
@Override
public VirtualFile createChildFile(Object requestor, @NotNull VirtualFile vDir, @NotNull String fileName) throws IOException {
throw new IOException("Cannot create files");
}
@Override
@NotNull
public VirtualFile createChildDirectory(Object requestor, @NotNull VirtualFile vDir, @NotNull String dirName) throws IOException {
throw new IOException("Cannot create directories");
}
}
private static final MyVirtualFileSystem ourFileSystem = new MyVirtualFileSystem();
@Override
@NotNull
public VirtualFileSystem getFileSystem() {
return ourFileSystem;
}
@Nullable
public FileType getAssignedFileType() {
return myFileType;
}
@NotNull
@Override
public String getPath() {
return "/" + getName();
}
@Override
@NotNull
public String getName() {
return myName;
}
@Override
public boolean isWritable() {
return myIsWritable;
}
@Override
public boolean isDirectory() {
return false;
}
@Override
public boolean isValid() {
return myValid;
}
public void setValid(boolean valid) {
myValid = valid;
}
@Override
public VirtualFile getParent() {
return null;
}
@Override
public VirtualFile[] getChildren() {
return EMPTY_ARRAY;
}
@Override
public long getModificationStamp() {
return myModStamp;
}
protected void setModificationStamp(long stamp) {
myModStamp = stamp;
}
@Override
public long getTimeStamp() {
return 0; // todo[max] : Add UnsupportedOperationException at better times.
}
@Override
public long getLength() {
try {
return contentsToByteArray().length;
}
catch (IOException e) {
//noinspection CallToPrintStackTrace
e.printStackTrace();
assert false;
return 0;
}
}
@Override
public void refresh(boolean asynchronous, boolean recursive, Runnable postRunnable) {
}
@Override
public void setWritable(boolean b) {
myIsWritable = b;
}
@Override
public void rename(Object requestor, @NotNull String newName) throws IOException {
myName = newName;
}
}

View File

@@ -16,22 +16,29 @@
package org.jetbrains.kotlin.idea.framework;
import com.intellij.openapi.util.io.JarUtil;
import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.roots.libraries.JarVersionDetectionUtil;
import com.intellij.openapi.vfs.JarFile;
import com.intellij.openapi.vfs.JarFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.kotlin.utils.LibraryUtils;
import org.jetbrains.kotlin.utils.PathUtil;
import java.io.IOException;
import java.util.List;
import java.util.jar.Attributes;
public class JavaRuntimeDetectionUtil {
public static String getJavaRuntimeVersion(@NotNull List<VirtualFile> classesRoots) {
VirtualFile stdJar = getRuntimeJar(classesRoots);
if (stdJar != null) {
return JarUtil.getJarAttribute(VfsUtilCore.virtualToIoFile(stdJar), Attributes.Name.IMPLEMENTATION_VERSION);
try {
JarFile zipFile = JarFileSystem.getInstance().getJarFile(stdJar);
return JarVersionDetectionUtil.detectJarVersion(zipFile);
}
catch (IOException e) {
return null;
}
}
return null;

View File

@@ -16,9 +16,9 @@
package org.jetbrains.kotlin.idea.framework;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.roots.OrderRootType;
import com.intellij.openapi.roots.libraries.Library;
import com.intellij.openapi.util.io.JarUtil;
import com.intellij.openapi.vfs.StandardFileSystems;
import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
@@ -28,11 +28,15 @@ import org.jetbrains.kotlin.utils.LibraryUtils;
import org.jetbrains.kotlin.utils.PathUtil;
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import java.util.jar.Attributes;
import java.util.jar.JarFile;
import java.util.jar.Manifest;
public class JsLibraryStdDetectionUtil {
private static final Logger LOG = Logger.getInstance(JsLibraryStdDetectionUtil.class);
public static String getJsLibraryStdVersion(@NotNull List<VirtualFile> classesRoots) {
return getJsLibraryStdVersion(classesRoots, true);
@@ -54,7 +58,7 @@ public class JsLibraryStdDetectionUtil {
assert JsHeaderLibraryDetectionUtil.isJsHeaderLibraryDetected(classesRoots) : "StdLib should also be detected as headers library";
return JarUtil.getJarAttribute(VfsUtilCore.virtualToIoFile(jar), Attributes.Name.IMPLEMENTATION_VERSION);
return getJarAttribute(VfsUtilCore.virtualToIoFile(jar), Attributes.Name.IMPLEMENTATION_VERSION);
}
@Nullable
@@ -72,4 +76,41 @@ public class JsLibraryStdDetectionUtil {
return null;
}
/**
* Returns attribute value from a manifest main section,
* or null if missing or a file does not contain a manifest.
*
* Copied from Idea 14 JarUtil.java
*/
@Nullable
public static String getJarAttribute(@NotNull File file, @NotNull Attributes.Name attribute) {
return getJarAttributeImpl(file, null, attribute);
}
/**
* Copied from Idea 14 JarUtil.java
*/
private static String getJarAttributeImpl(@NotNull File file, @Nullable String entryName, @NotNull Attributes.Name attribute) {
if (file.canRead()) {
try {
JarFile jarFile = new JarFile(file);
try {
Manifest manifest = jarFile.getManifest();
if (manifest != null) {
Attributes attributes = entryName != null ? manifest.getAttributes(entryName) : manifest.getMainAttributes();
return attributes.getValue(attribute);
}
}
finally {
jarFile.close();
}
}
catch (IOException e) {
LOG.debug(e);
}
}
return null;
}
}

View File

@@ -24,7 +24,10 @@ import org.jetbrains.kotlin.idea.kdoc.KDocReference
import org.jetbrains.kotlin.kdoc.psi.impl.KDocName
public class JetReferenceContributor() : PsiReferenceContributor() {
public override fun registerReferenceProviders(registrar: PsiReferenceRegistrar) {
public override fun registerReferenceProviders(registrar: PsiReferenceRegistrar?) {
if (registrar == null) {
return
}
with(registrar) {
registerProvider(javaClass<JetSimpleNameExpression>()) {
JetSimpleNameReference(it)

View File

@@ -117,8 +117,8 @@ public class KotlinPsiSearchHelper(private val project: Project): PsiSearchHelpe
): TextOccurenceProcessor {
private val referenceService = PsiReferenceService.getService()!!
override fun execute(element: PsiElement, offsetInElement: Int): Boolean {
return referenceService.getReferences(element, PsiReferenceService.Hints.NO_HINTS).all { ref ->
override fun execute(element: PsiElement?, offsetInElement: Int): Boolean {
return referenceService.getReferences(element!!, PsiReferenceService.Hints.NO_HINTS).all { ref ->
ProgressManager.checkCanceled()
when {

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="DevKit.ModuleBuildProperties" url="file://$MODULE_DIR$/src/META-INF/plugin.xml" />
<component name="EclipseModuleManager">
<libelement value="jar://$MODULE_DIR$/../lib/asm-util-3.3.1.jar!/" />
<src_description expected_position="1">
@@ -41,7 +42,6 @@
<orderEntry type="module" module-name="idea-analysis" exported="" />
<orderEntry type="module" module-name="kotlin-android-plugin" />
<orderEntry type="module" module-name="js.frontend" />
<orderEntry type="library" scope="PROVIDED" name="coverage-plugin" level="project" />
<orderEntry type="module" module-name="util" />
<orderEntry type="module" module-name="android-compiler-plugin" scope="TEST" />
<orderEntry type="module" module-name="android-idea-plugin" scope="TEST" />

View File

@@ -0,0 +1,31 @@
** How to build android-common.jar **
- Get android-common.jar from last android-studio build
- Run proguard with following config
-dontskipnonpubliclibraryclassmembers
-dontoptimize
-dontobfuscate
-dontusemixedcaseclassnames
-dontpreverify
-verbose
-dontwarn com.google.common.**,net.n3.**,org.jetbrains.annotations.**,com.intellij.**,org.jetbrains.android.**,com.android.annotations**,com.android.utils**
-keep,includedescriptorclasses class com.android.tools.idea.gradle.output.parser.PatternAwareOutputParser {
public <methods>;
}
-keep,includedescriptorclasses class com.android.tools.idea.gradle.output.GradleMessage {
public <methods>;
}
-keep class com.android.tools.idea.gradle.output.parser.OutputLineReader {
public <methods>;
}
- Check that module kotlin-android-plugin still compile
** Why this jar is needed **
This is a temporary workaround for IDEA 13, because android-plugin isn't packed into ideaSDK

View File

@@ -17,16 +17,19 @@
package org.jetbrains.kotlin.android
import com.android.ide.common.blame.output.GradleMessage
import com.android.ide.common.blame.parser.PatternAwareOutputParser
import com.android.ide.common.blame.parser.util.OutputLineReader
import com.android.utils.ILogger
import com.android.ide.common.blame.parser.PatternAwareOutputParser
import com.intellij.openapi.util.io.FileUtilRt
import com.intellij.openapi.util.text.StringUtil
import java.io.File
import java.util.regex.Matcher
import java.util.regex.Pattern
public class KotlinOutputParser : PatternAwareOutputParser {
[suppress("PARAMETER_NAME_CHANGED_ON_OVERRIDE")]
override fun parse(line: String, reader: OutputLineReader, messages: MutableList<GradleMessage>, logger: ILogger): Boolean {
val colonIndex1 = line.colon()
val severity = if (colonIndex1 >= 0) line.substringBeforeAndTrim(colonIndex1).parseSeverity() else null
@@ -99,7 +102,9 @@ private fun String.amendNextLinesIfNeeded(reader: OutputLineReader): String {
private fun String.isNextMessage(): Boolean {
val colonIndex1 = indexOf(COLON)
return (colonIndex1 >= 0 && substring(0, colonIndex1).parseSeverity() != null) || StringUtil.containsIgnoreCase(this, "FAILURE")
return (colonIndex1 >= 0 && substring(0, colonIndex1).parseSeverity() != null) ||
StringUtil.containsIgnoreCase(this, "FAILURE") ||
StringUtil.containsIgnoreCase(this, "FAILED")
}
private fun String.parseSeverity(): GradleMessage.Kind? {

View File

@@ -0,0 +1,68 @@
/*
* Copyright 2010-2014 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.android
import com.intellij.openapi.components.ProjectComponent
import java.lang.reflect.Modifier
import java.lang.reflect.Field
// TODO drop this when Android Studio will be based on IDEA 14
public fun initializeOutputParser() {
try {
val klass = Class.forName("com.android.tools.idea.gradle.output.parser.BuildOutputParser")
val field = klass.getDeclaredField("PARSERS")
field.setAccessible(true)
val modifiersField = javaClass<Field>().getDeclaredField("modifiers")
modifiersField.setAccessible(true)
modifiersField.setInt(field, field.getModifiers() and Modifier.FINAL.inv())
[suppress("UNCHECKED_CAST")]
val patternAwareClass = Class.forName("com.android.ide.common.blame.parser.PatternAwareOutputParser") as Class<out Any>
val array = field.get(null) as Array<*>
val arrayTypeInstance = java.lang.reflect.Array.newInstance(patternAwareClass, array.size + 1)
for ((i, item) in array.withIndices()) {
java.lang.reflect.Array.set(arrayTypeInstance, i, item)
}
java.lang.reflect.Array.set(arrayTypeInstance, array.size, KotlinOutputParser())
field.set(null, arrayTypeInstance)
}
catch (e: ClassNotFoundException) {
// skip: Android plugin doesn't exist
}
catch (e: NoSuchFieldException) {
// BuildOutputParser in Teamcity jps can differ from the one in Android Studio
}
}
public class OutputParserInitializer : ProjectComponent {
override fun projectOpened() {
}
override fun projectClosed() {
}
override fun initComponent() {
initializeOutputParser()
}
override fun disposeComponent() {
}
override fun getComponentName() = "org.jetbrains.kotlin.android.OutputParserInitializer"
}

View File

@@ -1,4 +1,9 @@
<idea-plugin>
<application-components>
<component>
<implementation-class>org.jetbrains.kotlin.android.OutputParserInitializer</implementation-class>
</component>
</application-components>
<extensions defaultExtensionNs="com.intellij">
<gotoDeclarationHandler implementation="org.jetbrains.kotlin.android.navigation.KotlinAndroidGotoDeclarationHandler"/>
</extensions>

View File

@@ -1,5 +1,7 @@
<idea-plugin>
<!-- No coverage in idea 13
<extensions defaultExtensionNs="com.intellij">
<javaCoverageEngineExtension implementation="org.jetbrains.kotlin.idea.coverage.KotlinCoverageExtension"/>
</extensions>
-->
</idea-plugin>

View File

@@ -6,7 +6,7 @@
<version>@snapshot@</version>
<vendor url="http://www.jetbrains.com">JetBrains s.r.o.</vendor>
<idea-version since-build="141.2" until-build="142.9999"/>
<idea-version since-build="135.1286" until-build="136.9999"/>
<depends optional="true" config-file="junit.xml">JUnit</depends>
<depends optional="true" config-file="gradle.xml">org.jetbrains.plugins.gradle</depends>
@@ -250,9 +250,10 @@
implementation="org.jetbrains.kotlin.idea.refactoring.move.moveTopLevelDeclarations.MoveKotlinTopLevelDeclarationsHandler"
order="before kotlin.moveFilesOrDirectories"/>
<moveFileHandler implementation="org.jetbrains.kotlin.idea.refactoring.move.moveFilesOrDirectories.MoveKotlinFileHandler" />
<refactoring.moveInnerClassUsagesHandler
<!-- Disabled until MoveInnerClassUsagesHandler will be backported to IDEA 13 -->
<!-- <refactoring.moveInnerClassUsagesHandler
implementationClass="org.jetbrains.kotlin.idea.refactoring.move.MoveJavaInnerClassKotlinUsagesHandler"
language="jet" />
language="jet" /> -->
<refactoring.copyHandler implementation="org.jetbrains.kotlin.idea.refactoring.copy.JetCopyClassHandler"/>
<refactoring.changeSignatureUsageProcessor implementation="org.jetbrains.kotlin.idea.refactoring.changeSignature.JetChangeSignatureUsageProcessor"/>
<inlineActionHandler implementation="org.jetbrains.kotlin.idea.refactoring.inline.KotlinInlineValHandler"/>
@@ -384,9 +385,6 @@
<debuggerEditorTextProvider language="jet" implementationClass="org.jetbrains.kotlin.idea.debugger.KotlinEditorTextProvider"/>
<debuggerClassFilterProvider implementation="org.jetbrains.kotlin.idea.debugger.filter.KotlinDebuggerInternalClassesFilterProvider"/>
<debugger.nodeRenderer implementation="org.jetbrains.kotlin.idea.debugger.render.KotlinClassWithDelegatedPropertyRenderer"/>
<debugger.sourcePositionProvider implementation="org.jetbrains.kotlin.idea.debugger.KotlinSourcePositionProvider"/>
<debugger.frameExtraVarsProvider implementation="org.jetbrains.kotlin.idea.debugger.KotlinFrameExtraVariablesProvider"/>
<debugger.extraSteppingFilter implementation="org.jetbrains.kotlin.idea.ExtraSteppingFilter"/>
<xdebugger.settings implementation="org.jetbrains.kotlin.idea.debugger.KotlinDebuggerSettings"/>
<codeInsight.implementMethod language="jet" implementationClass="org.jetbrains.kotlin.idea.codeInsight.ImplementMethodsHandler"/>

View File

@@ -16,6 +16,9 @@
package org.jetbrains.kotlin.idea
/*
No stepping filter in Idea 13
import com.intellij.debugger.engine
import com.intellij.debugger.engine.SuspendContext
import org.jetbrains.kotlin.idea.debugger.JetPositionManager
@@ -82,3 +85,5 @@ public class ExtraSteppingFilter : engine.ExtraSteppingFilter {
}
}
*/

View File

@@ -51,7 +51,7 @@ import com.intellij.psi.*
import java.util.*
//NOTE: this class is based on CopyPasteReferenceProcessor and JavaCopyPasteReferenceProcessor
public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<KotlinReferenceTransferableData>() {
public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<KotlinReferenceTransferableData?> {
private val LOG = Logger.getInstance(javaClass<KotlinCopyPasteReferenceProcessor>())
private val IGNORE_REFERENCES_INSIDE: Array<Class<out JetElement>?> = array(
@@ -59,13 +59,13 @@ public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<Kotlin
javaClass<JetPackageDirective>()
)
override fun extractTransferableData(content: Transferable): List<KotlinReferenceTransferableData> {
override fun extractTransferableData(content: Transferable): KotlinReferenceTransferableData? {
if (CodeInsightSettings.getInstance().ADD_IMPORTS_ON_PASTE != CodeInsightSettings.NO) {
try {
val flavor = KotlinReferenceData.dataFlavor ?: return listOf()
val data = content.getTransferData(flavor) as? KotlinReferenceTransferableData ?: return listOf()
val flavor = KotlinReferenceData.dataFlavor ?: return null
val data = content.getTransferData(flavor) as? KotlinReferenceTransferableData ?: return null
// copy to prevent changing of original by convertLineSeparators
return listOf(data.clone())
return data.clone()
}
catch (ignored: UnsupportedFlavorException) {
}
@@ -73,7 +73,7 @@ public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<Kotlin
}
}
return listOf()
return null
}
override fun collectTransferableData(
@@ -81,8 +81,8 @@ public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<Kotlin
editor: Editor,
startOffsets: IntArray,
endOffsets: IntArray
): List<KotlinReferenceTransferableData> {
if (file !is JetFile || DumbService.getInstance(file.getProject()).isDumb()) return listOf()
): KotlinReferenceTransferableData? {
if (file !is JetFile || DumbService.getInstance(file.getProject()).isDumb()) return null
val collectedData = try {
toTextRanges(startOffsets, endOffsets).flatMap {
@@ -95,16 +95,16 @@ public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<Kotlin
// supposedly analysis can only be canceled from another thread
// do not log ProcessCanceledException as it is rethrown by IdeaLogger and code won't be copied
LOG.error("ProcessCanceledException while analyzing references in ${file.getName()}. References can't be processed.")
return listOf()
return null
}
catch (e: Throwable) {
LOG.error("Exception in processing references for copy paste in file ${file.getName()}}", e)
return listOf()
return null
}
if (collectedData.isEmpty()) return listOf()
if (collectedData.isEmpty()) return null
return listOf(KotlinReferenceTransferableData(collectedData.copyToArray()))
return KotlinReferenceTransferableData(collectedData.copyToArray())
}
private fun collectReferenceDataFromElement(
@@ -170,7 +170,7 @@ public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<Kotlin
bounds: RangeMarker,
caretOffset: Int,
indented: Ref<Boolean>,
values: List<KotlinReferenceTransferableData>
value: KotlinReferenceTransferableData?
) {
if (DumbService.getInstance(project).isDumb()) return
@@ -180,9 +180,7 @@ public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<Kotlin
PsiDocumentManager.getInstance(project).commitAllDocuments()
assert(values.size() == 1)
val referenceData = values.single().data
val referenceData = value!!.data
val referencesPossibleToRestore = findReferencesToRestore(file, bounds, referenceData)
val selectedReferencesToRestore = showRestoreReferencesDialog(project, referencesPossibleToRestore)

View File

@@ -22,8 +22,9 @@ import com.intellij.codeInsight.completion.CompletionSorter
import org.jetbrains.kotlin.psi.JetFile
import com.intellij.codeInsight.lookup.LookupElementWeigher
import com.intellij.codeInsight.lookup.LookupElement
import com.intellij.codeInsight.lookup.WeighingContext
import org.jetbrains.kotlin.idea.completion.*
import org.jetbrains.kotlin.descriptors.impl.LocalVariableDescriptor
import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor
import org.jetbrains.kotlin.descriptors.PackageViewDescriptor
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
import org.jetbrains.kotlin.resolve.DescriptorUtils
@@ -52,18 +53,17 @@ public fun CompletionResultSet.addKotlinSorting(parameters: CompletionParameters
sorter = sorter.weighAfter("stats", JetDeclarationRemotenessWeigher(parameters.getOriginalFile() as JetFile))
sorter = sorter.weighBefore("middleMatching", PreferMatchingItemWeigher)
sorter = sorter.weighBefore("middleMatching", PreferMatchingItemWeigher(parameters))
return withRelevanceSorter(sorter)
}
private object PriorityWeigher : LookupElementWeigher("kotlin.priority") {
override fun weigh(element: LookupElement, context: WeighingContext)
= element.getUserData(ITEM_PRIORITY_KEY) ?: ItemPriority.DEFAULT
override fun weigh(element: LookupElement): Comparable<Int>? = (element.getUserData(ITEM_PRIORITY_KEY) ?: ItemPriority.DEFAULT).ordinal()
}
private object SmartCompletionPriorityWeigher : LookupElementWeigher("kotlin.smartCompletionPriority") {
override fun weigh(element: LookupElement, context: WeighingContext)
override fun weigh(element: LookupElement)
= element.getUserData(SMART_COMPLETION_ITEM_PRIORITY_KEY) ?: SmartCompletionItemPriority.DEFAULT
}
@@ -113,9 +113,9 @@ private object DeprecatedWeigher : LookupElementWeigher("kotlin.deprecated") {
}
}
private object PreferMatchingItemWeigher : LookupElementWeigher("kotlin.preferMatching", false, true) {
override fun weigh(element: LookupElement, context: WeighingContext): Comparable<Int> {
val prefix = context.itemPattern(element)
private class PreferMatchingItemWeigher(private val parameters: CompletionParameters) : LookupElementWeigher("kotlin.preferMatching", false, true) {
override fun weigh(element: LookupElement): Comparable<Int>? {
val prefix = parameters.getLookup().itemPattern(element)
return if (element.getLookupString() == prefix) 0 else 1
}
}

View File

@@ -19,14 +19,13 @@ package org.jetbrains.kotlin.idea.completion.smart
import com.intellij.openapi.util.Key
import com.intellij.codeInsight.lookup.LookupElementWeigher
import com.intellij.codeInsight.lookup.LookupElement
import com.intellij.codeInsight.lookup.WeighingContext
import org.jetbrains.kotlin.idea.completion.ExpectedInfo
import com.intellij.psi.codeStyle.NameUtil
val NAME_SIMILARITY_KEY = Key<Int>("NAME_SIMILARITY_KEY")
object NameSimilarityWeigher : LookupElementWeigher("kotlin.nameSimilarity") {
override fun weigh(element: LookupElement, context: WeighingContext)
override fun weigh(element: LookupElement)
= -(element.getUserData(NAME_SIMILARITY_KEY) ?: 0)
}

View File

@@ -37,33 +37,28 @@ import org.jetbrains.kotlin.idea.j2k.J2kPostProcessor
import org.jetbrains.kotlin.idea.j2k.IdeaResolverForConverter
import com.intellij.openapi.project.DumbService
public class ConvertJavaCopyPastePostProcessor() : CopyPastePostProcessor<TextBlockTransferableData>() {
public class ConvertJavaCopyPastePostProcessor() : CopyPastePostProcessor<TextBlockTransferableData> {
override fun extractTransferableData(content: Transferable): List<TextBlockTransferableData> {
override fun extractTransferableData(content: Transferable): TextBlockTransferableData? {
try {
if (content.isDataFlavorSupported(CopiedCode.DATA_FLAVOR)) {
return listOf(content.getTransferData(CopiedCode.DATA_FLAVOR) as TextBlockTransferableData)
return (content.getTransferData(CopiedCode.DATA_FLAVOR) as TextBlockTransferableData)
}
}
catch (e: Throwable) {
LOG.error(e)
}
return listOf()
return null
}
public override fun collectTransferableData(file: PsiFile, editor: Editor, startOffsets: IntArray, endOffsets: IntArray): List<TextBlockTransferableData> {
if (file !is PsiJavaFile) return listOf()
public override fun collectTransferableData(file: PsiFile, editor: Editor, startOffsets: IntArray, endOffsets: IntArray): TextBlockTransferableData? {
if (file !is PsiJavaFile) return null
return listOf(CopiedCode(file.getName(), file.getText()!!, startOffsets, endOffsets))
return CopiedCode(file.getName(), file.getText()!!, startOffsets, endOffsets)
}
public override fun processTransferableData(project: Project, editor: Editor, bounds: RangeMarker, caretOffset: Int, indented: Ref<Boolean>, values: List<TextBlockTransferableData>) {
public override fun processTransferableData(project: Project, editor: Editor, bounds: RangeMarker, caretOffset: Int, indented: Ref<Boolean>, value: TextBlockTransferableData) {
if (DumbService.getInstance(project).isDumb()) return
assert(values.size() == 1)
val value = values.first()
if (value !is CopiedCode) return
val sourceFile = PsiFileFactory.getInstance(project).

View File

@@ -16,6 +16,9 @@
package org.jetbrains.kotlin.idea.coverage
/*
Not supported in idea 13
import com.intellij.coverage.JavaCoverageEngineExtension
import com.intellij.execution.configurations.RunConfigurationBase
import org.jetbrains.kotlin.idea.run.JetRunConfiguration
@@ -187,3 +190,7 @@ public class KotlinCoverageExtension(): JavaCoverageEngineExtension() {
}
}
}
*/
public class KotlinCoverageExtension() {}

View File

@@ -59,21 +59,21 @@ import org.jetbrains.kotlin.idea.util.application.runReadAction
import org.jetbrains.kotlin.idea.stubindex.PackageIndexUtil
import java.util.ArrayList
import org.jetbrains.kotlin.codegen.binding.CodegenBinding
import com.intellij.debugger.MultiRequestPositionManager
import com.intellij.debugger.PositionManager
import java.util.Collections
class PositionedElement(val className: String?, val element: PsiElement?)
public class JetPositionManager(private val myDebugProcess: DebugProcess) : MultiRequestPositionManager {
public class JetPositionManager(private val myDebugProcess: DebugProcess) : PositionManager {
private val myTypeMappers = WeakHashMap<Pair<FqName, IdeaModuleInfo>, CachedValue<JetTypeMapper>>()
override fun getSourcePosition(location: Location?): SourcePosition? {
if (location == null) {
throw NoDataException.INSTANCE
throw NoDataException()
}
val psiFile = getPsiFileByLocation(location)
if (psiFile == null) {
throw NoDataException.INSTANCE
throw NoDataException()
}
val lineNumber = try {
@@ -92,7 +92,7 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult
return SourcePosition.createFromLine(psiFile, lineNumber)
}
throw NoDataException.INSTANCE
throw NoDataException()
}
private fun getLambdaIfInside(location: Location, file: JetFile, lineNumber: Int): JetFunctionLiteral? {
@@ -169,7 +169,7 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult
override fun getAllClasses(sourcePosition: SourcePosition): List<ReferenceType> {
if (sourcePosition.getFile() !is JetFile) {
throw NoDataException.INSTANCE
throw NoDataException()
}
val names = classNameForPositionAndInlinedOnes(sourcePosition)
val result = ArrayList<ReferenceType>()
@@ -227,7 +227,7 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult
override fun locationsOfLine(type: ReferenceType, position: SourcePosition): List<Location> {
if (position.getFile() !is JetFile) {
throw NoDataException.INSTANCE
throw NoDataException()
}
try {
val line = position.getLine() + 1
@@ -235,18 +235,18 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult
type.locationsOfLine("Kotlin", null, line)
else
type.locationsOfLine(line)
if (locations == null || locations.isEmpty()) throw NoDataException.INSTANCE
if (locations == null || locations.isEmpty()) throw NoDataException()
return locations
}
catch (e: AbsentInformationException) {
throw NoDataException.INSTANCE
throw NoDataException()
}
}
[deprecated("Since Idea 14.0.3 use createPrepareRequests fun")]
override fun createPrepareRequest(classPrepareRequestor: ClassPrepareRequestor, sourcePosition: SourcePosition): ClassPrepareRequest? {
if (sourcePosition.getFile() !is JetFile) {
throw NoDataException.INSTANCE
throw NoDataException()
}
val className = classNameForPosition(sourcePosition)
if (className == null) {
@@ -255,6 +255,8 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult
return myDebugProcess.getRequestsManager().createClassPrepareRequest(classPrepareRequestor, className.replace('/', '.'))
}
/*
override fun createPrepareRequests(requestor: ClassPrepareRequestor, position: SourcePosition): List<ClassPrepareRequest> {
if (position.getFile() !is JetFile) {
throw NoDataException.INSTANCE
@@ -265,6 +267,8 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult
}
}
*/
TestOnly
public fun addTypeMapper(file: JetFile, typeMapper: JetTypeMapper) {
val value = CachedValuesManager.getManager(file.getProject()).createCachedValue<JetTypeMapper>(

View File

@@ -21,10 +21,8 @@ import com.intellij.openapi.components.State
import com.intellij.openapi.components.Storage
import com.intellij.openapi.components.StoragePathMacros
import com.intellij.openapi.options.Configurable
import com.intellij.openapi.options.SimpleConfigurable
import com.intellij.openapi.util.Getter
import com.intellij.util.xmlb.XmlSerializerUtil
import com.intellij.xdebugger.settings.DebuggerSettingsCategory
import com.intellij.xdebugger.settings.XDebuggerSettings
import com.intellij.xdebugger.XDebuggerUtil
@@ -40,16 +38,8 @@ public class KotlinDebuggerSettings : XDebuggerSettings<KotlinDebuggerSettings>(
}
}
override fun createConfigurables(category: DebuggerSettingsCategory): Collection<Configurable?> {
return when (category) {
DebuggerSettingsCategory.STEPPING ->
listOf(SimpleConfigurable.create(
"reference.idesettings.debugger.kotlin",
"Kotlin",
javaClass<KotlinSteppingConfigurableUi>(),
this))
else -> listOf()
}
override fun createConfigurable(): Configurable {
return KotlinSteppingConfigurableUi(this)
}
override fun getState() = this

View File

@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.idea.debugger
import com.intellij.debugger.engine.FrameExtraVariablesProvider
import com.intellij.debugger.SourcePosition
import com.intellij.debugger.engine.evaluation.EvaluationContext
import com.intellij.debugger.engine.evaluation.TextWithImports
@@ -39,14 +38,14 @@ import org.jetbrains.kotlin.idea.codeInsight.CodeInsightUtils
import java.util.LinkedHashSet
import org.jetbrains.kotlin.idea.caches.resolve.analyzeFully
public class KotlinFrameExtraVariablesProvider : FrameExtraVariablesProvider {
override fun isAvailable(sourcePosition: SourcePosition?, evalContext: EvaluationContext?): Boolean {
public class KotlinFrameExtraVariablesProvider {
fun isAvailable(sourcePosition: SourcePosition?, evalContext: EvaluationContext?): Boolean {
if (sourcePosition == null) return false
if (sourcePosition.getLine() < 0) return false
return sourcePosition.getFile().getFileType() == JetFileType.INSTANCE && DebuggerSettings.getInstance().AUTO_VARIABLES_MODE
}
override fun collectVariables(sourcePosition: SourcePosition?, evalContext: EvaluationContext?, alreadyCollected: Set<String>?
fun collectVariables(sourcePosition: SourcePosition?, evalContext: EvaluationContext?, alreadyCollected: Set<String>?
): Set<TextWithImports>? {
if (sourcePosition != null) {
return runReadAction { findAdditionalExpressions(sourcePosition) }

View File

@@ -17,14 +17,24 @@
package org.jetbrains.kotlin.idea.debugger;
import com.intellij.debugger.ui.breakpoints.JavaLineBreakpointType;
import com.intellij.openapi.fileTypes.FileType;
import com.intellij.openapi.project.Project;
import com.intellij.xdebugger.breakpoints.XBreakpointType;
import com.intellij.xdebugger.breakpoints.XLineBreakpointType;
import com.jetbrains.javascript.debugger.JavaScriptDebugAware;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class KotlinJavaScriptDebugAware extends JavaScriptDebugAware {
@Nullable
@Override
public Class<? extends XLineBreakpointType<?>> getBreakpointTypeClass() {
return JavaLineBreakpointType.class;
public FileType getFileType() {
return null;
}
@Nullable
@Override
public XLineBreakpointType<?> getBreakpointTypeClass(@NotNull Project project) {
return XBreakpointType.EXTENSION_POINT_NAME.findExtension(JavaLineBreakpointType.class);
}
}

View File

@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
package org.jetbrains.kotlin.idea.debugger
import com.intellij.debugger.engine.SourcePositionProvider
@@ -148,3 +148,4 @@ public class KotlinSourcePositionProvider: SourcePositionProvider() {
return null
}
}
*/

View File

@@ -17,34 +17,79 @@
package org.jetbrains.kotlin.idea.debugger;
import com.intellij.openapi.options.ConfigurableUi;
import com.intellij.openapi.options.ConfigurationException;
import com.intellij.openapi.options.SearchableConfigurable;
import org.jetbrains.annotations.NotNull;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class KotlinSteppingConfigurableUi implements ConfigurableUi<KotlinDebuggerSettings> {
public class KotlinSteppingConfigurableUi implements SearchableConfigurable {
private JCheckBox ignoreKotlinMethods;
private JPanel myPanel;
private boolean isModified = false;
private final KotlinDebuggerSettings mySettings;
@Override
public void reset(@NotNull KotlinDebuggerSettings settings) {
boolean flag = settings.getDEBUG_DISABLE_KOTLIN_INTERNAL_CLASSES();
ignoreKotlinMethods.setSelected(flag);
public KotlinSteppingConfigurableUi(KotlinDebuggerSettings settings) {
mySettings = settings;
ignoreKotlinMethods.setSelected(settings.getDEBUG_DISABLE_KOTLIN_INTERNAL_CLASSES());
ActionListener listener = new ActionListener() {
@Override
public void actionPerformed(@NotNull ActionEvent e) {
isModified = mySettings.getDEBUG_DISABLE_KOTLIN_INTERNAL_CLASSES() != ignoreKotlinMethods.isSelected();
}
};
ignoreKotlinMethods.addActionListener(listener);
}
@Override
public boolean isModified(@NotNull KotlinDebuggerSettings settings) {
return settings.getDEBUG_DISABLE_KOTLIN_INTERNAL_CLASSES() != ignoreKotlinMethods.isSelected();
public String getDisplayName() {
return "Kotlin";
}
@Override
public void apply(@NotNull KotlinDebuggerSettings settings) {
settings.setDEBUG_DISABLE_KOTLIN_INTERNAL_CLASSES(ignoreKotlinMethods.isSelected());
}
@NotNull
public String getHelpTopic() {
return "reference.idesettings.debugger.kotlin";
}
@Override
public JComponent getComponent() {
@NotNull
public String getId() {
return getHelpTopic();
}
@Override
public Runnable enableSearch(String option) {
return null;
}
@Override
public JComponent createComponent() {
return myPanel;
}
@Override
public boolean isModified() {
return isModified;
}
@Override
public void apply() throws ConfigurationException {
if (isModified) {
mySettings.setDEBUG_DISABLE_KOTLIN_INTERNAL_CLASSES(ignoreKotlinMethods.isSelected());
}
isModified = false;
}
@Override
public void reset() {
ignoreKotlinMethods.setSelected(mySettings.getDEBUG_DISABLE_KOTLIN_INTERNAL_CLASSES());
}
@Override
public void disposeUIResources() {
}
}

View File

@@ -197,9 +197,13 @@ class KotlinEvaluator(val codeFragment: JetCodeFragment,
private fun runEval4j(context: EvaluationContextImpl, compiledData: CompiledDataDescriptor): InterpreterResult {
val virtualMachine = context.getDebugProcess().getVirtualMachineProxy().getVirtualMachine()
if (compiledData.additionalClasses.isNotEmpty()) {
loadClasses(context, compiledData.additionalClasses)
}
val classLoaderReference: ClassLoaderReference =
if (compiledData.additionalClasses.isNotEmpty()) {
loadClasses(context, compiledData.additionalClasses)
}
else {
context.getClassLoader()
}
var resultValue: InterpreterResult? = null
ClassReader(compiledData.bytecodes).accept(object : ClassVisitor(ASM5) {
@@ -215,7 +219,7 @@ class KotlinEvaluator(val codeFragment: JetCodeFragment,
this,
makeInitialFrame(this, args),
JDIEval(virtualMachine,
context.getClassLoader(),
classLoaderReference,
context.getSuspendContext().getThread()?.getThreadReference()!!,
context.getSuspendContext().getInvokePolicy())
)

View File

@@ -26,7 +26,7 @@ import com.intellij.debugger.engine.evaluation.EvaluationContext
import com.intellij.openapi.util.SystemInfo
import org.jetbrains.kotlin.idea.debugger.evaluate.CompilingEvaluatorUtils
public fun loadClasses(evaluationContext: EvaluationContextImpl, classes: Collection<Pair<String, ByteArray>>) {
public fun loadClasses(evaluationContext: EvaluationContextImpl, classes: Collection<Pair<String, ByteArray>>): ClassLoaderReference {
val process = evaluationContext.getDebugProcess()
val classLoader: ClassLoaderReference
@@ -51,7 +51,7 @@ public fun loadClasses(evaluationContext: EvaluationContextImpl, classes: Collec
throw EvaluateException("Error during classes definition " + e, e)
}
evaluationContext.setClassLoader(classLoader)
return classLoader
}
private fun defineClasses(

View File

@@ -0,0 +1,26 @@
/*
* Copyright 2010-2014 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.idea.debugger.filter
import com.intellij.ui.classFilter.ClassFilter
import com.intellij.debugger.settings.DebuggerSettings
fun DebuggerSettings.setSteppingFilters(newFilters: Array<ClassFilter>) {
val method = javaClass<DebuggerSettings>().getDeclaredMethod("setSteppingFilters", newFilters.javaClass)
method.setAccessible(true)
method.invoke(this, newFilters)
}

View File

@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.idea.debugger.render
import com.intellij.debugger.ui.tree.render.ClassRenderer
import com.sun.jdi.Type as JdiType
import com.sun.jdi.Value
import com.intellij.debugger.ui.tree.render.ChildrenBuilder
@@ -25,17 +24,20 @@ import com.intellij.debugger.ui.tree.DebuggerTreeNode
import org.jetbrains.org.objectweb.asm.Type as AsmType
import com.intellij.debugger.engine.DebuggerManagerThreadImpl
import com.sun.jdi.ObjectReference
import com.intellij.xdebugger.settings.XDebuggerSettingsManager
import com.intellij.xdebugger.impl.settings.XDebuggerSettingsManager
import com.intellij.debugger.ui.impl.watch.NodeManagerImpl
import com.intellij.debugger.ui.impl.watch.MessageDescriptor
import java.util.ArrayList
import org.jetbrains.kotlin.load.java.JvmAbi
import com.sun.jdi.Field
import com.intellij.debugger.engine.DebuggerUtils
import com.sun.jdi.ReferenceType
import com.sun.jdi.Type
import com.sun.jdi.Method
import org.jetbrains.kotlin.codegen.PropertyCodegen
import org.jetbrains.kotlin.name.Name
import com.intellij.debugger.ui.tree.render.ClassRenderer
import com.intellij.debugger.ui.impl.watch.FieldDescriptorImpl
import com.intellij.debugger.engine.evaluation.EvaluateException
public class KotlinClassWithDelegatedPropertyRenderer : ClassRenderer() {
@@ -56,8 +58,8 @@ public class KotlinClassWithDelegatedPropertyRenderer : ClassRenderer() {
val nodeManager = builder.getNodeManager()!!
val nodeDescriptorFactory = builder.getDescriptorManager()!!
val fields = value.referenceType().allFields()
if (fields.isEmpty()) {
val fields = value.referenceType()?.allFields()
if (fields == null || fields.isEmpty()) {
builder.setChildren(listOf(nodeManager.createMessageNode(MessageDescriptor.CLASS_HAS_NO_FIELDS.getLabel())))
return
}
@@ -71,7 +73,7 @@ public class KotlinClassWithDelegatedPropertyRenderer : ClassRenderer() {
val fieldDescriptor = nodeDescriptorFactory.getFieldDescriptor(builder.getParentDescriptor(), value, field)
children.add(nodeManager.createNode(fieldDescriptor, context))
if (field.name().endsWith(JvmAbi.DELEGATED_PROPERTY_NAME_SUFFIX)) {
if (field.name()?.endsWith(JvmAbi.DELEGATED_PROPERTY_NAME_SUFFIX) ?: false) {
val method = findGetterForDelegatedProperty(value, field)
val threadReference = context.getSuspendContext().getThread()?.getThreadReference()
if (method != null && threadReference != null) {
@@ -90,7 +92,7 @@ public class KotlinClassWithDelegatedPropertyRenderer : ClassRenderer() {
}
}
if (XDebuggerSettingsManager.getInstance()!!.getDataViewSettings().isSortValues()) {
if (XDebuggerSettingsManager.getInstance()!!.getDataViewSettings()?.isSortValues() ?: false) {
children.sortBy(NodeManagerImpl.getNodeComparator())
}
@@ -98,8 +100,36 @@ public class KotlinClassWithDelegatedPropertyRenderer : ClassRenderer() {
}
private fun findGetterForDelegatedProperty(objRef: ObjectReference, delegate: Field): Method? {
val fieldName = delegate.name().trimTrailing(JvmAbi.DELEGATED_PROPERTY_NAME_SUFFIX)
val fieldName = delegate.name()?.trimTrailing(JvmAbi.DELEGATED_PROPERTY_NAME_SUFFIX) ?: return null
val getterName = PropertyCodegen.getterName(Name.identifier(fieldName))
return objRef.referenceType().methodsByName(getterName)?.firstOrNull()
return objRef.referenceType()?.methodsByName(getterName)?.firstOrNull()
}
private fun shouldDisplay(context: EvaluationContext, objInstance: ObjectReference, field: Field): Boolean {
val isSynthetic = DebuggerUtils.isSynthetic(field)
when {
!SHOW_SYNTHETICS && isSynthetic,
!SHOW_STATIC && field.isStatic(),
!SHOW_STATIC_FINAL && field.isStatic() && field.isFinal() -> return false
SHOW_VAL_FIELDS_AS_LOCAL_VARIABLES && isSynthetic -> {
try {
val frameProxy = context.getFrameProxy()
if (frameProxy != null) {
val location = frameProxy.location()
if (location != null &&
objInstance == context.getThisObject() &&
objInstance.referenceType() == location.declaringType() &&
field.name()?.startsWith(FieldDescriptorImpl.OUTER_LOCAL_VAR_FIELD_PREFIX) ?: false
) {
return false
}
}
}
catch (ignored: EvaluateException) {
}
return true
}
else -> return true
}
}
}

View File

@@ -23,8 +23,6 @@ import com.intellij.execution.filters.OpenFileHyperlinkInfo;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.search.GlobalSearchScope;
import kotlin.Function1;
import kotlin.KotlinPackage;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.kotlin.idea.util.DebuggerUtils;
@@ -106,16 +104,9 @@ public class JetExceptionFilter implements Filter {
@NotNull
private Result patchResult(@NotNull Result result, @NotNull String line) {
final HyperlinkInfo newHyperlinkInfo = createHyperlinkInfo(line);
if (newHyperlinkInfo == null) return result;
return new Result(KotlinPackage.map(result.getResultItems(), new Function1<ResultItem, ResultItem>() {
@Override
public ResultItem invoke(ResultItem item) {
return new ResultItem(item.getHighlightStartOffset(), item.getHighlightEndOffset(), newHyperlinkInfo,
item.getHighlightAttributes());
}
}));
HyperlinkInfo newHyperlinkInfo = createHyperlinkInfo(line);
return newHyperlinkInfo == null ? result :
new Result(result.highlightStartOffset, result.highlightEndOffset, newHyperlinkInfo, result.highlightAttributes);
}
@Nullable

View File

@@ -54,7 +54,7 @@ public class ErrorDuringFileAnalyzeNotificationProvider(val project: Project) :
override fun getKey() = ERROR_HIGHLIGHT_PANEL_KEY
override fun createNotificationPanel(file: VirtualFile, fileEditor: FileEditor): EditorNotificationPanel? {
override fun createNotificationPanel(file: VirtualFile, fileEditor: FileEditor?): EditorNotificationPanel? {
if (file.getFileType() != JetFileType.INSTANCE) {
return null
}

View File

@@ -199,8 +199,9 @@ public class UnusedSymbolInspection : AbstractKotlinInspection() {
override fun createOptionsPanel(): JComponent? {
val panel = JPanel(GridBagLayout())
val project = ProjectUtil.guessCurrentProject(panel)
panel.add(
EntryPointsManagerImpl.createConfigureAnnotationsButton(),
EntryPointsManager.getInstance(project).createConfigureAnnotationsBtn(),
GridBagConstraints(0, 0, 1, 1, 1.0, 1.0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, Insets(0, 0, 0, 0), 0, 0)
)
return panel

View File

@@ -49,16 +49,16 @@ public class CreateIncrementalCompilationBackup: AnAction("Create backup for deb
val ZIP_FRACTION = 1.0 - PATCHES_FRACTION - LOGS_FRACTION
}
override fun update(e: AnActionEvent) {
e.getPresentation().setVisible(incrementalCompilationEnabled(e.getProject()!!))
override fun update(e: AnActionEvent?) {
e!!.getPresentation().setVisible(incrementalCompilationEnabled(e.getProject()!!))
}
override fun actionPerformed(e: AnActionEvent) {
val project = e.getProject()!!
override fun actionPerformed(e: AnActionEvent?) {
val project = e!!.getProject()!!
val projectBaseDir = File(project.getBaseDir()!!.getPath())
val backupDir = File(FileUtil.createTempDirectory("makeBackup", null), BACKUP_DIR_NAME)
ProgressManager.getInstance().run(
ProgressManager.getInstance()!!.run(
object : Task.Backgroundable(project, "Creating backup for debugging Kotlin incremental compilation", true) {
override fun run(indicator: ProgressIndicator) {
createPatches(backupDir, project, indicator)

View File

@@ -58,7 +58,10 @@ import org.jetbrains.kotlin.resolve.scopes.JetScope;
import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue;
import org.jetbrains.kotlin.resolve.scopes.receivers.ThisReceiver;
import org.jetbrains.kotlin.types.JetType;
import org.jetbrains.kotlin.utils.UtilsPackage;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -527,17 +530,51 @@ public class JetChangeSignatureUsageProcessor implements ChangeSignatureUsagePro
);
}
@Nullable
public PsiAnnotation getNullableAnnotation(@NotNull PsiModifierListOwner owner, boolean checkBases) {
return findNullabilityAnnotation(nullManager, owner, checkBases, true);
}
@Nullable
public PsiAnnotation getNotNullAnnotation(@NotNull PsiModifierListOwner owner, boolean checkBases) {
return findNullabilityAnnotation(nullManager, owner, checkBases, false);
}
@Nullable
private static PsiAnnotation findNullabilityAnnotation(
@NotNull NullableNotNullManager manager,
@NotNull PsiModifierListOwner owner,
boolean checkBases,
boolean nullable
) {
try {
Method findNullabilityAnnotationMethod = NullableNotNullManager.class.getDeclaredMethod(
"findNullabilityAnnotation", PsiModifierListOwner.class, boolean.class, boolean.class);
findNullabilityAnnotationMethod.setAccessible(true);
return (PsiAnnotation) findNullabilityAnnotationMethod.invoke(manager, owner, checkBases, nullable);
}
catch (NoSuchMethodException e) {
throw UtilsPackage.rethrow(e);
}
catch (IllegalAccessException e) {
throw UtilsPackage.rethrow(e);
}
catch (InvocationTargetException e) {
throw UtilsPackage.rethrow(e);
}
}
@Nullable
private PsiAnnotation getNullabilityAnnotation(@NotNull PsiModifierListOwner element) {
PsiAnnotation nullAnnotation = nullManager.getNullableAnnotation(element, false);
PsiAnnotation notNullAnnotation = nullManager.getNotNullAnnotation(element, false);
PsiAnnotation nullAnnotation = getNullableAnnotation(element, false);
PsiAnnotation notNullAnnotation = getNotNullAnnotation(element, false);
if ((nullAnnotation == null) == (notNullAnnotation == null)) return null;
return nullAnnotation != null ? nullAnnotation : notNullAnnotation;
}
private void addNullabilityAnnotationIfApplicable(@NotNull PsiModifierListOwner element, @Nullable PsiAnnotation annotation) {
PsiAnnotation nullableAnnotation = nullManager.getNullableAnnotation(element, false);
PsiAnnotation notNullAnnotation = nullManager.getNotNullAnnotation(element, false);
PsiAnnotation nullableAnnotation = getNullableAnnotation(element, false);
PsiAnnotation notNullAnnotation = getNotNullAnnotation(element, false);
if (notNullAnnotation != null && nullableAnnotation == null && element instanceof PsiMethod) return;
@@ -593,7 +630,7 @@ public class JetChangeSignatureUsageProcessor implements ChangeSignatureUsagePro
if (processor.processUsage(javaChangeInfo, usage, beforeMethodChange, javaUsageInfos)) break;
}
if (usage instanceof OverriderUsageInfo) {
PsiMethod overridingMethod = ((OverriderUsageInfo)usage).getOverridingMethod();
PsiMethod overridingMethod = ((OverriderUsageInfo)usage).getElement();
if (overridingMethod != null) {
nullabilityPropagator.processMethod(overridingMethod);
}

View File

@@ -545,11 +545,15 @@ fun createJavaClass(klass: JetClass, targetClass: PsiClass): PsiMember {
val kind = (klass.resolveToDescriptor() as ClassDescriptor).getKind()
val factory = PsiElementFactory.SERVICE.getInstance(klass.getProject())
var methodFilter: (PsiMethod) -> Boolean = { true }
val javaClassToAdd = when (kind) {
ClassKind.CLASS -> factory.createClass(klass.getName())
ClassKind.TRAIT -> factory.createInterface(klass.getName())
ClassKind.ANNOTATION_CLASS -> factory.createAnnotationType(klass.getName())
ClassKind.ENUM_CLASS -> factory.createEnum(klass.getName())
ClassKind.ENUM_CLASS -> {
methodFilter = { method -> !method.isConstructor() && method.getName() != "values" && method.getName() != "valueOf" }
factory.createEnum(klass.getName())
}
else -> throw AssertionError("Unexpected class kind: ${JetPsiUtil.getElementTextWithContext(klass)}")
}
val javaClass = targetClass.add(javaClassToAdd) as PsiClass
@@ -578,7 +582,7 @@ fun createJavaClass(klass: JetClass, targetClass: PsiClass): PsiMember {
)
implementsList?.let { javaClass.getImplementsList()?.replace(it) }
for (method in template.getMethods()) {
for (method in template.getMethods().filter(methodFilter)) {
val hasParams = method.getParameterList().getParametersCount() > 0
val needSuperCall = !template.isEnum() &&
(template.getSuperClass()?.getConstructors() ?: PsiMethod.EMPTY_ARRAY).all {

View File

@@ -14,6 +14,12 @@
* limitations under the License.
*/
/*
Disabled until MoveInnerClassUsagesHandler will be backported to IDEA 13
Don't forget to rename files:
moveNestedClassToTopLevelInTheSamePackageAndAddOuterInstance.test_disabled
moveNestedClassToTopLevelInTheSamePackageAndAddOuterInstanceWithLambda.test_disabled
package org.jetbrains.kotlin.idea.refactoring.move
import com.intellij.refactoring.move.moveInner.MoveInnerClassUsagesHandler
@@ -61,3 +67,4 @@ public class MoveJavaInnerClassKotlinUsagesHandler: MoveInnerClassUsagesHandler
}
}
}
*/

View File

@@ -166,9 +166,9 @@ public class MoveKotlinTopLevelDeclarationsDialog extends RefactoringDialog {
}
private void initFileChooser(JetFile targetFile) {
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor()
.withRoots(ProjectRootManager.getInstance(myProject).getContentRoots())
.withTreeRootVisible(true);
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor();
descriptor.setRoots(ProjectRootManager.getInstance(myProject).getContentRoots());
descriptor.setIsTreeRootVisible(true);
String title = JetRefactoringBundle.message("refactoring.move.top.level.declaration.file.title");
fileChooser.addBrowseFolderListener(title, null, myProject, descriptor, TextComponentAccessor.TEXT_FIELD_WHOLE_TEXT);

View File

@@ -24,5 +24,5 @@ import org.jetbrains.kotlin.psi.JetClass
public class JetTargetElementEvaluator : TargetElementEvaluator {
override fun includeSelfInGotoImplementation(element: PsiElement): Boolean = !(element is JetClass && element.isAbstract())
override fun getElementByReference(ref: PsiReference, flags: Int): PsiElement? = null
override fun getElementByReference(ref: PsiReference?, flags: Int): PsiElement? = null
}

View File

@@ -1,11 +0,0 @@
LineBreakpoint created at callableBug.kt:8
!JDK_HOME!\bin\java -agentlib:jdwp=transport=dt_socket,address=!HOST_NAME!:!HOST_PORT!,suspend=y,server=n -Dfile.encoding=!FILE_ENCODING! -classpath !APP_PATH!\classes;!KOTLIN_RUNTIME!;!CUSTOM_LIBRARY!;!RT_JAR! callableBug.CallableBugPackage
Connected to the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
callableBug.kt:8
callableBug.kt:8
Compile bytecode for callable
Compile bytecode for it
callableBug.kt:8
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -28,15 +28,15 @@ class MyDelegateThrowsException {
// PRINT_FRAME
frame = main():8, DelegatedPropertyInClassPackage$@packagePartHASH {delegatedPropertyInClass}
static = static = delegatedPropertyInClass.DelegatedPropertyInClassPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = delegatedPropertyInClass.kt, 5)
local = a: delegatedPropertyInClass.A = {delegatedPropertyInClass.A@uniqueID} (sp = delegatedPropertyInClass.kt, 6)
field = prop$delegate: delegatedPropertyInClass.MyDelegate = {delegatedPropertyInClass.MyDelegate@uniqueID} (sp = delegatedPropertyInClass.kt, 12)
field = prop: int = 1 (sp = delegatedPropertyInClass.kt, 12)
field = propEx$delegate: delegatedPropertyInClass.MyDelegateThrowsException = {delegatedPropertyInClass.MyDelegateThrowsException@uniqueID} (sp = delegatedPropertyInClass.kt, 13)
field = propEx: java.lang.IllegalStateException = {java.lang.IllegalStateException@uniqueID}java.lang.IllegalStateException (sp = delegatedPropertyInClass.kt, 13)
field = detailMessage: java.lang.String = null (sp = Throwable.!EXT!)
field = cause: java.lang.Throwable = {java.lang.IllegalStateException@uniqueID}java.lang.IllegalStateException (sp = Throwable.!EXT!)
field = stackTrace: java.lang.StackTraceElement[] = null (sp = Throwable.!EXT!)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a: delegatedPropertyInClass.A = {delegatedPropertyInClass.A@uniqueID}
field = prop$delegate: delegatedPropertyInClass.MyDelegate = {delegatedPropertyInClass.MyDelegate@uniqueID}
field = prop: int = 1
field = propEx$delegate: delegatedPropertyInClass.MyDelegateThrowsException = {delegatedPropertyInClass.MyDelegateThrowsException@uniqueID}
field = propEx: java.lang.IllegalStateException = {java.lang.IllegalStateException@uniqueID}"java.lang.IllegalStateException"
field = detailMessage: java.lang.String = null
field = cause: java.lang.Throwable = {java.lang.IllegalStateException@uniqueID}"java.lang.IllegalStateException"
field = stackTrace: java.lang.StackTraceElement[] = null
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -22,14 +22,14 @@ fun main(args: Array<String>) {
// PRINT_FRAME
frame = main():14, EvBreakpointOnPropertyDeclarationPackage$@packagePartHASH {evBreakpointOnPropertyDeclaration}
static = static = evBreakpointOnPropertyDeclaration.EvBreakpointOnPropertyDeclarationPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = evBreakpointOnPropertyDeclaration.kt, 7)
local = a1: evBreakpointOnPropertyDeclaration.A = {evBreakpointOnPropertyDeclaration.A@uniqueID} (sp = evBreakpointOnPropertyDeclaration.kt, 8)
field = prop: int = 1 (sp = evBreakpointOnPropertyDeclaration.kt, 4)
local = a2: evBreakpointOnPropertyDeclaration.A = {evBreakpointOnPropertyDeclaration.A@uniqueID} (sp = evBreakpointOnPropertyDeclaration.kt, 9)
field = prop: int = 1 (sp = evBreakpointOnPropertyDeclaration.kt, 4)
local = a3: evBreakpointOnPropertyDeclaration.A = {evBreakpointOnPropertyDeclaration.A@uniqueID} (sp = evBreakpointOnPropertyDeclaration.kt, 10)
field = prop: int = 1 (sp = evBreakpointOnPropertyDeclaration.kt, 4)
local = p1: int = 1 (sp = evBreakpointOnPropertyDeclaration.kt, 12)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a1: evBreakpointOnPropertyDeclaration.A = {evBreakpointOnPropertyDeclaration.A@uniqueID}
field = prop: int = 1
local = a2: evBreakpointOnPropertyDeclaration.A = {evBreakpointOnPropertyDeclaration.A@uniqueID}
field = prop: int = 1
local = a3: evBreakpointOnPropertyDeclaration.A = {evBreakpointOnPropertyDeclaration.A@uniqueID}
field = prop: int = 1
local = p1: int = 1
extra = a2.prop
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'

View File

@@ -20,12 +20,12 @@ fun main(args: Array<String>) {
// PRINT_FRAME
frame = main():13, EvDelegatedPropertyPackage$@packagePartHASH {evDelegatedProperty}
static = static = evDelegatedProperty.EvDelegatedPropertyPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = evDelegatedProperty.kt, 9)
local = a: evDelegatedProperty.A = {evDelegatedProperty.A@uniqueID} (sp = evDelegatedProperty.kt, 10)
field = prop$delegate: kotlin.properties.ReadWriteProperty = {kotlin.properties.NotNullVar@uniqueID} (sp = evDelegatedProperty.kt, 6)
field = value: java.lang.Object = {java.lang.Integer@uniqueID}1 (sp = Delegation.!EXT!)
field = value: int = 1 (sp = Integer.!EXT!)
field = prop: int = 1 (sp = evDelegatedProperty.kt, 6)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a: evDelegatedProperty.A = {evDelegatedProperty.A@uniqueID}
field = prop$delegate: kotlin.properties.ReadWriteProperty = {kotlin.properties.NotNullVar@uniqueID}
field = value: java.lang.Object = {java.lang.Integer@uniqueID}"1"
field = value: int = 1
field = prop: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -17,9 +17,9 @@ fun main(args: Array<String>) {
// PRINT_FRAME
frame = main():10, EvDuplicateItemsPackage$@packagePartHASH {evDuplicateItems}
static = static = evDuplicateItems.EvDuplicateItemsPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = evDuplicateItems.kt, 7)
local = a: evDuplicateItems.A = {evDuplicateItems.A@uniqueID} (sp = evDuplicateItems.kt, 8)
field = prop: int = 1 (sp = evDuplicateItems.kt, 4)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a: evDuplicateItems.A = {evDuplicateItems.A@uniqueID}
field = prop: int = 1
extra = a.prop
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'

View File

@@ -17,9 +17,9 @@ fun main(args: Array<String>) {
// PRINT_FRAME
frame = main():10, EvFinalPropertyPackage$@packagePartHASH {evFinalProperty}
static = static = evFinalProperty.EvFinalPropertyPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = evFinalProperty.kt, 7)
local = a: evFinalProperty.A = {evFinalProperty.A@uniqueID} (sp = evFinalProperty.kt, 8)
field = prop: int = 1 (sp = evFinalProperty.kt, 4)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a: evFinalProperty.A = {evFinalProperty.A@uniqueID}
field = prop: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -26,14 +26,14 @@ fun foo(i: Int) {}
// PRINT_FRAME
frame = main():15, EvLineRangePackage$@packagePartHASH {evLineRange}
static = static = evLineRange.EvLineRangePackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = evLineRange.kt, 7)
local = a1: evLineRange.A = {evLineRange.A@uniqueID} (sp = evLineRange.kt, 8)
field = prop: int = 1 (sp = evLineRange.kt, 4)
local = a2: evLineRange.A = {evLineRange.A@uniqueID} (sp = evLineRange.kt, 9)
field = prop: int = 1 (sp = evLineRange.kt, 4)
local = a3: evLineRange.A = {evLineRange.A@uniqueID} (sp = evLineRange.kt, 10)
field = prop: int = 1 (sp = evLineRange.kt, 4)
local = i1: int = 1 (sp = evLineRange.kt, 13)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a1: evLineRange.A = {evLineRange.A@uniqueID}
field = prop: int = 1
local = a2: evLineRange.A = {evLineRange.A@uniqueID}
field = prop: int = 1
local = a3: evLineRange.A = {evLineRange.A@uniqueID}
field = prop: int = 1
local = i1: int = 1
extra = a2.prop
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'

View File

@@ -19,9 +19,9 @@ fun main(args: Array<String>) {
// PRINT_FRAME
frame = main():10, EvPropertyPackage$@packagePartHASH {evProperty}
static = static = evProperty.EvPropertyPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = evProperty.kt, 7)
local = a: evProperty.A = {evProperty.A@uniqueID} (sp = evProperty.kt, 8)
field = prop: int = 1 (sp = evProperty.kt, 4)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a: evProperty.A = {evProperty.A@uniqueID}
field = prop: int = 1
extra = a.prop
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'

View File

@@ -22,7 +22,7 @@ fun main(args: Array<String>) {
// PRINT_FRAME
frame = test():8, A {evPropertyRefExpr}
this = this = {evPropertyRefExpr.A@uniqueID}
field = prop: int = 1 (sp = evPropertyRefExpr.kt, 4)
field = prop: int = 1
extra = prop
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'

View File

@@ -30,11 +30,11 @@ fun foo(i: Int) {}
// PRINT_FRAME
frame = main():12, EvSkipAnonymousObjectPackage$@packagePartHASH {evSkipAnonymousObject}
static = static = evSkipAnonymousObject.EvSkipAnonymousObjectPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = evSkipAnonymousObject.kt, 7)
local = a1: evSkipAnonymousObject.A = {evSkipAnonymousObject.A@uniqueID} (sp = evSkipAnonymousObject.kt, 8)
field = prop: int = 1 (sp = evSkipAnonymousObject.kt, 4)
local = a2: evSkipAnonymousObject.A = {evSkipAnonymousObject.A@uniqueID} (sp = evSkipAnonymousObject.kt, 9)
field = prop: int = 1 (sp = evSkipAnonymousObject.kt, 4)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a1: evSkipAnonymousObject.A = {evSkipAnonymousObject.A@uniqueID}
field = prop: int = 1
local = a2: evSkipAnonymousObject.A = {evSkipAnonymousObject.A@uniqueID}
field = prop: int = 1
extra = a1.prop
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'

View File

@@ -25,11 +25,11 @@ fun l(f: () -> Unit) {}
// PRINT_FRAME
frame = main():12, EvSkipLambdaPackage$@packagePartHASH {evSkipLambda}
static = static = evSkipLambda.EvSkipLambdaPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = evSkipLambda.kt, 7)
local = a1: evSkipLambda.A = {evSkipLambda.A@uniqueID} (sp = evSkipLambda.kt, 8)
field = prop: int = 1 (sp = evSkipLambda.kt, 4)
local = a2: evSkipLambda.A = {evSkipLambda.A@uniqueID} (sp = evSkipLambda.kt, 9)
field = prop: int = 1 (sp = evSkipLambda.kt, 4)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a1: evSkipLambda.A = {evSkipLambda.A@uniqueID}
field = prop: int = 1
local = a2: evSkipLambda.A = {evSkipLambda.A@uniqueID}
field = prop: int = 1
extra = a1.prop
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'

View File

@@ -26,11 +26,11 @@ fun foo(i: Int) {}
// PRINT_FRAME
frame = main():12, EvSkipLocalClassPackage$@packagePartHASH {evSkipLocalClass}
static = static = evSkipLocalClass.EvSkipLocalClassPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = evSkipLocalClass.kt, 7)
local = a1: evSkipLocalClass.A = {evSkipLocalClass.A@uniqueID} (sp = evSkipLocalClass.kt, 8)
field = prop: int = 1 (sp = evSkipLocalClass.kt, 4)
local = a2: evSkipLocalClass.A = {evSkipLocalClass.A@uniqueID} (sp = evSkipLocalClass.kt, 9)
field = prop: int = 1 (sp = evSkipLocalClass.kt, 4)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a1: evSkipLocalClass.A = {evSkipLocalClass.A@uniqueID}
field = prop: int = 1
local = a2: evSkipLocalClass.A = {evSkipLocalClass.A@uniqueID}
field = prop: int = 1
extra = a1.prop
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'

View File

@@ -26,10 +26,10 @@ fun foo(f: () -> Unit) {
// PRINT_FRAME
frame = invoke():11, FrameAnonymousObjectPackage$@packagePartHASH$main$o$1$run$1 {frameAnonymousObject}
this = this = {frameAnonymousObject.FrameAnonymousObjectPackage$@packagePartHASH$main$o$1$run$1@uniqueID}kotlin.Function0<kotlin.Unit>
field = this$0: frameAnonymousObject.FrameAnonymousObjectPackage$@packagePartHASH$main$o$1 = {frameAnonymousObject.FrameAnonymousObjectPackage$@packagePartHASH$main$o$1@uniqueID} (sp = null)
field = obProp: int = 1 (sp = frameAnonymousObject.kt, 6)
field = $val1: int = 1 (sp = null)
this = this = {frameAnonymousObject.FrameAnonymousObjectPackage$@packagePartHASH$main$o$1$run$1@uniqueID}"kotlin.Function0<kotlin.Unit>"
field = this$0: frameAnonymousObject.FrameAnonymousObjectPackage$@packagePartHASH$main$o$1 = {frameAnonymousObject.FrameAnonymousObjectPackage$@packagePartHASH$main$o$1@uniqueID}
field = obProp: int = 1
field = $val1: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -36,7 +36,7 @@ fun foo(f: () -> Unit) {
// EXPRESSION: myFun()
// RESULT: 1: I
frame = invoke():16, A$test$1 {frameClassObject}
this = this = {frameClassObject.A$test$1@uniqueID}kotlin.Function0<kotlin.Unit>
this = this = {frameClassObject.A$test$1@uniqueID}"kotlin.Function0<kotlin.Unit>"
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -16,8 +16,8 @@ fun main(args: Array<String>) {
frame = main():6, FrameClosingBracketPackage$@packagePartHASH {frameClosingBracket}
static = static = frameClosingBracket.FrameClosingBracketPackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = frameClosingBracket.kt, 3)
local = a: int = 1 (sp = frameClosingBracket.kt, 4)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = a: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -84,17 +84,17 @@ fun lambda(f: () -> Unit) {
// EXPRESSION: bMyFun()
// RESULT: 1: I
frame = invoke():24, Outer$foo$LocalClass$test$1 {frameExtFunExtFun}
this = this = {frameExtFunExtFun.Outer$foo$LocalClass$test$1@uniqueID}kotlin.Function0<kotlin.Unit>
field = this$0: frameExtFunExtFun.Outer$foo$LocalClass = {frameExtFunExtFun.Outer$foo$LocalClass@uniqueID} (sp = null)
field = lcProp: int = 1 (sp = frameExtFunExtFun.kt, 19)
field = this$0: frameExtFunExtFun.Outer = {frameExtFunExtFun.Outer@uniqueID} (sp = null)
field = outerProp: int = 1 (sp = frameExtFunExtFun.kt, 13)
field = receiver$0: frameExtFunExtFun.A = {frameExtFunExtFun.A@uniqueID} (sp = null)
field = aProp: int = 1 (sp = frameExtFunExtFun.kt, 8)
field = $valFoo: int = 1 (sp = null)
field = receiver$0: frameExtFunExtFun.B = {frameExtFunExtFun.B@uniqueID} (sp = null)
field = bProp: int = 1 (sp = frameExtFunExtFun.kt, 41)
field = $valTest: int = 1 (sp = null)
this = this = {frameExtFunExtFun.Outer$foo$LocalClass$test$1@uniqueID}"kotlin.Function0<kotlin.Unit>"
field = this$0: frameExtFunExtFun.Outer$foo$LocalClass = {frameExtFunExtFun.Outer$foo$LocalClass@uniqueID}
field = lcProp: int = 1
field = this$0: frameExtFunExtFun.Outer = {frameExtFunExtFun.Outer@uniqueID}
field = outerProp: int = 1
field = receiver$0: frameExtFunExtFun.A = {frameExtFunExtFun.A@uniqueID}
field = aProp: int = 1
field = $valFoo: int = 1
field = receiver$0: frameExtFunExtFun.B = {frameExtFunExtFun.B@uniqueID}
field = bProp: int = 1
field = $valTest: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -29,8 +29,8 @@ fun A.foo() {
// RESULT: 1: I
frame = foo():14, FrameExtensionFunPackage$@packagePartHASH {frameExtensionFun}
static = static = frameExtensionFun.FrameExtensionFunPackage$@packagePartHASH
local = $receiver: frameExtensionFun.A = {frameExtensionFun.A@uniqueID} (sp = null)
field = prop: int = 1 (sp = frameExtensionFun.kt, 8)
local = $receiver: frameExtensionFun.A = {frameExtensionFun.A@uniqueID}
field = prop: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -42,9 +42,9 @@ class A {
// RESULT: 1: I
frame = test():17, A$Inner {frameInnerClass}
this = this = {frameInnerClass.A$Inner@uniqueID}
field = prop2: int = 1 (sp = frameInnerClass.kt, 12)
field = this$0: frameInnerClass.A = {frameInnerClass.A@uniqueID} (sp = null)
field = prop1: int = 1 (sp = frameInnerClass.kt, 8)
field = prop2: int = 1
field = this$0: frameInnerClass.A = {frameInnerClass.A@uniqueID}
field = prop1: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -33,10 +33,10 @@ fun foo(f: () -> Unit) {
// EXPRESSION: val1 + val2
// RESULT: 2: I
frame = invoke():9, FrameInnerLambdaPackage$@packagePartHASH$main$1$1 {frameInnerLambda}
this = this = {frameInnerLambda.FrameInnerLambdaPackage$@packagePartHASH$main$1$1@uniqueID}kotlin.Function0<kotlin.Unit>
field = this$0: frameInnerLambda.FrameInnerLambdaPackage$@packagePartHASH$main$1 = {frameInnerLambda.FrameInnerLambdaPackage$@packagePartHASH$main$1@uniqueID}kotlin.Function0<kotlin.Unit> (sp = null)
field = $val1: int = 1 (sp = null)
field = $val2: int = 1 (sp = null)
this = this = {frameInnerLambda.FrameInnerLambdaPackage$@packagePartHASH$main$1$1@uniqueID}"kotlin.Function0<kotlin.Unit>"
field = this$0: frameInnerLambda.FrameInnerLambdaPackage$@packagePartHASH$main$1 = {frameInnerLambda.FrameInnerLambdaPackage$@packagePartHASH$main$1@uniqueID}"kotlin.Function0<kotlin.Unit>"
field = $val1: int = 1
field = $val2: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -22,8 +22,8 @@ fun foo(f: () -> Unit) {
// EXPRESSION: val1
// RESULT: 1: I
frame = invoke():7, FrameLambdaPackage$@packagePartHASH$main$1 {frameLambda}
this = this = {frameLambda.FrameLambdaPackage$@packagePartHASH$main$1@uniqueID}kotlin.Function0<kotlin.Unit>
field = $val1: int = 1 (sp = null)
this = this = {frameLambda.FrameLambdaPackage$@packagePartHASH$main$1@uniqueID}"kotlin.Function0<kotlin.Unit>"
field = $val1: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -22,7 +22,7 @@ fun foo(f: () -> Unit) {
// EXPRESSION: val1
// RESULT: Cannot find local variable: name = val1
frame = invoke():7, FrameLambdaNotUsedPackage$@packagePartHASH$main$1 {frameLambdaNotUsed}
this = this = {frameLambdaNotUsed.FrameLambdaNotUsedPackage$@packagePartHASH$main$1@uniqueID}kotlin.Function0<kotlin.Unit>
this = this = {frameLambdaNotUsed.FrameLambdaNotUsedPackage$@packagePartHASH$main$1@uniqueID}"kotlin.Function0<kotlin.Unit>"
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -13,8 +13,8 @@ fun main(args: Array<String>) {
// PRINT_FRAME
frame = main():6, FrameLocalVariablePackage$@packagePartHASH {frameLocalVariable}
static = static = frameLocalVariable.FrameLocalVariablePackage$@packagePartHASH
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID} (sp = frameLocalVariable.kt, 3)
local = val1: int = 1 (sp = frameLocalVariable.kt, 4)
local = args: java.lang.String[] = {java.lang.String[0]@uniqueID}
local = val1: int = 1
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

View File

@@ -30,7 +30,7 @@ fun foo(f: () -> Unit) {
// EXPRESSION: O.obMyFun()
// RESULT: 1: I
frame = invoke():6, FrameObjectPackage$@packagePartHASH$main$1 {frameObject}
this = this = {frameObject.FrameObjectPackage$@packagePartHASH$main$1@uniqueID}kotlin.Function0<kotlin.Unit>
this = this = {frameObject.FrameObjectPackage$@packagePartHASH$main$1@uniqueID}"kotlin.Function0<kotlin.Unit>"
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0

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