Michael Bogdanov
60d1736b97
Instance field generation in objects
2015-10-09 16:25:16 +03:00
Michael Bogdanov
53ced57c42
Annotations.EMPTY replaced with Annotations.Companion.getEMPTY() in java classes
2015-10-09 16:25:15 +03:00
Michael Bogdanov
12afbffb09
Copy to interface just companion object public const properties
2015-10-09 16:25:15 +03:00
Michael Bogdanov
a9aa2bc147
Interface companion object backing fields become static
2015-10-09 16:25:14 +03:00
Zalim Bashorov
e9b138557b
Report error when try to access to static field which come from many sources
2015-10-09 15:00:59 +03:00
Denis Zharkov
da00ddfc3e
Filter out UnsafeVariance annotation when it sticks after substitution
2015-10-09 14:40:34 +03:00
Denis Zharkov
80da320c2c
Customize JVM signature for Collection's members
...
- Do not write signature for `contains`
- Write signature for `containsAll` as it's declared like `containsAll(Collection<?>)`
2015-10-09 14:40:33 +03:00
Denis Zharkov
1f52dfccdb
Setup specific loading contains/containsAll from java
...
If they override Kotlin collection members
contains(Object) -> contains(E)
containsAll(Collection<?>) -> containsAll(Collection<E>)
2015-10-09 14:40:33 +03:00
Denis Zharkov
d27d3950fb
Refine signature for Collection.contains/containsAll
2015-10-09 14:40:33 +03:00
Denis Zharkov
521e958f6d
Serialize type annotations in builtins
2015-10-09 14:40:33 +03:00
Denis Zharkov
e800be18c6
Introduce UnsafeVariance annotation
2015-10-09 14:40:33 +03:00
Svetlana Isakova
f2efd30a5d
Added 'NoInfer' and 'Exact' annotations
2015-10-09 11:05:52 +03:00
Zalim Bashorov
ae2831338b
Load Java static members from parents
2015-10-08 19:33:29 +03:00
Yan Zhulanow
d90585624f
Add 'DeprecationLevel' parameter to 'Deprecated'
2015-10-08 18:31:08 +03:00
Yan Zhulanow
937d1913b8
Automatically put 'operator' modifier on appropriate Java methods
2015-10-08 18:31:07 +03:00
Yan Zhulanow
9eeb89a6aa
Rename sparam to setparam
2015-10-08 18:31:06 +03:00
Alexey Sedunov
730cc7b551
Code insight: "Generate..." actions for test framework support methods
...
#KT-9355 Fixed
2015-10-08 13:15:18 +03:00
Valentin Kipyatkov
f27d24e640
Parameter info to use resolve candidates instead of ReferenceVariantsHelper
...
#KT-6164 Fixed
#KT-8931 Fixed
2015-10-07 23:09:51 +03:00
Ilya Gorbunov
17fc1d9562
Do not sort twice
2015-10-07 22:36:50 +03:00
Ilya Gorbunov
90e5ee8a7e
Replace KotlinPackage legacy facade with corresponding package parts.
2015-10-07 22:36:29 +03:00
Ilya Gorbunov
ec416c5210
Replace identityEqulas with ===
2015-10-07 22:36:20 +03:00
Ilya Gorbunov
b50c106648
Replace reverse with reversed or asReversed.
2015-10-07 22:36:18 +03:00
Ilya Gorbunov
37a0347669
Replace sort with sorted.
2015-10-07 22:36:16 +03:00
Mikhail Glukhikh
0cc861f00b
Exposed visibility checking, a set of exposed visibility tests, some test fixes
...
Effective visibility mechanism introduced.
Local is considered as public, java protected as Kotlin protected, java package private as Kotlin private.
2015-10-07 20:15:16 +03:00
Michael Bogdanov
fa32aa2950
SYNTHETIC flag for internal members
2015-10-07 18:10:56 +03:00
Michael Bogdanov
264d7da450
PACKAGE_VISIBILITY normalization chaged to PROTECTED
2015-10-07 18:10:55 +03:00
Michael Bogdanov
882f6113dc
Initial internal member mangling
2015-10-07 18:10:54 +03:00
Yan Zhulanow
d28ecc2316
Mark builtins and stdlib functions with 'infix'
2015-10-07 15:49:29 +03:00
Svetlana Isakova
efb23be367
Open / data forbidden: ConstraintPosition fix
2015-10-07 14:41:42 +03:00
Mikhail Glukhikh
67755d7dca
Protected / final are deprecated in interfaces: scopes and call translator
2015-10-07 11:49:45 +03:00
Mikhail Glukhikh
5e6c9f1979
Internal is deprecated in interfaces: reflection fix
2015-10-07 10:17:38 +03:00
Denis Zharkov
6a1566a6dc
Make JVM backend work with Collection.size as val
...
0. Such properties are called special because their accessor JVM name differs from usual one
1. When making call to such property, always choose special name
2. When generating Kotlin class inheriting such property generate `final bridge int size() { return this.getSize(); }`
3. If there is no `size` declaration in current class generate `bridge int getSize() { // super-call }`
2015-10-07 08:46:35 +03:00
Denis Zharkov
e52e6cf869
Temporary make SmartSet less smart
...
SmartSet is compiled both with bootstrap and new compiler, so it can't
implement both old and new Set interfaces (with 'size' as function and as property).
This commit should be reverted after bootstraping
2015-10-07 08:46:33 +03:00
Denis Zharkov
547aa2cda6
Load special java methods as properites
...
Currently only those that override special builtin properties (e.g. `Collection.size`)
Their modality is defined by method's modality
2015-10-06 23:56:17 +03:00
Denis Zharkov
a02b64f0e3
Setup overridability rules for properties built on Java fields
...
- They overrides each other
- They do not overrides Kotlin propeties and vice versa
2015-10-06 23:56:17 +03:00
Denis Zharkov
dfe93406d9
Minor. Inline parameter
2015-10-06 23:56:17 +03:00
Denis Zharkov
27b231cd7d
Minor. Do not record method within resolveMethodToFunctionDescriptor
2015-10-06 23:56:17 +03:00
Denis Zharkov
9d087ce5bd
Convert size() functions in builtins to properties
...
Just like it will work itself out :)
2015-10-06 23:56:17 +03:00
Pavel V. Talanov
37d5c4b223
Allow to import members from object by name
...
Wrap object members so they do not require dispatch receiver
Hack jvm backend to make it work
2015-10-06 16:31:21 +03:00
Dmitry Petrov
9e546bda27
Support is/as/as? with Function[K]<...> types.
2015-10-06 10:06:27 +03:00
Valentin Kipyatkov
e41732e572
No callable references to synthetic extensions (and ones for get/set)
2015-10-03 10:40:50 +03:00
Alexander Udalov
cb6d16d224
Advance ABI version after changes to binary format
2015-10-03 00:59:52 +03:00
Alexander Udalov
bdd69d9e46
Use internal names in multifile class metadata
...
To reuse the strings already existing in the constant pool of the class file
2015-10-03 00:59:34 +03:00
Alexander Udalov
e1ccb92438
Write built-in extensions to new protobuf messages
2015-10-03 00:59:34 +03:00
Alexander Udalov
8c0a86617a
Write JVM signatures to new protobuf messages
2015-10-03 00:59:33 +03:00
Alexander Udalov
4f21caecc4
Simplify AnnotationAndConstantLoader, use NameResolver from ProtoContainer
2015-10-03 00:59:32 +03:00
Alexander Udalov
3a7a48a079
Minor, add nameResolver to ProtoContainer
2015-10-03 00:59:32 +03:00
Alexander Udalov
14ec34e37c
Refactor annotation and constant loader, simplify, drop some useless checks
2015-10-03 00:59:31 +03:00
Alexander Udalov
ad735cd788
Split ProtoBuf.Callable to three messages: constructor, function, property
...
Serialize both at the moment, will drop the old one after bootstrap
2015-10-03 00:59:30 +03:00
Alexander Udalov
041af28166
Deprecate and don't write KotlinClass$Kind, to be removed later
2015-10-03 00:59:30 +03:00