mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-03-10 15:51:01 +00:00
Compare commits
131 Commits
get-script
...
release/0.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
43ae60fca2 | ||
|
|
9dbe2f57cf | ||
|
|
c2ff12d2c7 | ||
|
|
ec3bcb4599 | ||
|
|
40c86f00e8 | ||
|
|
1914b15046 | ||
|
|
fa6b61f8b1 | ||
|
|
76dbcfd97d | ||
|
|
b6e5590d24 | ||
|
|
03e20787df | ||
|
|
5bac0fe856 | ||
|
|
e84d28d645 | ||
|
|
2ea578d257 | ||
|
|
947849c241 | ||
|
|
0336a84a81 | ||
|
|
6d46c8f784 | ||
|
|
78a844d1d1 | ||
|
|
fcc3a02337 | ||
|
|
e76493c310 | ||
|
|
8d243ce1af | ||
|
|
7d9b902f7f | ||
|
|
24cca11c3d | ||
|
|
4fbb13b744 | ||
|
|
69d9592070 | ||
|
|
01313ebf90 | ||
|
|
1270cb0811 | ||
|
|
6c4929ba91 | ||
|
|
56ce371c24 | ||
|
|
1176ed1cf4 | ||
|
|
5139ab5649 | ||
|
|
13eb7652d4 | ||
|
|
cf8db5f5c3 | ||
|
|
099837ff7a | ||
|
|
6773844306 | ||
|
|
20545dc8c8 | ||
|
|
40f6934590 | ||
|
|
31ddb15f46 | ||
|
|
c9be769ab5 | ||
|
|
9cf6574119 | ||
|
|
53ca4ef3fa | ||
|
|
19a919479b | ||
|
|
27144c3354 | ||
|
|
3e3d9111c8 | ||
|
|
ade2ebb234 | ||
|
|
127a9a1a4a | ||
|
|
f7d06e9880 | ||
|
|
e5e5a07462 | ||
|
|
a9922dd360 | ||
|
|
3de3b7515c | ||
|
|
140503eb97 | ||
|
|
c680cfe5d9 | ||
|
|
88f9e4162d | ||
|
|
c282075d89 | ||
|
|
8f7000aaa3 | ||
|
|
baeaedef6f | ||
|
|
e27347714b | ||
|
|
bb2f4a86b3 | ||
|
|
09d0d775c3 | ||
|
|
a9ab2a912f | ||
|
|
9e7975db5f | ||
|
|
a83d7f780b | ||
|
|
90d50e77d9 | ||
|
|
7a9096ef95 | ||
|
|
f7626370b8 | ||
|
|
acdef44fc2 | ||
|
|
50a39b4d1b | ||
|
|
9df07c08fa | ||
|
|
1b825ae9c6 | ||
|
|
e38da456c3 | ||
|
|
879fef3ed0 | ||
|
|
8827c074cf | ||
|
|
8430f15f43 | ||
|
|
be3ab85c71 | ||
|
|
d7053c253e | ||
|
|
e3122fc2b3 | ||
|
|
0e82f7b9bc | ||
|
|
8882774930 | ||
|
|
217f824abe | ||
|
|
5dfaae54d7 | ||
|
|
dd6d977823 | ||
|
|
83b62a1d16 | ||
|
|
e04c207f4e | ||
|
|
ae789ae816 | ||
|
|
44c8741807 | ||
|
|
428e614766 | ||
|
|
4fc045a630 | ||
|
|
be5c460b6f | ||
|
|
5b926b682f | ||
|
|
37b56a1cd2 | ||
|
|
f5a064e9d4 | ||
|
|
050f09d4ce | ||
|
|
8fa3e8afd0 | ||
|
|
c41aa2e75c | ||
|
|
0fef218403 | ||
|
|
eb70d9b4be | ||
|
|
145564c0e6 | ||
|
|
4144587f5e | ||
|
|
190c721e71 | ||
|
|
be68f58633 | ||
|
|
d3f8fe2198 | ||
|
|
f9d943f0fa | ||
|
|
c8db7ccdaf | ||
|
|
f1da18e018 | ||
|
|
06ae5c0300 | ||
|
|
a822c517ba | ||
|
|
4e12b48500 | ||
|
|
0cc918d18c | ||
|
|
31ef63182f | ||
|
|
63f5dc8215 | ||
|
|
73c3d5bb94 | ||
|
|
de2540ade8 | ||
|
|
4ddb5849d9 | ||
|
|
907851c198 | ||
|
|
65d0f3d717 | ||
|
|
2be6bbba4f | ||
|
|
db53285bdc | ||
|
|
a862f5614b | ||
|
|
78c804f2a1 | ||
|
|
8f803b5681 | ||
|
|
a5f1da861a | ||
|
|
def48c60cc | ||
|
|
bc0e0a83f6 | ||
|
|
be4a167900 | ||
|
|
ccacc28cef | ||
|
|
bab1615407 | ||
|
|
bda504d7da | ||
|
|
d89a74b34c | ||
|
|
596877eb6c | ||
|
|
fb9af72614 | ||
|
|
9b0f872769 | ||
|
|
1d650bf37d |
8
.idea/libraries/android_plugin.xml
generated
8
.idea/libraries/android_plugin.xml
generated
@@ -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>
|
||||
|
||||
13
.idea/libraries/coverage_plugin.xml
generated
13
.idea/libraries/coverage_plugin.xml
generated
@@ -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
13
.idea/libraries/gradle_plugin.xml
generated
Normal 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>
|
||||
4
.idea/libraries/guava.xml
generated
4
.idea/libraries/guava.xml
generated
@@ -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>
|
||||
66
.idea/libraries/idea_full.xml
generated
66
.idea/libraries/idea_full.xml
generated
@@ -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" />
|
||||
|
||||
28
.idea/libraries/intellij_core.xml
generated
28
.idea/libraries/intellij_core.xml
generated
@@ -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" />
|
||||
|
||||
68
.idea/libraries/intellij_core_analysis.xml
generated
68
.idea/libraries/intellij_core_analysis.xml
generated
@@ -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>
|
||||
3
.idea/runConfigurations/Android_Studio.xml
generated
3
.idea/runConfigurations/Android_Studio.xml
generated
@@ -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>
|
||||
3
.idea/runConfigurations/IDEA.xml
generated
3
.idea/runConfigurations/IDEA.xml
generated
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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<com.android.ide.common.blame.output.GradleMessage>, com.android.utils.ILogger)'>
|
||||
<annotation name='kotlin.jvm.KotlinSignature'>
|
||||
<val name="value"
|
||||
val=""fun parse(p0: String, p1: OutputLineReader, p2: List<GradleMessage>, p3: ILogger): Boolean""/>
|
||||
</annotation>
|
||||
</item>
|
||||
</root>
|
||||
@@ -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<com.android.tools.idea.gradle.output.GradleMessage>)'>
|
||||
<annotation name='kotlin.jvm.KotlinSignature'>
|
||||
<val name="value"
|
||||
val=""fun parse(line: String, reader: OutputLineReader, messages: MutableList<GradleMessage>): Boolean""/>
|
||||
</annotation>
|
||||
</item>
|
||||
</root>
|
||||
@@ -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>
|
||||
@@ -6,7 +6,15 @@
|
||||
name='com.intellij.psi.stubs.AbstractStubIndex java.util.Collection<Psi> 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<Psi> 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<Psi> 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<Psi> get(Key, com.intellij.openapi.project.Project, com.intellij.psi.search.GlobalSearchScope) 2'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
|
||||
12
annotations/com/intellij/util/containers/annotations.xml
Normal file
12
annotations/com/intellij/util/containers/annotations.xml
Normal file
@@ -0,0 +1,12 @@
|
||||
<root>
|
||||
<item name='com.intellij.util.containers.MultiMap java.util.Collection<? extends V> values()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name='com.intellij.util.containers.MultiMap java.util.Set<K> keySet()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item
|
||||
name='com.intellij.util.containers.MultiMap java.util.Set<java.util.Map.Entry<K,java.util.Collection<V>>> entrySet()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
36
build.xml
36
build.xml
@@ -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>
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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));
|
||||
}
|
||||
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
@@ -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,
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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")
|
||||
|
||||
@@ -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 -->
|
||||
|
||||
@@ -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>())!!
|
||||
}
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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" />
|
||||
|
||||
31
idea/kotlin-android-plugin/src/README.txt
Normal file
31
idea/kotlin-android-plugin/src/README.txt
Normal 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
|
||||
|
||||
|
||||
@@ -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? {
|
||||
|
||||
@@ -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"
|
||||
}
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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"/>
|
||||
|
||||
@@ -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 {
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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)
|
||||
}
|
||||
|
||||
|
||||
@@ -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).
|
||||
|
||||
@@ -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() {}
|
||||
|
||||
@@ -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>(
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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) }
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
*/
|
||||
@@ -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() {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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())
|
||||
)
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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)
|
||||
}
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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
|
||||
}
|
||||
|
||||
@@ -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
|
||||
@@ -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
|
||||
|
||||
@@ -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'
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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'
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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'
|
||||
|
||||
|
||||
@@ -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'
|
||||
|
||||
|
||||
@@ -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'
|
||||
|
||||
|
||||
@@ -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'
|
||||
|
||||
|
||||
@@ -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'
|
||||
|
||||
|
||||
@@ -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'
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
Reference in New Issue
Block a user