Commit Graph

393 Commits

Author SHA1 Message Date
Evgeny Gerashchenko a8179a497e KT-5146 "Remove explicit type arguments" should highlight type arguments as unused (not as warning)
#KT-5146 fixed
2015-02-18 13:37:36 +03:00
Evgeny Gerashchenko b1840ebd99 Suppressing unused parameter annotation when function is entry point. 2015-02-18 13:37:36 +03:00
Alexander Udalov 6ce8d6bd2e Serialize descriptors for local/anonymous classes on JVM
Reflection needs this information to work for local classes and anonymous
objects
2015-02-16 21:46:21 +03:00
Alexander Udalov cd9898fc43 Minor, rename and invert meaning of ClassId.isTopLevelClass
Also use a simpler constructor and simplify ClassDeserializer.ClassKey
2015-02-16 20:19:50 +03:00
Alexander Udalov e812c4e67f Introduce KotlinSyntheticClass.Kind.LOCAL_TRAIT_IMPL 2015-02-16 20:19:50 +03:00
Alexander Udalov ce26ce0458 Drop "extra visibility" from binary format
Descriptors of Kotlin symbols should always have a visibility known to Kotlin
2015-02-16 20:19:49 +03:00
Alexander Udalov 245b16dccc Drop unneeded factory methods due to ABI version increase
Either ReflectionFactory or direct creation is now used instead
2015-02-16 20:19:14 +03:00
Pavel V. Talanov 32aff01969 Increase abi version 2015-02-16 15:38:48 +03:00
Pavel V. Talanov 9e48631ccb Minor: Remove redundant implementation getDefaultObjectDescriptor() in missingDependencies.kt 2015-02-16 15:38:47 +03:00
Pavel V. Talanov f482768acf Introduce ClassDescriptor#getDefaultObjectDescriptor()
ClassDescriptor#getClassObjectDescriptor (with old semantics) is now a utility
Process usages and replace with calls to a new method where appropriate
2015-02-16 15:38:42 +03:00
Pavel V. Talanov 945072a129 Drop DeserializedResolverUtils and it's usages 2015-02-16 15:38:41 +03:00
Pavel V. Talanov 11ed783e1e Refactor: get rid of MemberFqNameProvider 2015-02-16 15:38:41 +03:00
Pavel V. Talanov d9d3f68a39 Drop JetClassObject element and its usages
as class objects are now represented by JetObjectDeclaration element
2015-02-16 15:38:31 +03:00
Pavel V. Talanov 0343fd8fc7 Rework class objects
Class objects have name "Default" by default
Do not produce synthetic class objects
Class objects have new semantics:
    class "A" has class object "B" if literal "A" can be used as a value of type "B"
Class objects act like ordinary nested objects
    i.e. are accessible from class scope via getClassifier()
Jvm backend: class object fields and class have the name of class object ("Default")
	as opposed to special "OBJECT$" and "object"
Serialization: only the name of class object is needed to serialize data
2015-02-16 15:38:27 +03:00
Valentin Kipyatkov 3710d4105c Do not shorten too much 2015-02-12 18:18:06 +03:00
Valentin Kipyatkov 78d927c3c3 Added TODO 2015-02-12 18:18:06 +03:00
Valentin Kipyatkov 49e6b97752 Fixed important bug in reference shortening 2015-02-12 18:18:05 +03:00
Valentin Kipyatkov 6acba00599 Working on new imports insertion on copy/paste 2015-02-12 18:18:05 +03:00
Valentin Kipyatkov 1912f5b919 writeImportToFile removed from interface 2015-02-12 18:18:03 +03:00
Valentin Kipyatkov 546836d5dd Fixed bug with importing some of SAM-constructors and factory functions
#KT-3449 Fixed
2015-02-12 18:18:01 +03:00
Valentin Kipyatkov 2c5953dbe6 Dropped confusing method signature 2015-02-12 17:34:51 +03:00
Alexander Udalov 9f74d64d03 Avoid using FQNAME_TO_CLASS_DESCRIPTOR slice where module exists 2015-02-11 18:37:13 +03:00
Alexander Udalov 1e8d8d0a99 Cleanup FqNamesUtil.kt
Delete unused, move some utilities to fqNameUtil.kt in IDE, rewrite comments
2015-02-11 18:37:11 +03:00
Alexey Sedunov e75bd1b41b Create from usage: Support extension members for Java classes 2015-02-11 14:45:14 +03:00
Alexey Sedunov cef9996ba7 Intentions: Convert extension receiver to parameter and vice versa 2015-02-11 14:40:28 +03:00
Alexey Sedunov b31da56e09 Shorten References: Introduce shortening options 2015-02-11 14:40:25 +03:00
Alexey Sedunov e68481557e Shorten References: Support 'this' simplification 2015-02-11 14:40:22 +03:00
Alexander Udalov 4128655893 Report incomplete hierarchy error
This is the case when you reference a Java class in Kotlin whose superclass is
not resolved. Previously this fact was swallowed by LazyJavaClassDescriptor
leading to mysterious compilation errors

 #KT-5129 Fixed
2015-02-09 21:14:02 +03:00
Alexey Sedunov baaabecaf9 Shorten references: Do not process shortened elements since they become invalid (and can't be analyzed) 2015-02-09 13:02:05 +03:00
Valentin Kipyatkov 0967ccb1cd Filtering out nested elements for reference shortening 2015-02-09 13:02:04 +03:00
Valentin Kipyatkov a3f546c6f9 Moved classes to other packages 2015-02-09 13:02:03 +03:00
Valentin Kipyatkov 09a99ae605 Moved import policy into ImportInsertHelper 2015-02-09 12:56:01 +03:00
Valentin Kipyatkov 952c64f947 Rewritten shortening references algorithm to work correctly with new smart import insertion 2015-02-09 12:56:01 +03:00
Valentin Kipyatkov 33ae316899 Minor 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov 33f979768d More elegant shortening of user type 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov 5d516a5f72 No need to shorten non-affected references in quickfixes 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov 2fd51c30cf No redundant import optimization 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov f62391ca1d Minor code improvements 2015-02-09 12:56:00 +03:00
Valentin Kipyatkov dfe71ef7ae Import insertion algorithm 2015-02-09 12:55:59 +03:00
Valentin Kipyatkov 975b67ed29 Minor refactoring after conversion 2015-02-09 12:55:22 +03:00
Valentin Kipyatkov f6df6eaeea Converted to Kotlin (step 2) 2015-02-09 12:55:22 +03:00
Valentin Kipyatkov 98be4566d2 Converted to Kotlin (step 1) 2015-02-09 12:55:22 +03:00
Nikolay Krasko 8dd910bd36 Convert to Kotlin KotlinLightClassForPackage: fixes for j2k converter 2015-02-06 23:53:15 +03:00
Alexey Sedunov 03e076aba3 Intentions: function <-> property conversion 2015-02-05 23:12:38 +03:00
Dmitry Jemerov 49cecc35fd completion in kdoc 2015-02-05 18:30:02 +01:00
Dmitry Jemerov 66887db42e highlight unresolved references in KDoc 2015-02-05 16:28:34 +01:00
Dmitry Jemerov 3253754395 code review 2015-02-04 17:26:48 +01:00
Dmitry Jemerov c0e7d1faf2 add references to kdoc; support resolve and rename 2015-02-04 17:26:47 +01:00
Alexander Udalov 1c87464695 Change properties to methods in light class hierarchy
There's a Kotlin-Java-Kotlin hierarchy with an abstract property in a
superclass and its implementation (as a get-method) in the Java subclass, which
caused problems because Kotlin subclass can't have both (different symbols,
same JVM signatures)
2015-02-04 14:57:49 +03:00
Dmitry Jemerov 71dbe671fa rename tag value to link 2015-02-03 13:24:58 +01:00