Commit Graph

7439 Commits

Author SHA1 Message Date
Alexander Udalov afc3d33576 Revert "Suppress "nothing to override" on equals, hashCode, toString"
This reverts commit 640dac834f.
2014-03-02 21:38:25 +04:00
Alexander Udalov bd80e325b3 Revert "Add a temporary hack for migration "jet" -> "kotlin""
This reverts commit fb12c56d1a.
2014-03-02 21:37:28 +04:00
Alexander Udalov d04ee09636 Rename "import jet" to "import kotlin" in Java sources 2014-03-02 21:33:22 +04:00
Alexander Udalov 6eae950812 Increase ABI version after renaming "jet"->"kotlin" 2014-03-02 19:55:29 +04:00
Alexander Udalov cfe3619db7 Introduce KotlinSyntheticClass annotation
Will be used instead of KotlinPackagePart, KotlinTraitImpl and other
hypothetical annotations we were planning to write on our synthesized classes
(lambdas, local functions, etc.)
2014-03-02 19:55:29 +04:00
Alexander Udalov 787b4753c7 Copy KotlinSignature to package "kotlin.jvm"
Support both KotlinSignature classes in the compiler and in the IDEA plugin.
The old one will be deprecated later and dropped eventually
2014-03-02 19:55:28 +04:00
Alexander Udalov 33a9f3abd1 Move all annotation FQ names to JvmAnnotationNames
Delete reflected usages of annotation classes (JetValueParameter.class,
KotlinSignature.class, etc.). It's wrong: this is a dependency on the old
runtime, whereas the compiler should work with the new one
2014-03-02 19:55:28 +04:00
Alexander Udalov 6e23af2ba3 Split Library.kt into several files
For better readbility and discoverability. Also rename String.compareTo
parameter to "other", since that is the name of parameter of other compareTo's
2014-03-02 19:55:27 +04:00
Alexander Udalov f7b6457139 Replace "jet" package name with "kotlin" in testData 2014-03-02 19:55:26 +04:00
Alexander Udalov f2b4c7fa3e Fix LoadBuiltinsTest after renaming "jet" to "kotlin" 2014-03-02 19:55:25 +04:00
Alexander Udalov b3a9721571 Store receiver parameter in JVM intrinsics map
To differentiate between "String?.plus" extension in builtins and
"Iterable<*>.plus" extension in stdlib (they have the same owner, name and
value parameter count)
2014-03-02 19:55:25 +04:00
Alexander Udalov 9bf51f630d Refactor JVM IntrinsicMethods
Don't do unnecessary wraps to Name.identifier
2014-03-02 19:55:25 +04:00
Alexander Udalov 6dca53347f Delete obsolete JVM intrinsics for ranges/progressions
All Range and Progression classes are now fully written in Kotlin and thus do
not need any intrinsics to operate
2014-03-02 19:55:25 +04:00
Alexander Udalov 11cc7f46f4 Remove "Iterator.iterator()" intrinsic, add stdlib function 2014-03-02 19:55:24 +04:00
Alexander Udalov d9029917eb Move built-ins from package "jet" to "kotlin"
#KT-2896 Fixed
2014-03-02 19:55:20 +04:00
Alexander Udalov 6b0fce8cd5 Unsorted replacements "jet" -> "kotlin"
#KT-2896 Fixed
2014-03-02 19:55:15 +04:00
Alexander Udalov ac71911720 Get rid of "jet" in comments, assertions, READMEs, etc.
Replace with "kotlin"

 #KT-2896 Fixed
2014-03-02 19:55:11 +04:00
Alexander Udalov 410b7985e1 Replace "jet" with KotlinBuiltIns.FQ_NAME
#KT-2896 Fixed
2014-03-02 19:54:59 +04:00
Alexander Udalov 0490d4c989 Rewrite ProgressionUtil to Kotlin, move to "kotlin.internal"
Use reflection in ProgressionUtilTest instead of calling methods on the class
from the class path, because in the latter case we were just testing
ProgressionUtil from bootstrap runtime (which, presumably, always works
correctly since it's a bootstrap distribution)

With this change, compilable built-ins (under core/builtins/src) are fully
written in Kotlin
2014-03-02 19:54:59 +04:00
Alexander Udalov 4afdac3efa Move and rename exception classes in module 'runtime.jvm' 2014-03-02 19:54:59 +04:00
Alexander Udalov aef0fabd53 Move jet.Kotlin* annotations to package "kotlin.jvm.internal"
Also rename poorly named KotlinPackageFragment -> KotlinPackagePart
2014-03-02 19:54:58 +04:00
Alexander Udalov 0da92e22a2 Move jet.JetObject -> kotlin.jvm.internal.KObject
Don't use JetObject as a marker class in KotlinRuntimeLibraryUtil anymore,
since there are other classes for this purpose (KotlinPackage, Unit)
2014-03-02 19:54:58 +04:00
Alexander Udalov 19acc8c6c4 Move jet.runtime.ArrayIterator to package "kotlin.jvm.internal" 2014-03-02 19:54:57 +04:00
Alexander Udalov 9d9d73268a Move and rename jet.runtime.SharedVar -> kotlin.jvm.internal.Ref 2014-03-02 19:54:57 +04:00
Alexander Udalov 3b1a043c13 Move JVM Intrinsics class to package "kotlin.jvm.internal"
Delete unused intrinsics, reformat code, rename some declarations for better
readability
2014-03-02 19:54:57 +04:00
Alexander Udalov 22ef81b0f8 Move CollectionToArray from package "jet" to "kotlin" 2014-03-02 19:54:56 +04:00
Alexander Udalov 5d6d4406cb Move FunctionImpl classes from package "jet" to "kotlin" 2014-03-02 19:54:56 +04:00
Alexander Udalov 6acce0f930 Move jet.runtime.Intrinsic to kotlin.jvm.internal.Intrinsic 2014-03-02 19:54:56 +04:00
Alexander Udalov b68e47f705 Move JVM-specific annotations out of built-ins
Move 'volatile' and 'synchronized' to package 'kotlin' in stdlib. Also delete
'atomic', since its support was never implemented
2014-03-02 19:54:55 +04:00
Alexander Udalov 774e5f0535 Sort out JVM intrinsics for equals, hashCode, toString 2014-03-02 19:54:55 +04:00
Alexander Udalov 3dcd85bdb4 Add toString() to Any, fix all tests
#KT-4517 Fixed
2014-03-02 19:54:49 +04:00
Alexander Udalov 83d2436fb9 Don't produce trailing spaces in GenerateOperationsMap 2014-03-02 19:54:48 +04:00
Alexander Udalov c3e5b4bed2 Fix function receiver type in GenerateOperationsMap
It was wrong for fake overrides of equals and hashCode. Also operations map was
regenerated after removal of Hashable and moving its members to Any
2014-03-02 19:54:48 +04:00
Alexander Udalov ec30d52978 Delete Hashable, pull up its members to Any
Extensions on nullable types remain in Library.kt

 #KT-1741 Obsolete
 #KT-2805 Obsolete
 #KT-1365 Fixed
 #KT-4517 In Progress
2014-03-02 19:54:08 +04:00
Alexander Udalov 9efdd136ba Delete jet.runtime.Ranges intrinsics
All these "rangeTo" methods were pretty small and could be generated just right
into "rangeTo" function calls
2014-02-28 21:48:32 +04:00
Alexander Udalov 9537b68724 Load 'equals' parameter from Java code with the name 'other'
This fixes a lot of warnings on mixed Kotlin+Java code about different names
for the same parameter because we always loaded 'equals' parameter with the
name 'p0', whereas in Kotlin we usually name it 'other'
2014-02-28 21:48:29 +04:00
Alexander Udalov 004c289a0b Use kotlin.modules.* instead of jet.modules.* 2014-02-28 21:48:25 +04:00
Ilya Klyuchnikov 68da8bcf6b test fix 2014-02-28 16:24:19 +04:00
Ilya Klyuchnikov 0be6e57efe typo fixed: invokation -> invocation 2014-02-28 14:25:10 +04:00
Alexey Sedunov 6755abefb7 Reuse getQualifiedElement() function 2014-02-27 17:00:43 +04:00
Alexey Sedunov b9be11263f Remove unused method 2014-02-27 17:00:41 +04:00
Alexey Sedunov 5ba49fbada Avoid conflicts when moving members wiith package-local visibility
Add tests for Java "Move members" refactoring
 #KT-4459 Fixed
2014-02-27 17:00:33 +04:00
Alexey Sedunov d439de4330 Implement rebinding of simple name references 2014-02-27 17:00:29 +04:00
Andrey Breslav f244cb05eb Expose lazy scopes to enable calling forceResolveAllContents() 2014-02-27 12:22:19 +04:00
Andrey Breslav ac8b12baf1 Do not weakly retain caches whose computation has side-effects
Lazy scopes write REFERENCE_TARGET to trace as a side-effect, when weak caches are cleared, resolution may be repeated, and a rewrite error happens
2014-02-27 12:22:19 +04:00
Alexander Udalov 8425f2e668 Copy type parameters for JVM function accessors
Otherwise generic signature wasn't correctly written to accessors, resulting in
classfiles not being valid and javac failing to compile Java sources against
them
2014-02-26 21:22:57 +04:00
Andrey Breslav fbdba0f48d Test data fixed 2014-02-26 20:48:45 +04:00
Andrey Breslav a7135fee06 Report CLASS_OBJECT_NOT_ALLOWED for local classes 2014-02-26 19:42:05 +04:00
Tuomas Tynkkynen 3e451c5811 Disallow break or continue across a function boundary
Code containing breaks or continues that attempt to jump across a
function boundary weren't detected during analysis but would crash
the compiler during code generation. Add diagnostics for these kinds
of errors.

Example:

fun f() {
    while (true) {
        fun inner() {
            continue
        }
    }
}

 #KT-4334 Fixed
2014-02-26 00:14:42 +02:00
Tuomas Tynkkynen 7a2321460d Prevent expression selector from selecting just a label
Previously, extract variable could act on e.g. 'break@outerLoop' and
extract the label, leading into nonsensical 'val x = @outerLoop'.
Prevent JetRefactoringUtil.selectExpression from returning label
expressions to fix this.

 #KT-4515 Fixed
2014-02-24 22:40:14 +04:00