Yan Zhulanow
6e362f6734
Kapt: Remove kapt1 from Kotlin compiler
2018-05-24 01:01:51 +03:00
Jim S
cebee7b5e1
Add context to generateSynthetic* in SyntheticResolveExtension
2018-04-25 20:18:10 +03:00
Raluca Sauciuc
89d61ee12d
Support androidx packages
...
... in the IDE plugin and the Android extensions compiler.
Change-Id: Iffd58351b0592e12ffc937c06d871d26958fe161
2018-04-12 16:29:13 +03:00
Dmitry Savvinov
934c56a4da
Wire StorageManager into a ClassTypeConstructorImpl and ClassDescriptorImpl
2018-04-12 13:44:10 +03:00
Ilmir Usmanov
2cfe387bab
Move coroutines to kotlin.coroutines package: compiler
...
Generate continuation type as kotlin.coroutines.Continuaion. This code will
fail at runtime since there is no stdlib backing this change yet.
However, in order to generate compatible stdlib we need a compiler, which
generates continuation type as kotlin.coroutines.Continuation.
Thus, firstly we support the change in the compiler, make it bootstrap
compiler and only then change stdlib and tests accordingly.
#KT-23362
2018-04-10 22:51:46 +03:00
Mikhael Bogdanov
63afd37cdd
Remove unused parameters, compiler keys and obsolete code
2018-04-03 19:18:10 +02:00
Mikhail Zarechenskiy
c5c8d84719
Support boxing/unboxing for method return types
2018-02-09 04:56:36 +03:00
Mikhail Zarechenskiy
1cdad65b9b
Refactoring: propagate KotlinType through hierarchy of StackValue
...
Mainly, this is needed to introduce boxing over inline classes
2018-02-09 02:08:10 +03:00
Yan Zhulanow
510d5ece0f
Android Extensions: Support '.', '-' and ':' in View identifiers (KT-22700)
2018-02-08 19:36:37 +03:00
Yan Zhulanow
bf9eed931b
Parcelable: Fix 'Simple' test (new boolean serializer)
2018-02-06 22:15:59 +03:00
Yan Zhulanow
145ddf3b1f
Parcelable: Add CREATOR field (and other generated declarations) in light classes (KT-19300, KT-19853)
2018-02-06 22:15:59 +03:00
Alexander Udalov
8cd7686535
Introduce DeclarationCheckerContext, remove SimpleDeclarationChecker
2018-01-29 12:22:40 +01:00
Alexander Udalov
82574cb570
Do not store ClassDescriptor in EnumValue
...
Only store the ClassId of the enum class and the Name of the entry, and
resolve the needed descriptor in getType() instead, which now takes the
module instance where that descriptor should be resolved
2018-01-18 12:49:38 +01:00
Denis Zharkov
e24e711208
Avoid rebuilds after changes of layouts xml-files
...
This commit makes IC react more granularly on these changes
Precisely, it marks dirty only kt-files that having lookups into
synthetic package built upon a changed layout-file
#KT-21622 Fixed
2017-12-12 16:17:58 +03:00
Yan Zhulanow
2819fc718a
Parcelable: Migrate to canonical NEW-DUP-INVOKESPECIAL form (KT-20545)
2017-12-01 22:53:20 +09:00
Yan Zhulanow
ecfb045790
Android Extensions: Do not generate synthetic components in Kotlin Bytecode tool window when the Gradle plugin is disabled
2017-12-01 22:53:19 +09:00
Yan Zhulanow
3d7222485d
Android Extensions: Add missing documentation, move the hasCache property to the compiler module
2017-12-01 22:53:16 +09:00
Yan Zhulanow
1f65f8bc97
Encode all compiler plugin arguments for Android Extensions in kapt
...
Commas in option values breaks the option parsing in daemon (KT-20235).
2017-12-01 22:53:16 +09:00
Yan Zhulanow
425d104255
Parcelable: Convert I to Z explicitly, older Android Dex has strict checks for it (KT-20928)
2017-12-01 22:53:16 +09:00
Yan Zhulanow
e28cffd0ad
Parcelable: newArray() result type should be Object[] (KT-20717)
2017-12-01 22:53:15 +09:00
Yan Zhulanow
26005751d8
Parcelable: Fix compatibility with serialization plugin (KT-20742)
2017-12-01 22:53:15 +09:00
Alexander Udalov
f80c9a4692
Drop TypeMappingConfiguration.innerClassNameFactory, use default implementation
...
After 57d209f599 , non-default behavior is no longer used.
#KT-21453 Fixed
2017-11-28 14:15:03 +01:00
Yan Zhulanow
8c7f469030
Parcelable: Use @IgnoredOnParcel annotation instead of Transient cause it's inapplicable on properties (KT-20298)
2017-10-16 21:25:37 +03:00
Yan Zhulanow
27d3ed76a0
Android Extensions: Support non-latin identifiers (KT-20299)
2017-10-16 21:25:34 +03:00
Yan Zhulanow
a63aca08f2
Parcelable: Support custom Parcelers in compiler plugin
2017-10-16 21:25:27 +03:00
Yan Zhulanow
7dbefc1613
Remove generic bound for Parceler
2017-10-16 21:25:25 +03:00
Yan Zhulanow
5acc992956
Disable uninitialized object copying checks for Parcelable writeToParcel() to createFromParcel()
2017-10-13 16:35:42 +03:00
Stanislav Erokhin
e86d2f00ff
Rename isImpl to isActual in descriptors
2017-09-15 18:25:49 +03:00
Stanislav Erokhin
c8ee424f67
Rename isHeader to isExpect in descriptors
2017-09-15 18:25:41 +03:00
Yan Zhulanow
26af128694
Parcelable: produce error on "CREATOR" companion object
2017-09-14 19:36:48 +03:00
Alexander Udalov
b01a3eb747
Drop JvmFileClassesProvider and inline implementations
...
Both of its implementations called the same static function; inline
those and move related utilities to JvmFileClassUtil
2017-09-13 15:46:36 +03:00
Yan Zhulanow
d7ad973843
Kapt, minor: Remove duplicating 'visitInnerClass()' calls (rebase issue)
2017-09-12 22:17:18 +03:00
Yan Zhulanow
7b4e24a454
Android Extensions: Allow LayoutContainers in inner/local classes and objects
2017-09-12 22:07:18 +03:00
Yan Zhulanow
07be1e9d10
Android Extensions: Generate proper receiver for clearFindViewByIdCache() call (KT-19742)
2017-09-12 22:07:17 +03:00
Yan Zhulanow
3f4ddb006a
Android Extensions: Fix compilation when LayoutContainer is used as an interface (KT-19753)
2017-09-12 22:07:16 +03:00
Yan Zhulanow
eefb490a8a
Parcelable: Use efficient serialize strategy for Java/Kotlin Parcelables only from the current source roots (KT-20029)
2017-09-12 22:07:15 +03:00
Yan Zhulanow
1b688182cd
Parcelable: Use specialized write/create methods where available (KT-20057)
2017-09-12 22:07:14 +03:00
Yan Zhulanow
f6d7a17227
Parcelable: Remove 'ACC_STATIC' flag from Creator class, Dalvik dex checker hates it, and it's illegal anyway (KT-20034)
2017-09-12 22:07:13 +03:00
Yan Zhulanow
e0509e8c4d
Parcelable: Specify declaration origin for the synthetic descriptors
2017-09-12 22:07:13 +03:00
Yan Zhulanow
033386b47d
Parcelable: Do not check property types if the Parcelable class has a custom Parceler implementation (KT-20062)
2017-09-12 22:07:12 +03:00
Yan Zhulanow
89c5f78a8e
Parcelable: Use Parcel methods for reading-writing primitive types (KT-20020)
2017-09-12 22:07:11 +03:00
Yan Zhulanow
a03c03c427
Parcelable: Handle nullability in Parcelize Parcelable serializer (KT-20032)
2017-09-12 22:07:11 +03:00
Yan Zhulanow
88138fc420
Parcelable: Use java/lang/Enum methods to read/write enum values (KT-20022)
2017-09-12 22:07:10 +03:00
Yan Zhulanow
7b96c9a003
Parcelable: Give priority to Parcelable type over objects and enums (KT-20021)
2017-09-12 22:07:09 +03:00
Yan Zhulanow
be3273a933
Parcelable: Flags argument should be propagated to the nested Parcelable's writeToParcel() (KT-20019)
2017-09-12 22:07:08 +03:00
Yan Zhulanow
3587a2a08e
Parcelable: Use ClassLoader from the container class to load Parcelable (KT-20027)
...
When the parameter type is just "Parcelable", we would not pick the wrong (system) class loader anymore.
2017-09-12 22:07:08 +03:00
Yan Zhulanow
c9ec1a2511
Parcelable: Array serializer should correctly handle wide primitive types – long, double (KT-20002)
2017-09-12 22:07:07 +03:00
Yan Zhulanow
32fc340d62
Parcelable: Parcelize overrides describeContents despite being already implemented (KT-20026)
2017-09-12 22:07:06 +03:00
Yan Zhulanow
e645da64da
Parcelable: Use the Parcelable implementation class as a containing declaration for Creator (KT-19899)
2017-09-12 22:07:06 +03:00
Yan Zhulanow
f8ca714c45
Parcelable: Cast types deserialized with Parcel.readValue() (KT-19747)
2017-09-12 22:07:05 +03:00