Commit Graph

50424 Commits

Author SHA1 Message Date
Nicolay Mitropolsky ebefcd476f 183: CliKotlinUastResolveProviderService.kt.183 compilation fix 2018-11-21 18:12:44 +03:00
Mikhail Glukhikh 914620fd1f FIR: introduce status & status transformer (no override resolve)
So #KT-24021 Fixed
2018-11-21 18:04:15 +03:00
Mikhail Glukhikh 65d89a61bf FIR: constructor refactoring, now there are callable members 2018-11-21 18:04:14 +03:00
Mikhail Glukhikh a07b9a70f7 FIR builder: do not generate implicit types for getters 2018-11-21 18:04:14 +03:00
Mikhail Glukhikh dadc028884 FIR: support delegated types in secondary constructors
So #KT-24088 Fixed
2018-11-21 18:04:14 +03:00
Mikhail Glukhikh c06b0efdfa FIR: add implicit primary constructors, add delegated types to them
So #KT-24088 In Progress
2018-11-21 18:04:14 +03:00
Simon Ogorodnik 1c6490a1be FIR: Fix resolution of type parameter in ext property receiver
Also cleanup FirTypeResolveTransformer
2018-11-21 18:04:14 +03:00
Simon Ogorodnik 6bca2d1045 FIR: Get rid of delegation in resolved imports
This prevents strange visitors behaviour
2018-11-21 18:04:14 +03:00
Simon Ogorodnik e010a96055 FIR: Fix super-type nested qualifier resolution 2018-11-21 18:04:13 +03:00
Mikhail Glukhikh 06cb24db7c FIR builder: do various stub-based optimizations #KT-24090 Fixed 2018-11-21 18:04:13 +03:00
Mikhail Glukhikh 73235885e7 FIR: get rid of FirUnitType in default setters 2018-11-21 18:04:13 +03:00
Mikhail Glukhikh c2686872ae FIR: use implicit Unit type in setters 2018-11-21 18:04:13 +03:00
Mikhail Glukhikh bcb27f212c FIR: support resolve of implicit Unit types 2018-11-21 18:04:13 +03:00
Mikhail Glukhikh 65f1a6c041 FIR: introduce FictitiousFunctionSymbol making it not FIR-based 2018-11-21 18:04:13 +03:00
Mikhail Glukhikh 5cdf938902 FIR: temporary implementation of kotlin.FunctionX resolve 2018-11-21 18:04:12 +03:00
Mikhail Glukhikh 82ae3f8f10 FIR resolve: add nested companion scope #KT-24095 Fixed 2018-11-21 18:04:12 +03:00
Mikhail Glukhikh 98abe08056 Add Java symbol resolve in default star importing scope
Related to KT-24098
2018-11-21 18:04:12 +03:00
Mikhail Glukhikh 5c572aa56e Add java.lang & kotlin.jvm to default star importing scope 2018-11-21 18:04:12 +03:00
Mikhail Glukhikh b58e372db3 FIR: include properties from primary constructors in tree 2018-11-21 18:04:12 +03:00
Mikhail Glukhikh e2cec9125d FIR: resolve annotations on value & type parameters 2018-11-21 18:04:12 +03:00
Mikhail Glukhikh 78d45f3f90 FIR: resolve constructor delegated calls (types are all error yet) 2018-11-21 18:04:11 +03:00
Mikhail Glukhikh ea86c3d2b3 FIR: resolve bounds of function type arguments 2018-11-21 18:04:11 +03:00
Simon Ogorodnik 6c3fe5dc98 FIR: refactor cone types (arguments, projections) 2018-11-21 18:04:11 +03:00
Simon Ogorodnik 02bedeca05 FIR: introduce Java type resolve and JavaSymbolProvider #KT-24098 Fixed 2018-11-21 18:04:11 +03:00
Mikhail Glukhikh 5c53bdb142 FIR: support inline classes + render class attributes nicer 2018-11-21 18:04:11 +03:00
Mikhail Glukhikh 124c11df08 FIR: support lateinit properties 2018-11-21 18:04:11 +03:00
Mikhail Glukhikh 7279d696d2 FIR: support annotation resolve & rendering 2018-11-21 18:04:10 +03:00
Mikhail Glukhikh c31513837b FIR: fix resolve of function type & its parameters in supertype position 2018-11-21 18:04:10 +03:00
Simon Ogorodnik 6cfe935c2a FIR: Switch to | in fir resolved type renderer
Otherwise it clashed with qualified names
2018-11-21 18:04:10 +03:00
Simon Ogorodnik 4fb321fa00 FIR: Support function type resolve #KT-24092 Fixed 2018-11-21 18:04:10 +03:00
Simon Ogorodnik 0ea1a5b30f FIR: Various random optimization 2018-11-21 18:04:10 +03:00
Simon Ogorodnik 140120abc2 FIR: Optimize iteration 2018-11-21 18:04:10 +03:00
Mikhail Glukhikh cce741eef8 FIR: partial function type resolve + some rendering fixes 2018-11-21 18:04:09 +03:00
Simon Ogorodnik 29ee4371d0 FIR: Optimize fqName creation in ImportResolveTransformer 2018-11-21 18:04:09 +03:00
Simon Ogorodnik 8a5a43d670 Add IDEA action to show raw FIR of currently opened file
This action works correctly with fir.enabled=true in Gradle properties
2018-11-21 18:04:09 +03:00
Toshiaki Kameyama e5f0f2489f Introduce backing property: fix false positive for const property #KT-28341 Fixed 2018-11-21 17:51:34 +03:00
Andrey Uskov 7080559cb4 Remove empty build.gradle.kts.191 2018-11-21 17:37:16 +03:00
Nicolay Mitropolsky 0ee98a8d1d 183: Uast: multiresolve (KT-27244) 2018-11-21 17:24:14 +03:00
Leonid Startsev 2e83ec1551 Restrict auto-implementing serializers methods to certain type of classes 2018-11-21 16:00:04 +03:00
Leonid Startsev 1535426a11 Don't add GeneratedSerializer as a supertype for user-defined serializers 2018-11-21 16:00:03 +03:00
Leonid Startsev a3e34af2f1 Increase priority of overridden serializer on type
Fixes Kotlin/kotlinx.serialization/252
2018-11-21 16:00:02 +03:00
Leonid Startsev 127ceaca34 Fix commented check when generating descriptor initializer:
It was needed before `save` because save references symbol of initializer,
yet we don't need to generate it if user provided its own getter
2018-11-21 16:00:01 +03:00
Leonid Startsev b76116a077 Do not add any .childSerializers() stuff if user explicitly marked custom serializer as KSerializer
todo: better design for user-provided descriptors and and schema hierarchy
2018-11-21 16:00:00 +03:00
Leonid Startsev 80c262ec66 Fix instantiation of generic serializers on JS
(Kotlin/kotlinx.serialization/244, which was fixed already by lookuping descriptor, but still had a bug)
2018-11-21 15:59:59 +03:00
Leonid Startsev a163e62f5f Rebased on master, adopt to new constant values from deserialized
annotations
Fix issue with generating redundant constructors for custom generic
seralizers
2018-11-21 15:59:58 +03:00
Leonid Startsev 2444a6680e .shouldEncodeElementDefault for JVM 2018-11-21 15:59:57 +03:00
Leonid Startsev 662e918a7b Support skipping values equals to defaults in output stream for JS and IR backends 2018-11-21 15:59:56 +03:00
Leonid Startsev dba6396e95 Support enums according to new design 2018-11-21 15:59:55 +03:00
Leonid Startsev f101e17dfa Support reference array and context serializers
Enum serializers are also instantiated, but won't work on native because of lack of KClass<E: Enum<E>>.enumValues()
2018-11-21 15:59:54 +03:00
Leonid Startsev ef42201b05 Fix order of overriding @Serializable(with) on property: check override, than @ContextualSerialization.
This will apply Context serializer event if class annotated @Serializable
2018-11-21 15:59:53 +03:00