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
Alex Tkachman
bb3bef41ce
optimize imports
2012-08-28 14:34:17 +03:00
Alex Tkachman
e8d84c4042
add static import of Opcodes.*
2012-08-28 14:32:05 +03:00
Alex Tkachman
5b8492fd9f
add static import of Opcodes.*
2012-08-28 14:30:37 +03:00
Alex Tkachman
f1f22a15b0
unused import
2012-08-28 14:25:03 +03:00
Alex Tkachman
164919edaa
add static import of BindingContextUtils
2012-08-28 14:22:59 +03:00
Alex Tkachman
b3b18d74f3
isNamedFun decommissioned and replace by isLocalFun
2012-08-28 14:16:23 +03:00
Alex Tkachman
36ae1079d6
three utility functions moved from CodegenUtil to CodegenBinding
2012-08-28 14:06:56 +03:00
Alex Tkachman
7452bb2957
CodegenAnnotator does not exist anymore
...
Injectors regenerated to reflect that
2012-08-28 11:54:52 +03:00
Alex Tkachman
5ee0f0871f
CodegenAnnotator has state anymore. Most likely to be completely removed soon
2012-08-28 11:19:52 +03:00
Alex Tkachman
fbfc9a9420
LinkedList replaced by Stack
2012-08-28 09:49:50 +03:00
Alex Tkachman
a2813a13f0
unused import
2012-08-28 09:34:01 +03:00
Alex Tkachman
15c1d7bda7
most of data previously kept in CodegenAnnotator now lives in binding context (CodegenBinding utility class)
...
injectors regenerated in order to have BindingTrace around
2012-08-28 09:31:19 +03:00
Alex Tkachman
9cd8f64e00
private constructor added
2012-08-28 00:31:29 +03: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
Alexander Udalov
9be4f63735
refactor initStdClasses()
2012-08-27 20:28:29 +04:00
Alex Tkachman
cfbab55a43
ClosureAnnotator renamed to CodegenAnnotator
2012-08-27 19:06:01 +03:00
Alex Tkachman
10a47ea86f
big codegen rewrite
2012-08-27 17:43:03 +03:00
Svetlana Isakova
52386e5294
fixes after merge
...
rename JetTypeMapper constants
removed JetStandardLibraryNames class
check Nothing on equals (removed mapping from Nothing to Nothing)
2012-08-27 17:20:05 +04:00
Svetlana Isakova
440adfb54b
types mapping refactoring
...
(rename, methods reorder)
2012-08-27 17:09:23 +04:00
Svetlana Isakova
298cc82ba0
removed senseless mapping from jet/Nothing to jet/Nothing
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
12aea75b02
removed JetStandardLibraryNames
2012-08-27 17:09:19 +04:00
Svetlana Isakova
35c276be18
removed constants from JetStandardLibraryNames, JetTypeMapper
...
that are used only in KotlinToJavaTypesMapper
2012-08-27 17:09:07 +04:00
Svetlana Isakova
e63ed754f1
rename JetTypeMapper constants
2012-08-27 17:09:07 +04:00
Svetlana Isakova
65ea9dddea
KotlinToJavaTypesMap refactoring
...
removed repeating type names from 'isForceReal'
removed class SpecialTypeKey (added map for nullable types)
moved mapping Any-Object from JetTypeMapper
2012-08-27 17:08:37 +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
Andrey Breslav
c0c2ca0ac2
Report errors when iterator() returns a nullable type
2012-08-24 19:49:33 +04:00
Andrey Breslav
66faa0c03a
For-loop range expression (collection) can not be null
2012-08-24 19:49:33 +04:00
Andrey Breslav
b315bee7b2
hasNext can't be a property. Corresponding error removed
2012-08-24 19:49:32 +04:00
Andrey Breslav
1d01e66fc8
Tests for multi-decl for-loops over arrays of primitives
2012-08-24 19:49:32 +04:00
Andrey Breslav
707408b241
For loops over arrays generated with multi-decl support
2012-08-24 19:49:32 +04:00
Andrey Breslav
d5c44c3dd8
Test data moved
2012-08-24 19:49:32 +04:00
Andrey Breslav
c822ce0d67
There is only one way to know element types
2012-08-24 19:49:32 +04:00
Andrey Breslav
edbc832861
Multi-decl for loops fixed
2012-08-24 19:49:32 +04:00
Andrey Breslav
cab263d7d1
Abstract for-loop generator class extracted
2012-08-24 19:49:31 +04:00
Andrey Breslav
2bdf631b6d
Unnecesary fields removed
2012-08-24 19:49:31 +04:00
Andrey Breslav
e57e61ac68
For-loop generation rewritten for the case of explicit iterator usage
...
This implementation includes multi-declarations already, but tests are coming in the next commits.
Old ForLoopgenerator renamed to IntrinsicForLoopGenerator, and will be unified with the newly introduced interface soon.
Side-effect:
KT-2668 Codegen doesn't handle member extensions in for
#KT-2668 Fixed
2012-08-24 19:49:31 +04:00
Andrey Breslav
4870b92d11
makeFakeCall() uses a fake expression
2012-08-24 19:49:31 +04:00
Andrey Breslav
e13fa067cc
Proper resolved calls in loop ranges
2012-08-24 19:49:31 +04:00
Andrey Breslav
784bf31a3e
Store resolved calls for loop range's iterator(), next(), hasNext()
...
+ code duplication removed from expression typing visitor
2012-08-24 19:49:30 +04:00
Andrey Breslav
b1ba3e1260
Using invokeFunction() instead of invokeFunctionWithNoParams() when generating in-expressions
2012-08-24 19:49:30 +04:00
Andrey Breslav
9ca49b50b8
Using invokeFunction() instead of invokeFunctionWithNoParams() when generating when() conditions
2012-08-24 19:49:30 +04:00
Svetlana Isakova
0dcdaccad1
KT-2640 Provide jet.MutableIterator and jet.MutableIterable
...
#KT-2640 fixed
2012-08-24 15:07:24 +04:00
Andrey Breslav
017a097094
Fixing compilation (thank you, IDEA's make)
2012-08-24 12:41:43 +04:00
Andrey Breslav
08bb390820
Project is available in codegen
2012-08-24 12:18:18 +04:00
Alex Tkachman
719234b802
codegen contexts work in terms of descriptors in oppose to asm.type
2012-08-23 23:26:03 +03:00