Valentin Kipyatkov
420c6856be
Changed naming algorithm of accessor name generation: "isXXX" and "kClass" cases affected
2015-09-29 18:32:24 +03:00
Valentin Kipyatkov
98da621ab3
Temporary rename of properties starting with "is" and used from java code (will revert back after changing accessor naming policy)
2015-09-29 18:32:23 +03:00
Alexander Udalov
3b018e9eb0
Minor, move serialization-related stuff in codegen to separate package
2015-09-29 16:31:21 +03:00
Alexander Udalov
ba80a2404f
Minor, improve signature of AsmUtil#writeAnnotationData
2015-09-29 16:26:29 +03:00
Alexander Udalov
3b9d90429b
Simplify local class name serialization, don't go through extension
...
Also fix it for the case of a class in a non-default package
2015-09-29 16:26:28 +03:00
Alexander Udalov
1036506b25
Introduce new string table optimized for JVM class files
...
This format of the string table allows to reduce the size of the Kotlin
metadata in JVM class files by reusing constants already present in the
constant pool. Currently the string table produced by JvmStringTable is not
fully optimized in serialization (in particular, the 'substring' operation
which will be used to extract type names out of generic signature, is not used
at all), but the format and its complete support in the deserialization
(JvmNameResolver) allows future improvement without changing the binary version
2015-09-29 16:26:28 +03:00
Alexander Udalov
542bfab96f
Don't write unnecessary information to ValueParameter proto
...
Flags can have a default value and the index can be trivially computed almost
all the time
2015-09-29 16:26:28 +03:00
Alexander Udalov
6a8d0fbd75
Introduce infrastructure to separate string table from metadata on JVM
...
Nothing especially helpful happens here, this is only a big refactoring
introducing a separate string array for the string table, which is currently
always empty, but will contain actual strings soon
2015-09-29 16:26:27 +03:00
Alexander Udalov
7d5bd3cf50
Simplify storage of JVM signatures in binary metadata
...
Store the whole method & field descriptor strings. Moving these strings to
separate annotation arguments later will allow to reuse them with the ones in
the constant pool, presumably allowing to save lots of space (up to 10%)
2015-09-29 16:26:25 +03:00
Alexander Udalov
da68c4d9ee
Extract interface out of StringTable
...
Rework SerializerExtension interface: don't pass StringTable to each method
every time, create it in each extension's constructor instead and expose to
DescriptorSerializer with an interface method
2015-09-29 16:26:24 +03:00
Alexey Tsvetkov
68437175f6
Enable disabling incremental compilation for tests
2015-09-25 20:11:57 +03:00
Denis Zharkov
505cb37052
Generate deprecated flag on getter of const val's
2015-09-25 18:12:45 +03:00
Mikhail Glukhikh
103bb320c8
Do not generate non-function/getter/setter (expression) annotations on anonymous functions
2015-09-25 17:46:38 +03:00
Michael Nedzelsky
b8ab8bcfca
check for access to internal elements from another module in jps-plugin
...
hack for access from tests to internal declarations in production code
fix AbstractCompileKotlinAgainstKotinTest: add information about output directory in order to correct check for internal visibility.
2015-09-25 14:02:29 +03:00
Michael Bogdanov
e5334ed9b8
Compare arrays via equals (not Arrays.equals) in data classes
2015-09-24 12:00:19 +03:00
Michael Bogdanov
cf57d56ab3
Don't generate private members in interface
2015-09-24 12:00:18 +03:00
Michael Bogdanov
2e6b56691c
Fix for: KT-8089 NoSuchFieldError
...
#KT-8089 Fixed
2015-09-24 09:36:46 +03:00
Yan Zhulanow
bc727a170b
Add 'operator' keyword
2015-09-23 21:25:51 +03:00
Dmitry Petrov
8595315ba5
- Package facade classes should have ACC_DEPRECATED
...
- Light classes for package facades should be deprecated
2015-09-23 17:41:13 +03:00
Dmitry Petrov
3cd1c222f0
Generate delegates to multifile class members in package facade classes
...
(unless using -Xmultifile-package-facades option)
2015-09-23 17:41:13 +03:00
Dmitry Petrov
5cdbdfc2cc
- Annotate package facades with java.lang.Deprecated.
...
- Provide KotlinDelegatedMethod annotation on package facade members.
2015-09-23 17:41:12 +03:00
Denis Zharkov
d937a7cefc
Generate field for const-val with same visibility as desciptor
...
Also add test checking that constant static final fields generated for them
2015-09-23 08:20:57 +03:00
Denis Zharkov
bde58d6eb8
Introduce interface method: VariableDescriptor.isConst
...
And several default implementations
Also take it into account in renderer
2015-09-23 08:20:56 +03:00
Alexander Udalov
4a8d2b73d3
Remove deprecated stuff unused after M13
2015-09-22 18:22:55 +03:00
Alexander Udalov
93b5065cf5
Get rid of SerializationUtil, move methods to DescriptorSerializer
2015-09-22 18:22:55 +03:00
Mikhail Glukhikh
9f640b00d9
"field": synthetic variable creation in accessors, codegen changed accordingly, a set of tests, relevant code fix (j2k)
2015-09-21 15:47:49 +03:00
Dmitry Petrov
7f4ae52517
Generate annotations for single-file classes.
2015-09-21 12:10:40 +03:00
Stanislav Erokhin
5786e620e8
Minor. remove import package usages from sources
2015-09-18 21:00:16 +03:00
Denis Zharkov
9c4564a5a6
Get rid of deprecated annotations and modifiers in project code
2015-09-18 09:34:27 +03:00
Alexander Udalov
4bc257bd73
Minor refactoring in LazyJavaPackageScope
2015-09-16 01:44:27 +03:00
Alexander Udalov
296212eab1
Merge two JetTypeMapper#mapToCallableMethod methods
2015-09-15 15:55:20 +03:00
Alexander Udalov
7c0780455a
Remove unused parameter of JetTypeMapper#mapOwner, simplify lots of code
2015-09-15 15:55:20 +03:00
Alexander Udalov
a946f787bc
Fix exception from data class codegen for light classes
...
EA-66827
2015-09-15 13:11:16 +03:00
Dmitry Petrov
47b8853051
Generate light classes for single-file facades using PackageCodegen.
2015-09-15 10:25:40 +03:00
Dmitry Petrov
ef6da03db2
Do not generate facade for single-file light classes
2015-09-14 21:26:33 +03:00
Pavel V. Talanov
d6a9551392
Do not generate parts of multifile facade when building light classes
...
Building facade class is enough for this purpose
2015-09-14 19:40:11 +03:00
Dmitry Petrov
50ff2a3ad2
Multifile facade should contain reflection data,
...
otherwise callable references to stdlib functions will not work in the migration scheme.
2015-09-14 17:47:49 +03:00
Dmitry Petrov
5d0243d46f
Fix incremental compilation tests
2015-09-14 17:47:49 +03:00
Valentin Kipyatkov
08e7a9d826
Made methods generated from declarations marked with @HiddenDeclaration synthetic in JVM
2015-09-14 17:42:40 +03:00
Mikhail Glukhikh
b4399b8b8b
AnnotationTarget.CLASSIFIER and KotlinTarget.CLASSIFIER both dropped (second step)
2015-09-14 12:51:11 +03:00
Dmitry Petrov
1586a2df8e
Make stdlib work with -Xmultifile-package-facades.
...
Fixed wrong owner mapping in presence of -Xmultifile-package-facades.
Fixed backing field mapping issue.
Added more tests.
2015-09-14 11:26:29 +03:00
Dmitry Petrov
838433ba8a
- call multifile class members (compiling against binaries)
...
- inline multifile class members
HACK? scope-based part/facade resolution
2015-09-14 11:25:42 +03:00
Dmitry Petrov
50f83da6da
- call multifile class members (compiling against binaries)
...
- inline multifile class members
2015-09-14 11:25:42 +03:00
Dmitry Petrov
5f9a59d655
- bytecodeTextMultifile - framework for bytecode text tests
...
with multiple Kotlin source files
- bytecodeTextMultifile/partMembersCall, initial import
2015-09-14 11:25:42 +03:00
Dmitry Petrov
2931e474e1
- InnerClasses & EnclosingMethod attributes for local classes
...
in multifile part members
- invocation of multifile part/facade members
(TODO: deserialized descriptor case)
- inlining of multifile part/facade members
(TODO: inline against binaries case)
2015-09-14 11:25:41 +03:00
Alexander Udalov
6cecc66d10
Improve ABI version from one number to "major.minor.patch"
2015-09-11 19:28:46 +03:00
Mikhail Glukhikh
3770e7f49f
Introduction of AnnotationTarget.CLASS as a replacement for CLASSIFIER (first step)
2015-09-11 17:59:40 +03:00
Natalia Ukhorskaya
137f8b242a
Wrong stepping for if followied by captured variable
...
#KT-9118 Fixed
2015-09-11 11:27:53 +03:00
Yan Zhulanow
fbc769b0e9
Clear cache on fragment onDestroy()
2015-09-11 04:30:08 +03:00
Alexander Udalov
4dbfce605e
Minor, improve exception message for non-deserialized types
2015-09-10 21:45:10 +03:00