Ilya Gorbunov
3f4430087e
Do not call deprecated public getProgressionFinalElement, call internal getProgressionLastElement instead.
...
ProgressionIterators do not compute final element by themselves, but use one computed by Progression.
Update testdata for LoadBuiltinsTest
2015-11-13 21:38:22 +03:00
Ilya Gorbunov
5d4e72ed7f
Correct deprecation replacement for Progression constructors.
...
Update testdata for LoadBuiltinsTest
2015-11-13 18:59:38 +03:00
Denis Zharkov
e920ce709b
Render captured type parameters in verbose mode
2015-11-13 14:59:04 +03:00
Denis Zharkov
6ae653e5a1
Implement stub building for inner types
2015-11-13 14:59:04 +03:00
Denis Zharkov
7500447e72
Implement serialization of inner types
2015-11-13 14:59:03 +03:00
Denis Zharkov
eea898abb5
Introduce PossiblyInnerType class
...
Use it when rendering inner types, similar logic will be used in different subsystems
2015-11-13 14:58:58 +03:00
Denis Zharkov
188bcf0a03
Introduce TypeConstructorSubstitution.create
...
After latest changes type constructors of inner classes contains
additional type parameters that are copies of ones from outer class.
Their indices are correct, but they used only for subtyping check,
all entries within inner classes are still refers to original
descriptors having different indices.
Example:
class Outer<E> {
inner class Inner<F> { // Inner's type constructor looks like Inner<F, E>
fun foo(): E // refers to E in outer having index 0
}
}
Indexed substitution does not work here because of intersecting indices,
so we replace it with common map substituion in such cases.
2015-11-13 14:47:29 +03:00
Denis Zharkov
c57dbcc602
Fix substition of inner classes constructors
...
It should have substituted class as containing declaration
2015-11-13 14:47:28 +03:00
Denis Zharkov
c5103f9ac4
Fix JavaClassifierType.getTypeArguments impls
...
Make them return arguments both for current classifier and for the outer one
2015-11-13 14:47:28 +03:00
Denis Zharkov
deea0643ad
Refine type arguments resolution and rendering
...
In case of type constructors captured parameters from outer classes
#KT-5510 Fixed
#KT-3112 Fixed
#KT-6325 Fixed
#KT-408 Fixed
#KT-6337 Fixed
2015-11-13 14:47:28 +03:00
Denis Zharkov
990bd7e71d
Correct parameters of inner's class type constructor
...
Now it contains copies of outer's class constructor parameters
They are appended just after real type parameters
2015-11-13 14:47:28 +03:00
Denis Zharkov
d614adcd2a
Obtain type parameters of constructor from containing class
...
Effectively this commit is just inlining of 'typeParameters' parameter
2015-11-13 14:47:28 +03:00
Denis Zharkov
c9aa75259b
Introduce ClassDescriptor.declaredTypeParameters
...
Should be a subset of type constructor's parameters
2015-11-13 14:47:28 +03:00
Ilya Gorbunov
75f5cec190
Minor: remove inapplicable operator modifiers.
2015-11-11 16:41:40 +03:00
Mikhail Glukhikh
04f7805d52
Minor comment to CastClassReceiver
2015-11-11 13:30:19 +03:00
Ilya Gorbunov
6bac3e1986
Drop Ranges, Progressions, ProgressionIterators for Double and Float.
...
Undeprecate generic Comparable.rangeTo, but return private implementation instead.
Undeprecate contains and coerceIn for generic ranges.
2015-11-11 03:53:47 +03:00
Ilya Gorbunov
5ebb3d20e8
Change internal implementation of progression: use first, last instead of start, end
...
Keep the end value as it was passed to progression constructor.
Deprecate primary progression constructor and introduce factory method in companion object.
2015-11-11 03:53:40 +03:00
Ilya Gorbunov
2887338f01
Rename InclusiveRange to ClosedRange
2015-11-11 03:53:38 +03:00
Ilya Gorbunov
8a6821d53a
Throw correct exception for zero increment.
...
Deprecate public functions in progression utils.
2015-11-11 03:53:35 +03:00
Ilya Gorbunov
ffa8faab80
Make progression iterators internal.
2015-11-11 03:53:32 +03:00
Ilya Gorbunov
854d376988
Eliminate byte and short ranges and progressions from range construction functions' return type.
2015-11-11 03:53:29 +03:00
Ilya Gorbunov
9eb5ba910c
Do not reimplement Iterable until Progression is dropped.
2015-11-11 03:53:28 +03:00
Ilya Gorbunov
6ac0ac01b3
Deprecate Byte and Short ranges and progressions.
...
Inherit TRange from TProgression.
Remove InclusiveRangeProgression and leave generic Progression deprecated.
2015-11-11 03:53:26 +03:00
Ilya Gorbunov
e699ce9e95
Introduce InclusiveRange and InclusiveRangeProgression and deprecate Range and Progression interfaces.
2015-11-11 03:53:25 +03:00
Ilya Gorbunov
16d56355c3
Special crafting of ClassId when implClassName is nested DefaultImpls
2015-11-11 03:53:20 +03:00
Nikolay Krasko
774b3269d6
Remove paragraph char - it ruins builds sometimes
2015-11-10 20:46:17 +03:00
Mikhail Glukhikh
0d35033106
Introduction of CastedClassReceiver and its handling in codegen #KT-6744 Fixed
...
ClassReceiver converted to Kotlin
Also #KT-7617 Fixed
2015-11-10 20:20:51 +03:00
Alexander Udalov
77138ecdb7
Add intrinsic functions to check availability of classes at runtime
...
Will be used whenever we add a new class to the runtime and use it in the
generated code: we'll now generate a call to one of these functions in <clinit>
of each class file which references the newly added class
2015-11-09 22:24:42 +03:00
Alexander Udalov
596a74d288
Code cleanup in reflection.jvm, generator scripts
2015-11-09 22:24:41 +03:00
Alexander Udalov
1576160390
Improve implementation of callable reference superclasses
...
Previously to use reflection on them, you had to wrap an already created object
with a "Reflection.function" or "Reflection.propertyN" call, which the JVM
back-end was doing. This was not optimal in several senses and current solution
fixes that
2015-11-09 22:24:40 +03:00
Alexander Udalov
7d32524754
Do not fail with type cast when not needed in reflection.jvm
2015-11-09 22:24:40 +03:00
Alexander Udalov
1c889c4e67
Support equals, hashCode, toString for ::-references without reflection
2015-11-09 22:24:39 +03:00
Alexander Udalov
baa28de865
Add factory methods to create class references with internal names
...
Will be used in future versions to support references to mapped mutable
collections
2015-11-09 22:24:39 +03:00
Dmitry Jemerov
e64a270d1a
more renames to get rid of "Jet" in class and method names
2015-11-09 19:07:11 +01:00
Ilya Gorbunov
f3ff2e2e76
Replace deprecated join with joinToString
2015-11-06 01:12:00 +03:00
Stanislav Erokhin
55157df3eb
Removed MemberScope.ownerDescriptor
2015-11-06 00:01:35 +03:00
Stanislav Erokhin
22f78b148c
Removed usages of MemberScope.ownerDescriptor property.
2015-11-06 00:01:34 +03:00
Stanislav Erokhin
b8e828e040
Minor. Changed signature of SamConversionResolver.resolveSamConstructor
2015-11-06 00:01:33 +03:00
Stanislav Erokhin
c73d091c52
Minor. Fix compilation(KT-9898 Impossible implement kotlin interface in java)
2015-11-06 00:01:31 +03:00
Stanislav Erokhin
b3e69a5f5d
Created common supertype for HierarchicalScope and MemberScope-- ResolutionScope
2015-11-06 00:01:30 +03:00
Stanislav Erokhin
c4582d0e0c
Replace function MemberScope.getContainingDeclaration() to property ownerDescriptor
2015-11-06 00:01:30 +03:00
Valentin Kipyatkov
58fc0b6ec8
Fixed special item after "super." not working for fake override super
2015-11-05 17:47:55 +03:00
Stanislav Erokhin
2c3f58eeb7
Renamed methods in MemberScope from getSmth to getContributedSmth
2015-11-05 14:34:00 +03:00
Stanislav Erokhin
6f9d9759ce
Renamed KtScope to MemberScope
2015-11-05 14:34:00 +03:00
Alexander Udalov
748c0e7149
Don't assert that annotation class has constructor in AnnotationDeserializer
...
#KT-9758 Fixed
2015-11-05 13:42:31 +03:00
Zalim Bashorov
1eb9bf2592
Minor: remove accidentally forgotten Deprecated annotation
2015-11-04 22:15:37 +03:00
Zalim Bashorov
1e51e333ab
Minor: add comments to LazyJavaStaticClassScope, LazyJavaPackageScope and StaticScopeForKotlinClass
2015-11-04 22:11:34 +03:00
Zalim Bashorov
a6855116b8
Track lookups for nested/inner Java classes
2015-11-04 22:09:55 +03:00
Stanislav Erokhin
a90ca14033
Removed KtScope.Empty and created util function emptyScope
2015-11-04 14:28:28 +03:00
Stanislav Erokhin
f7629b0c84
Removed getAllDescriptors() and getOwnDeclaredDescriptors() from KtScope
2015-11-04 14:28:25 +03:00