Commit Graph

4042 Commits

Author SHA1 Message Date
Svetlana Isakova 06cee8bc16 AutoCastReceiver moved to autocasts package 2012-10-29 17:11:56 +04:00
Svetlana Isakova 16ddd6db11 rename 'add subtype/supertype constraint' methods:
supertype constraint means constraining type is a supertype of subject type (not vice versa)
2012-10-29 17:11:56 +04:00
Svetlana Isakova a0a4871bff refactoring
no return from 'inferTypeArguments'
2012-10-29 17:11:56 +04:00
Svetlana Isakova 1f9d08861d cache resolve results for incomplete type inference 2012-10-29 17:11:56 +04:00
Svetlana Isakova 3260a5a32c added method 'copy' to ResolvedCallImpl 2012-10-29 14:41:50 +04:00
Svetlana Isakova 0acb6cb64d minor
added NotNull annotation
2012-10-29 14:41:50 +04:00
Svetlana Isakova 41e355da51 invoke 'moveAllMyDataTo' on call.getTrace()
instead of 'commit'
to let such invocations on cached calls
2012-10-29 14:41:50 +04:00
Svetlana Isakova b395d33ff0 debug names for temporary traces added 2012-10-29 14:41:49 +04:00
Alexander Udalov e2809b8080 Revert changes introduced in a31b7480
JavaElementFinder is no longer needed to find namespace$src$ classes
2012-10-25 21:42:09 +04:00
Alexander Udalov 880852861c A couple utility methods
PsiCodegenPredictor.getFileForCodegenNamedClass() returns JetFile which
contains a declaration which will produce a class with a given name.
PsiCodegenPredictor.getFileForNamespacePartName() returns JetFile which
produces a namespace part with the given name.

BindingContextUtils.getContainingFile() returns JetFile which contains a
declaration which is matched to a given descriptor.

DescriptorUtils.findTopLevelParent() finds a top-level (i.e. its containing
declaration is NamespaceDescriptor) parent for a descriptor.

Also DescriptorUtils.isTopLevelFunction() is changed a little to accept not
only a function, but any descriptor
2012-10-25 21:28:43 +04:00
Alexander Udalov a8798de8d0 NamespaceCodegen.getNamespacePartInternalName()
Should be used instead of getMultiFileNamespaceInternalName()
2012-10-25 21:28:42 +04:00
Alexander Udalov e7a7afa0be Sort all namespace files by name prior to assigning names in codegen
This helps to make names of closures etc. stable across compilation, should
also probably help to implement incremental compilation.

No new tests added
2012-10-25 21:28:41 +04:00
Natalia.Ukhorskaya bf489c9ed8 KT-2701 Prevent redeclaration in multi-declaration
#KT-2701 Fixed
2012-10-25 19:03:36 +04:00
Natalia.Ukhorskaya 34a9d6a469 EA-39486 Fixed - IAE: AnnotationResolver.resolveAnnotationArgument 2012-10-25 19:03:35 +04:00
Nikolay Krasko b62fe5f5fb Move caret into generated else branch 2012-10-25 18:55:53 +04:00
Nikolay Krasko 6a6282b038 Replace usages of createWhiteSpace(project, ''\n") to specific method 2012-10-25 18:55:52 +04:00
Nikolay Krasko 33240f167d Add else entry for when quick fix 2012-10-25 18:55:52 +04:00
Nikolay Krasko 6f60d08c3a Drop cached qualified name after changing nodes in subtree
#KT-2969 Fixed
2012-10-25 18:55:51 +04:00
Andrey Breslav 97ed6854ea In-block expressions classified 2012-10-25 18:04:42 +04:00
Andrey Breslav 2ea56a1c3c Errors re-ordered: some classification introduced 2012-10-25 17:10:09 +04:00
Andrey Breslav 55cd9246ad The only non-constant strategy made a constant (for readability) 2012-10-25 17:10:09 +04:00
Andrey Breslav 71ea3f7330 Unused errors removed 2012-10-25 17:10:09 +04:00
Andrey Breslav b5385788a3 Don't generate UNNECESSARY_SAFE_CALL on variables of generic type <T: Any?> 2012-10-25 17:05:28 +04:00
Andrey Breslav 3e38870ecc KT-2991 Don't generate UNNECESSARY_NOT_NULL_ASSERTION on variables of
generic type T:Any?

 #KT-2991 Fixed
2012-10-25 17:05:27 +04:00
Sergey Mashkov edb8797fa6 KT-2987 java.lang.AbstractMethodError/java.lang.NoSuchMethodError for delegated class by parameterized parent
#KT-2987 Fixed
2012-10-25 16:26:58 +04:00
Natalia.Ukhorskaya 4db732c11b KT-2948 Assertion fails on a local enum
#KT-2948 Fixed
2012-10-23 19:23:16 +04:00
Evgeny Gerashchenko 0c43e77ac0 Minor. Fixed references to KotlinBuiltIns.UNIT_ALIAS. 2012-10-23 18:06:16 +04:00
Evgeny Gerashchenko 1817b3daa7 EA-39710 - assert: JavaDescriptorPropertiesResolver.resolveNamedGroupProperties 2012-10-23 18:06:16 +04:00
Natalia.Ukhorskaya a79a31cf01 #KT-2811 Fixed VerifyError on smart-cast 'this' 2012-10-23 13:20:29 +04:00
Andrey Breslav 583dd1564d If t is of type T, comparison (t == null) may be true. No warning in this case 2012-10-20 23:33:50 +04:00
Andrey Breslav d58038d3ef Deparenthesize 'null' before checking the constant expression 2012-10-20 23:33:50 +04:00
Andrey Breslav e8bd42b691 KT-2729 Warn on 'T?' where 'T' has a nullable upper bound 2012-10-19 19:42:54 +04:00
Andrey Breslav 80039d8533 A warning for redundant '?' in types 2012-10-19 19:24:14 +04:00
Natalia.Ukhorskaya aa28a03f61 Mark deprecated items in ProjectView (class, function, property, class-object)
#KT-2944 Fixed Mark deprecated classes in Project Tree
2012-10-19 15:51:30 +04:00
Andrey Breslav 92ff6abf50 Common method used 2012-10-19 13:00:39 +04:00
Andrey Breslav a69b13d67f Caching most popular built-in types and classes 2012-10-19 13:00:12 +04:00
Andrey Breslav 71605638e6 Extract method 2012-10-19 11:31:49 +04:00
Andrey Breslav 9802b23b90 Private helpers made static 2012-10-19 11:31:49 +04:00
Andrey Breslav f4fbbcc3fa Nullability warnings cleaned up with assertions 2012-10-19 11:31:48 +04:00
Andrey Breslav 5dbfe3ca3c Pointless catch removed 2012-10-19 11:31:48 +04:00
Andrey Breslav 4a86255823 Mutable field made volatile:
this is a temporary measure to prevent some artifacts of concurrent access
2012-10-19 11:31:48 +04:00
Andrey Breslav f104567cde Unused fields removed 2012-10-19 11:31:41 +04:00
Andrey Breslav 7719df1002 Properly detect Kotlin built-ins:
Built-in classes like jet.Int and jet.Iterable are loaded from source
files by KotlinBuiltIns class. It makes no sense to create JetLightClass
instances for such classes, moreover, it causes runtime failures.
Now we check the location a file was loaded from before creating a light
class, and skip if it is a built-in.

We also assert this in teh actual generation of light class bodies, and
print out OS information if something fails, because our detection strategy
may depend on OS-specific behavior.
2012-10-18 19:57:18 +04:00
Andrey Breslav a7b6b34e29 Properly determine what classes to show in Kotlin completion:
Classes like Int and jet.Iterable should are not visible from Java
since they are erased at runtime. We call such classes non-physical,
they have to be added to completion manually.`
2012-10-18 19:57:18 +04:00
Andrey Breslav 6f4902bfbe Assertion message improved 2012-10-18 19:57:18 +04:00
Natalia.Ukhorskaya 62d8153ada Map java.land.Deprecated to jet.deprecated
Change testData for deprecated annotation
 #KT-2947 Fixed
2012-10-18 19:14:04 +04:00
Natalia.Ukhorskaya f9c1c041d7 Add direction to JavaToKotlinClassMap and KotlinToJavaTypesMap 2012-10-18 19:08:52 +04:00
Natalia.Ukhorskaya 29ca8faa4e Replace CodegenUtils.isDeprecated to KotlinBuiltIns.isDeprecated 2012-10-18 19:03:34 +04:00
Natalia.Ukhorskaya 1c6b7ed1ae Add jet.deprecated to library 2012-10-18 18:59:44 +04:00
Nikolay Krasko 11da503c62 KT-2962 auto completion support for extension functions
#KT-2962 Fixed
2012-10-18 14:52:37 +04:00