Commit Graph

7421 Commits

Author SHA1 Message Date
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
Alexander Udalov 4968afebf8 Don't generate bodies of built-in stub methods into interfaces 2014-02-24 21:44:42 +04:00
Zalim Bashorov fc42f3e3ab Remove unnecessary outdated code from JavaPsiFacadeKotlinHacks. 2014-02-24 20:27:19 +04:00
Zalim Bashorov 033b8289d7 Get JavaFileManager as service.
Fix tests after update to IDEA 134.1160 EAP.
2014-02-24 20:27:19 +04:00
Zalim Bashorov 62afa2c742 Update to IDEA 134.1160 EAP 2014-02-24 20:27:19 +04:00
Andrey Breslav 09ee7c5f05 Merge pull request #385 from Stebalien/fix-jetkeywordtoken-docstrings
Fix JetKeywordToken docstrings
2014-02-24 17:47:59 +03:00
Andrey Breslav b999174432 Do not pass BindingTrace into TopDownAnalyzer 2014-02-24 17:27:06 +04:00
Andrey Breslav c05d4a4837 Unneeded wrapping removed 2014-02-24 17:27:06 +04:00
Andrey Breslav 23527c927b Unused parameter removed 2014-02-24 17:27:01 +04:00
Andrey Breslav 50a160afb1 Do not pass TopDownAnalysisParameters to injectors 2014-02-24 17:26:04 +04:00
Andrey Breslav c4dbfbf1a9 Do not inject TopDownAnalysisParameters into ScriptHeaderResolver 2014-02-24 17:26:03 +04:00
Andrey Breslav 153d8c2a52 Do not inject TopDownAnalysisParameters into OverrideResolver 2014-02-24 17:26:02 +04:00
Andrey Breslav d4a6374d76 Do not inject TopDownAnalysisParameters into ControlFlowAnalyzer 2014-02-24 17:26:02 +04:00
Andrey Breslav 42c7c54ea0 Do not inject TopDownAnalysisParameters into BodyResolver 2014-02-24 17:26:02 +04:00
Andrey Breslav 442658396d BodiesResolveContext exposes TopDownAnalysisParameters 2014-02-24 17:26:01 +04:00
Andrey Breslav fb0713d1c2 Do not inject TopDownAnalysisParameters into TopDownAnalyzer 2014-02-24 16:40:05 +04:00
Andrey Breslav 4e0df6fd80 Do not create TopDownAnalysisContext in injectors 2014-02-24 15:52:57 +04:00
Andrey Breslav f5d2e1f7aa Do not inject TopDownAnalysisContext into TypeHierarchyResolver 2014-02-24 15:52:56 +04:00
Andrey Breslav 8b88cc8aec Do not inject TopDownAnalysisContext into OverrideResolver 2014-02-24 15:52:55 +04:00