Andrey Breslav
ec33f90f89
Rename getQualifiedName() -> getFqName()
2013-02-19 18:52:12 +04:00
Mikhael Bogdanov
1b2da6b558
Write proper enclosingMethod/enclosingClass information to bytecode
2013-02-19 17:56:55 +04:00
Andrey Breslav
afd764c27f
Implementations of descriptors moved to a separate package
2013-02-19 14:32:06 +04:00
Alexey Sedunov
1f8d42ab49
Fix nullability check (in case of explicitly nullable types constructed from ype variables)
2013-02-13 18:23:37 +04:00
Evgeny Gerashchenko
4043491ad2
Got rid of code duplication.
2013-02-13 18:08:36 +04:00
Evgeny Gerashchenko
b66025811f
Merged after body and after leave variable tasks.
2013-02-13 18:08:35 +04:00
Evgeny Gerashchenko
64c89836fd
KT-933 Optimized iteration over progressions.
...
#KT-933 fixed
2013-02-13 18:08:35 +04:00
Evgeny Gerashchenko
14f3144533
Generating map instead of initializing manually.
2013-02-13 18:08:35 +04:00
Evgeny Gerashchenko
522530ec4a
Extracted util method.
2013-02-13 18:08:35 +04:00
Evgeny Gerashchenko
db6fb43d22
Removed unused enum.
2013-02-13 18:08:35 +04:00
Evgeny Gerashchenko
80b21524f4
Optimized iteration over primitive range expression.
2013-02-13 18:08:35 +04:00
Evgeny Gerashchenko
44e14c0a1c
Extracted super class.
2013-02-13 18:08:35 +04:00
Evgeny Gerashchenko
b5f820cf69
Prepared for extracting superclass.
2013-02-13 18:08:35 +04:00
Evgeny Gerashchenko
ab99856c16
Got rid of calculating element type twice.
2013-02-13 18:08:34 +04:00
Evgeny Gerashchenko
ca344d93cd
Got rid of super calls.
2013-02-13 18:08:34 +04:00
Evgeny Gerashchenko
cc2930b0b6
Got rid of stupid reassigning when iterating ranges.
2013-02-13 18:08:34 +04:00
Evgeny Gerashchenko
e1bc78da72
Simplified scheduling leaving temp variables: added create method.
2013-02-13 18:08:34 +04:00
Evgeny Gerashchenko
fd97bbcbd5
Simplified afterLoop(): no overriding.
2013-02-13 18:08:34 +04:00
Evgeny Gerashchenko
d6bc5a8782
Added util methods.
2013-02-13 18:08:34 +04:00
Evgeny Gerashchenko
da48a11374
Creating loop parameter var once.
2013-02-13 18:08:34 +04:00
Evgeny Gerashchenko
83fa1e95e6
Extracted field (instead of passing parameter.
2013-02-13 18:08:34 +04:00
Evgeny Gerashchenko
c753ac06b1
KT-2707 Optimize for loops for range literals
...
#KT-2707
2013-02-13 18:08:33 +04:00
Mikhael Bogdanov
c61c8d7fa0
Compilation Exception - remove duplicated this on stack
...
#KT-3114 Fixed
2013-02-11 15:19:49 +04:00
Alexander Udalov
83b93071d3
Fix over-optimized comparison with null
2013-02-11 02:01:39 +04:00
max-kammerer
843991083d
For namespaces with multiple files keep 'Compiled from' information empty
2013-02-07 18:00:53 +04:00
Natalia.Ukhorskaya
11273f3035
Implement package protected visibility
2013-02-06 21:54:19 +04:00
Alexander Udalov
64bc79aaac
Fix safe calls codegen for nullable generic
2013-02-06 17:54:30 +04:00
Alexander Udalov
433660b2ce
Fix codegen of !! for nullable generics
2013-02-06 17:54:29 +04:00
Alexander Udalov
75f09b7527
Fix codegen of as-casts for nullable generics
2013-02-06 17:54:28 +04:00
Alexander Udalov
70f67c7993
Fix elvis expression in case of nullable generic
2013-02-06 17:54:27 +04:00
Alexander Udalov
8697adb28a
Fix generic data class hashCode for null
...
Null may come from everywhere, so we always check for it (when the property's
type is not primitive)
2013-02-06 17:54:26 +04:00
Alexander Udalov
1021ec5ff4
Add Intrinsics.areEqual()
...
It's more safe, short and less error-prone (especially w.r.t. nullability of
generic types)
2013-02-06 17:54:26 +04:00
Alexander Udalov
1f4dd8cd33
Add CodegenUtil.isNullableType(), fix assertions
...
JetType.isNullable() is not accurate when the type denotes a type parameter:
a parameter can be not null (isNullable=false), but its upper bound can be
nullable (<T: Any?>), so null may appear in the value of such type. Therefore
it's preferred to use a special check (isNullableType()) in codegen from now on
Do not generate assertion for parameters of not-null types which have a
nullable upper bound + the same with Java method calls
Also fix Intrinsics class internal name in tests
#KT-3313 Fixed
2013-02-05 21:52:29 +04:00
Andrey Breslav
2ae3dad92f
Extract interface: PropertySetterDescriptor
2013-02-05 20:48:18 +04:00
Andrey Breslav
d8258ef9fb
Extract interface: PropertyGetterDescriptor
2013-02-05 20:47:56 +04:00
Alexander Udalov
8eb6047972
Fix assertions generation for substituted members
2013-02-05 16:26:56 +04:00
Andrey Breslav
4b96911b37
@NotNull for parameter of substitute()
2013-02-04 21:25:18 +04:00
Andrey Breslav
21eef960b5
Extract PropertyDescriptor interface
2013-02-04 21:22:54 +04:00
Alexander Udalov
4ca522bf0e
Fix codegen of do-while condition
...
The condition of a do-while loop can use variables declared in the loop
(variables can only be declared inside a block). Previously this behaviour
caused crash because after the block was generated, all variables declared
inside that block were gone from myFrameMap
#KT-3280 Fixed
2013-02-04 15:30:38 +04:00
Andrey Breslav
79e27f2d90
Write vararg flag on value parameters
2013-01-31 22:05:56 +04:00
Evgeny Gerashchenko
07a25a7757
Removed newline after copyrights in generated injectors.
2013-01-30 19:24:16 +04:00
Evgeny Gerashchenko
58f37f38f4
Renamed NumberSequence to Progression.
2013-01-29 22:55:10 +04:00
Evgeny Gerashchenko
000fc55035
Added intrinsic properties of ranges and sequences.
2013-01-29 22:55:06 +04:00
Evgeny Gerashchenko
c8a194c0a8
Dropped *Range.isReversed
2013-01-29 22:55:04 +04:00
Evgeny Gerashchenko
eb8107115d
Moved IntRange.count to Ranges class.
2013-01-29 22:55:03 +04:00
Alexander Udalov
9007a6214a
Fix closure's reference to outer closure
...
#KT-3276 Fixed
2013-01-29 22:41:58 +04:00
Evgeny Gerashchenko
52b7ee6447
Happy new year 2013!
2013-01-28 18:58:08 +04:00
Natalia.Ukhorskaya
e37cb461f6
Support visibility for protected static members
...
#KT-2999 Fixed
2013-01-24 18:43:37 +04:00
Andrey Breslav
f84d00eec9
Kotlin classes always have a signature
2013-01-23 20:12:48 +04:00
Andrey Breslav
56acd57e73
KT-3267 Put binary format version into the generated class files
...
#KT-3267 Fixed
2013-01-23 20:12:47 +04:00