Commit Graph

493 Commits

Author SHA1 Message Date
Pavel V. Talanov 00a12bd013 Constructors for enum entries and class objects have private visibility in frontend.
Introduce DescriptorUtils#getDefaultConstructorVisibility.
DescriptorResolver: remove exception wrapping.
Hardcode package-private visibility for enum entries in JetTypeMapper.

Refactoring:
DescriptorResolver: rename createPrimaryConstructorForObject -> createAndRecordPrimaryConstructorForObject, createPrimaryConstructorForObject now a separate method.
JavaDescriptorResolver: extract containingDeclaration variable.
JetTypeMapper: rename variable declaration -> containingDeclaration.
2012-08-29 14:42:12 +04:00
Alexander Udalov 6af6f2827d get rid of JdkNames 2012-08-27 20:52:40 +04:00
Alexander Udalov d99ffbd120 jet.Annotation
Create a supertype for all Kotlin annotations, jet.Annotation.
Map java.lang.annotation.Annotation to jet.Annotation and vice versa.
Add extension function "annotationType()" to every annotation, similar to java.lang.annotation.Annotation.annotationType()
 #KT-1620 Fixed
2012-08-27 20:44:43 +04:00
Svetlana Isakova 440adfb54b types mapping refactoring
(rename, methods reorder)
2012-08-27 17:09:23 +04:00
Svetlana Isakova 30d3144434 invoke register on java class, not on name 2012-08-27 17:09:20 +04:00
Svetlana Isakova a386a5eb1e KotlinToJavaTypesMap, JavaToKotlinTypesMap added 2012-08-27 17:08:37 +04:00
Pavel V. Talanov 6132946ced Introduce ClassKind#CLASS_OBJECT and ClassKind#isObject and usages.
Rename LazyClassDescriptor#onlyEnumEntries -> enumClassObjectInfo.
Determine ClassKind in JetClassInfo and JetObjectInfo constructor.
Remove complex constructor for enum entry in enum test.
Logic simplified in LazyClassMemberScope.
Minor refactorings.
2012-08-27 15:52:36 +04:00
Pavel V. Talanov b228fd66e0 Enum entry has final modality when loaded from binaries. 2012-08-27 15:52:34 +04:00
Svetlana Isakova 0dcdaccad1 KT-2640 Provide jet.MutableIterator and jet.MutableIterable
#KT-2640 fixed
2012-08-24 15:07:24 +04:00
Nikolay Krasko 57d4a28a94 Remove duplicates and speeding-up PluginJetFilesProvider.allInScope 2012-08-23 15:53:41 +04:00
Pavel V. Talanov 0a044b18d5 Remove VariableDescriptor#isObjectDeclaration and usages.
Replace with BindingContext trace slice OBJECT_DECLARATION_CLASS.
Remove corresponding field from constructor.
Introduce hack in JavaDescriptorResolver which creates dummy class descriptors for enum entry objects.
2012-08-22 18:06:37 +04:00
Natalia.Ukhorskaya 3d9ad3f6cb ExpressionCodegen: take EnumEntry type from containingDeclarationDescriptor
JavaDescriptorResolver: pass to propertyDescriptor correct value of isObject parameter
2012-08-22 14:32:01 +04:00
Natalia.Ukhorskaya aeb297d417 Move isEnumClassObject from JavaDescriptorResolver to DescriptorUtils 2012-08-22 14:31:59 +04:00
Natalia.Ukhorskaya 36ca99ade0 Use validateFqName in FqName(String) constructor.
Fix JavaDescriptorResolver and JavaClassOrPackageScope accordingly.
2012-08-21 21:40:50 +04:00
Natalia.Ukhorskaya 8c9cc058c7 Remove hack in JavaPackageScope#getClassifier. 2012-08-21 21:39:52 +04:00
Natalia.Ukhorskaya 8b8c595f4e JavaDescriptorResolver: represent Java enums as kotlin enums.
Split members from java enum psiclass into two groups: for class itself and for class object:
Hack JavaClassMembersScope to be able to use it for static members.
Hack JavaDescriptorResolverHelper to process fields for enums read from class files.

Introduce JavaDescriptorResolver#ResolverEnumClassObjectClassData.

Specially treat values and valueOf methods.
2012-08-21 21:39:51 +04:00
Natalia.Ukhorskaya 546ec296e2 Extract ResolverClassData as superclass from ResolverBinaryClassData. Use it instead. 2012-08-21 21:39:48 +04:00
Pavel V. Talanov b36873bf6d Class object always have name of the form <class-object-for-ClassName>. 2012-08-21 15:32:44 +04:00
Svetlana Isakova 3d1f71b355 added mapping for Iterable:
java.lang.Iterable -> jet.Iterable
 java.util.Iterator -> jet.Iterator
 in java classes loading
2012-08-16 18:39:23 +04:00
Andrey Breslav 00305ba920 Fixing interdependency between delegation and fake overrides
Main changes sit in OverrideResolver::generateOverridesAndDelegationInAClass()

Now fake overrides AND delegation are generated for supertypes before any processing is done for subclasses.
2012-08-15 16:15:04 +04:00
Evgeny Gerashchenko 199029360a KT-2326 Link external annotations via mechanism in IDEA core when Kotlin depends on IDEA 12.x
Dropped temporary classes.

 #KT-2326 fixed
2012-08-14 21:51:08 +04:00
Nikolay Krasko cf6787b798 Inject context for body resolve 2012-08-14 14:15:10 +04:00
Alex Tkachman 5947759684 proper compilation of enums 2012-08-13 22:37:27 +03:00
Andrey Breslav b76bdd09ff Formatting + redundant modifiers removed 2012-08-13 11:57:10 +04:00
Alex Tkachman b497fcc167 removing hack where ClosureAnnotator deals with range class objects 2012-08-10 09:40:59 +03:00
Evgeny Gerashchenko db101f732e Made some fields final in AlternativeSignatureData. 2012-08-02 16:06:10 +04:00
Alexander Udalov a85f46816e KT-937 When loading array types from Java project them so that they are covariant
#KT-937 Fixed
2012-08-01 21:27:57 +04:00
Evgeny Gerashchenko 7e81898b9f Reverted debug output. 2012-07-31 20:25:03 +04:00
Evgeny Gerashchenko 7370107616 Optimized reading external annotations: now they when annotations file is accessed, it's parsed data is stored in cache. 2012-07-31 20:16:05 +04:00
Andrey Breslav 5f3643804c Import directives migrated from ASM 3.3 to 4.0 with renamed packages 2012-07-25 12:07:19 +04:00
Nikolay Krasko a3cbd37e5f An attempt to to increase idea responsibility
#KT-2494 In Progress
2012-07-24 12:59:26 +04:00
Svetlana Isakova 6f8f151db5 added java.lang.Comparable to JavaTypeTransformer 2012-07-20 19:34:55 +04:00
Svetlana Isakova 084566aac4 classDescriptorMap used instead of classTypeMap
in JavaTypeTransformer
so 'getKotlinAnalog' now is used instead of 'unwrapPrimitive'

classTypeMap removed,
=> removed now unnecessary numberType, throwableType, etc. from JetStandardLibrary
2012-07-20 19:34:55 +04:00
Andrey Breslav e182041eb9 Escaping optimized
TODO: we have to integrate this optimization in IDEA
2012-07-13 12:52:55 +04:00
Alexander Udalov 5cc043314d KT-2376 java.lang.Number should be visible in Kotlin as jet.Number
#KT-2376 Fixed
2012-07-11 14:31:10 +04:00
Evgeny Gerashchenko 4ece44728d Added workaround for 'SAXParserFactory not found' error. 2012-07-10 19:59:42 +04:00
Andrey Breslav 7f6222cc4e Fixing compilation after merge 2012-07-09 13:39:05 +04:00
Andrey Breslav 4d220fb980 Injector for bare JavaDescriptorResolver 2012-07-09 13:39:04 +04:00
Evgeny Gerashchenko 2c58989a47 Moved CompilerSpecialMode enum to compiler-tests, since it is now used only for creating test compiler configurations. 2012-07-07 23:07:19 +04:00
Evgeny Gerashchenko aef2c372e1 Inlined the only usage of CompilerSpecialMode.isStubs(). 2012-07-07 23:07:18 +04:00
Evgeny Gerashchenko 6e7d08b478 Introduced BuiltinsScopeExtensionMode enum. Using it instead of CompilerSpecialMode to create JavaBridgeConfiguration. 2012-07-07 23:07:18 +04:00
Evgeny Gerashchenko a0b636d561 Moved CompilerSpecialMode.includeXXX() methods into configuration generators to make it clear that they are used only during initialization. 2012-07-07 23:07:18 +04:00
Evgeny Gerashchenko 684d345dce Removed CompilerDependencies class. 2012-07-07 23:07:18 +04:00
Evgeny Gerashchenko c833ca251f Moved CompilerDependencies.findRtJar() method to PathUtil. 2012-07-07 20:33:23 +04:00
Evgeny Gerashchenko d9c645a57f Got rid of dependency from InjectorForJavaSemanticServices on CompilerDependencies. 2012-07-07 20:33:23 +04:00
Evgeny Gerashchenko 5a88d28154 Got rid of dependency on compiler dependencies in injector for TDA for JVM. 2012-07-07 20:33:22 +04:00
Evgeny Gerashchenko 5e50f1928b Renamed PsiClassFinderForJvm -> PsiClassFinderImpl. 2012-07-07 20:33:22 +04:00
Evgeny Gerashchenko d8f74db060 Removed CompilerDependencies from PsiClassFinderForJvm. 2012-07-07 20:33:22 +04:00
Evgeny Gerashchenko e14a0168c5 Removed AltClassFinder, since alt-headers are removed. 2012-07-07 20:33:22 +04:00
Evgeny Gerashchenko 77df57c150 Replaced jdk-headers with jdk-annotations everywhere. 2012-07-03 13:36:58 +04:00