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
Yan Zhulanow
eee28d8507
Parcelable: Fix signature for Serializable Parcel serializer (KT-19749)
2017-09-12 22:07:04 +03:00
Yan Zhulanow
fe3413c291
Parcelable: Add INNERCLASS metadata to Creator factory class and its outer class
2017-09-06 17:40:19 +03:00
Yan Zhulanow
c330285fd0
Parcelable: Use innerClassNameFactory to figure out the internal name of the Creator class (KT-19680)
...
KAPT3 class builder mode in 1.1.4 replaces '$' (inner class name separators) with '/' by providing special innerClassNameFactory.
We should use it to be compatible with kapt.
2017-09-06 17:40:18 +03:00
Vyacheslav Gerasimov
cb3a8d87d0
Android Extensions: Correctly handle namespaces in layout xml
...
#KT-19451 Fixed Target versions 1.1.5
2017-08-23 13:18:34 +03:00
Pavel V. Talanov
6424b6760f
Remove StorageComponentContainerContributor::onContainerComposed
...
Rename addDeclarations -> registerModuleComponents
Use it to provide SamWithReceiverResolver extensions instead
Post construction on container composition can be achieved
but manually inserting injections where it seems appropriate
is bug prone
This fixes a bug where SamWithReceiverPlugin extension was not registered
for some containers in IDE which led to incorrect highlighting in IDE
Add IDE test for applying SamWithReceiver plugin
#KT-18062 Fixed
2017-08-18 19:11:25 +03:00
Yan Zhulanow
5ff014f89d
Parcelable, minor: Change error message
2017-08-02 03:35:12 +03:00
Yan Zhulanow
c1600c9841
Report errors from compiler plugins as compiler PLUGIN_ERRORs (KT-19311)
2017-08-02 03:35:10 +03:00
Yan Zhulanow
bf2bc1fdc7
Android Extensions: Support smart-casted receivers (KT-18545)
2017-08-02 03:21:13 +03:00
Yan Zhulanow
ea1068a822
Parcelable, minor: Rename MagicParcel to Parcelize
2017-07-26 20:19:32 +03:00
Yan Zhulanow
5a1a4bd8bd
Android Extensions: Add global cache flag in compiler plugin
2017-07-26 20:19:26 +03:00
Yan Zhulanow
84eff43b49
Parcelable: Support Android Extensions experimental flag
2017-07-26 20:19:25 +03:00
Yan Zhulanow
38449caaed
Parcelable: Fixes after review
2017-07-26 20:19:23 +03:00
Yan Zhulanow
d0e4b236a7
Parcelable: Support SortedSet, NavigableSet, SortedMap, NavigableMap
2017-07-26 20:19:22 +03:00