Commit Graph

19245 Commits

Author SHA1 Message Date
Svetlana Isakova 070dba69fa Don't add a constraint T <: DONT_CARE from upper bounds 2014-12-12 23:08:27 +03:00
Svetlana Isakova f9d4a68c6e KT-6320 AssertionError in ConstraintSystem(The constraint shouldn't contain different type variables on both sides: Y <: X)
#KT-6320 Fixed
2014-12-12 23:08:27 +03:00
Svetlana Isakova b098220d03 Refactoring: made code in 'processDeclaredBoundConstraints' more kotlin 2014-12-12 23:08:27 +03:00
Svetlana Isakova 1fb713342b Capture types only on the top level 2014-12-12 23:08:27 +03:00
Svetlana Isakova cd359a046c Added captured types and approximation
CapturedType captures type projection while solving the constraint system.
During the substitution type containing captured types is approximated
to get rid of captured types and (for simple cases) replace them with corresponding type projections.

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

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

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

JS backend: simplify check isConfigured for kotlin js module
2014-12-12 03:03:22 +03:00
Michael Nedzelsky a21d979186 CreateJavaLibraryDialog* -> CreateLibraryDialog* 2014-12-12 03:03:19 +03:00
Michael Nedzelsky d588b62981 Minor: refactoring create Kotlin Java Library Dialog 2014-12-12 03:03:16 +03:00
Michael Nedzelsky 61e9cbec66 K2JS: get kotlin js module name from Kotlin-JS-Module-Name attribute in manifest 2014-12-12 03:03:13 +03:00
Michael Nedzelsky 83ec20508a JS backend: isJsRuntimeLibrary -> isKotlinJavascriptStdLibrary 2014-12-12 03:03:11 +03:00
Michael Nedzelsky b42d00f095 JS backend: check for Implementation-Title in order to detect kotlin js stdlib 2014-12-12 03:03:08 +03:00