Commit Graph

98459 Commits

Author SHA1 Message Date
Dmitrii Gridin 3e1c1e8b14 [SLC] SymbolLightClassForClassLike: avoid redundant memory allocation
^KT-56046
2023-02-03 19:48:54 +00:00
Dmitrii Gridin b2436ba176 [SLC] SymbolLightClassForClassLike: drop redundant properties
^KT-56046
2023-02-03 19:48:54 +00:00
Dmitrii Gridin e081fe92db [SLC] split DefaultAdditionalAnnotationsProvider into MethodAdditionalAnnotationsProvider and AbstractClassAdditionalAnnotationsProvider
^KT-56046
2023-02-03 19:48:54 +00:00
Dmitrii Gridin cb531635b1 [SLC] introduce EmptyAdditionalAnnotationsProvider
^KT-56046
2023-02-03 19:48:53 +00:00
Dmitrii Gridin 5f6c1afa1f [SLC] migrate some SimpleAnnotationsBox to LazyAnnotationsBox
^KT-56046
2023-02-03 19:48:53 +00:00
Dmitrii Gridin 2c7fb49a80 [AA FIR] annotationClassIds should return fully-expanded classIds
^KT-56046
2023-02-03 19:48:53 +00:00
Dmitrii Gridin 11a0771a3d [SLC] add missing interface modifiers
^KT-56046
2023-02-03 19:48:52 +00:00
Dmitrii Gridin 6a65708631 [SLC] LazyAnnotationsBox: fix case with empty AnnotationsProvider
^KT-56046
2023-02-03 19:48:52 +00:00
Dmitrii Gridin e4795a9082 [SLC] DefaultAnnotationsProvider: add missing kotlin qualifiers check
^KT-56046
2023-02-03 19:48:52 +00:00
Dmitrii Gridin e7eaf08cd7 [SLC] introduce EmptyAnnotationsProvider
^KT-56046
2023-02-03 19:48:51 +00:00
Dmitrii Gridin df12851335 [SLC] introduce CompositeAdditionalAnnotationsProvider
^KT-56046
2023-02-03 19:48:51 +00:00
Dmitrii Gridin 071269b3c6 [SLC] introduce CompositeAnnotationsProvider
^KT-56046
2023-02-03 19:48:51 +00:00
Dmitrii Gridin 6d0570739d [SLC] migrate SymbolLightModifierList to ModifiersBox and AnnotationsBox
LazyAnnotationsBox is unused now
Will be migrated to it in the next steps

^KT-56046
2023-02-03 19:48:50 +00:00
Dmitrii Gridin cdb7d8116f [SLC] introduce EmptyModifiersBox
^KT-56046
2023-02-03 19:48:50 +00:00
Dmitrii Gridin 8c2cb4f621 [SLC] introduce EmptyAnnotationsBox
^KT-56046
2023-02-03 19:48:50 +00:00
Dmitrii Gridin ad4f6b25ca [SLC] AnnotationsBox: add an owner to signatures
we shouldn't require the owner on initialization phase

^KT-56046
2023-02-03 19:48:49 +00:00
Dmitrii Gridin eaf6798684 [SLC] introduce SimpleModifiersBox
^KT-56046
2023-02-03 19:48:49 +00:00
Dmitrii Gridin c401cd3210 [SLC] introduce SimpleAnnotationsBox
^KT-56046
2023-02-03 19:48:49 +00:00
Dmitrii Gridin 465ac23650 [SLC] implement NullabilityAnnotationsProvider
^KT-56046
2023-02-03 19:48:48 +00:00
Dmitrii Gridin d76e902b21 [SLC] extract AnnotationsProvider
^KT-56046
2023-02-03 19:48:48 +00:00
Dmitrii Gridin 4dbce37c0f [SLC] implement DefaultAnnotationsProvider
^KT-56046
2023-02-03 19:48:48 +00:00
Dmitrii Gridin 5f5abd1557 [SLC] LazyAnnotationsBox: rewrite from SymbolLightAbstractAnnotationWithClassId to PsiAnnotation
and update AdditionalAnnotationsProvider interface

^KT-56046
2023-02-03 19:48:47 +00:00
Dmitrii Gridin a2ef4d28c4 [SLC] SymbolLightAbstractAnnotation: implement some common methods
^KT-56046
2023-02-03 19:48:47 +00:00
Dmitrii Gridin 4b955944ff [AA] KtAnnotationApplication: add 'index' parameter
it is required for lazy annotations resolve

^KT-56046
2023-02-03 19:48:47 +00:00
Dmitrii Gridin 13fd281562 [SLC] LazyAnnotationsBox: move to annotations package
^KT-56046
2023-02-03 19:48:46 +00:00
Dmitrii Gridin 972dbcc822 [SLC] LazyAnnotationsBox: add extension point for additional annotations
^KT-56046
2023-02-03 19:48:46 +00:00
Dmitrii Gridin f992b77621 [SLC] SymbolLightLazyAnnotationParameterList: fix wrong cast
^KT-56046
2023-02-03 19:48:46 +00:00
Dmitrii Gridin a8f3cdcb80 [SLC] rename SymbolLazyAnnotationParameterList to SymbolLightLazyAnnotationParameterList
^KT-56046
2023-02-03 19:48:45 +00:00
Dmitrii Gridin 871bfab6da [SLC] replace SymbolAnnotationParameterList with SymbolLazyAnnotationParameterList
^KT-56046
2023-02-03 19:48:45 +00:00
Dmitrii Gridin 73707941bb [SLC] implement lazy annotations
^KT-56046
2023-02-03 19:48:45 +00:00
Dmitrii Gridin f2a33bf4b0 [SLC] extract LazyModifiersBox to separate file
^KT-56046
2023-02-03 19:48:44 +00:00
Dmitrii Gridin 16caeafa98 [FIR] temporarily remove Retention and Target annotations from COMPILER_REQUIRED_ANNOTATIONS phase
currently AbstractFirSpecificAnnotationResolveTransformer doesn't
work well for annotations with arguments

^KT-56046
2023-02-03 19:48:44 +00:00
Dmitrii Gridin 886c5b7412 [AA FIR] avoid 'is resolved' check for annotation calls without arguments
^KT-56046
2023-02-03 19:48:44 +00:00
Dmitrii Gridin 77609c2223 [AA FIR] avoid redundant resolve by annotations in IDE mode
^KT-56046
2023-02-03 19:48:43 +00:00
Dmitrii Gridin b4e7fde319 [FIR] FirBasedSymbol: avoid redundant resolve in IDE mode
^KT-56046
2023-02-03 19:48:43 +00:00
Dmitrii Gridin 00633e3abc [FIR] Move annotations required by IDE to COMPILER_REQUIRED_ANNOTATIONS phase
this annotations should be already resolved before TYPES phase
to avoid deadlocks

^KT-56046
2023-02-03 19:48:43 +00:00
Dmitrii Gridin af569afb3e [AA] KtAnnotationUseSiteTargetRenderer: simplify condition
^KT-56046
2023-02-03 19:48:42 +00:00
Dmitrii Gridin 1e04811c15 [SLC] symbolAnnotationsUtils: simplify code
^KT-56046
2023-02-03 19:48:42 +00:00
Dmitrii Gridin 9fe4c3fb10 [SLC] SymbolLightAbstractAnnotation: drop outdated code
^KT-56046
2023-02-03 19:48:41 +00:00
Artem Daugel-Dauge 143a233a9e [Gradle] Use unique artifact name for podspec task + avoid redundant task registration
^KT-51518 Verification Pending
2023-02-03 19:41:59 +00:00
Svyatoslav Scherbina 1828f7a374 Native: fix curl sample test 2023-02-03 15:30:56 +00:00
Anna Kozlova 71a1585240 [LL] add assertion that module of ktFile and FirBuilder are equivalent
to catch KTIJ-24530, when file was located in production scope of the module
but fir was created both for the test source and production
2023-02-03 14:53:32 +00:00
Ilya Kirillov 3772d60ca6 [Analysis API] optimize RAM consumption for some KtFirSymbol's
Remove psi caching for local declarations as it's fast to get the psi for those.

Local declarations cannot be from the library, so we do not need to search for deserialized psi for those.

^KTIJ-22749
2023-02-03 14:29:54 +00:00
Ilya Kirillov 3d3ab5d379 [Analysis API] optimize RAM consumption in KtFirSymbol
- remove extra field which can be retrieved via KtFirAnalysisSession

^KTIJ-22749
2023-02-03 14:29:54 +00:00
Ilya Kirillov a9b4f77196 [Analysis API] optimize RAM consumption in KtLifetimeOwner's
- remove `token` field

^KTIJ-22749
2023-02-03 14:29:53 +00:00
Ilya Kirillov e0c23dae47 [Analysis API] optimize RAM consumption in KtTypes
- remove cache allocation for cases when the value is fast to compute

^KTIJ-22749
2023-02-03 14:29:53 +00:00
Ilya Kirillov 2e5d284472 [Analysis API] optimize RAM consumption in ValidityAwareCachedValue
- make it inline class
- remove non-required `token` field

^KTIJ-22749
2023-02-03 14:29:52 +00:00
Denis.Zharkov 6d7096b5e9 IR: Fix StackOverflowError caused by using DNN type in lambda
^KT-54140 Fixed
2023-02-03 14:08:57 +00:00
Mikhail Zarechenskiy c586d7a03a Use more specific error for secondary constructor bodies in inline classes
- Also, this error allows IDE to provide quick-fix that changes language
 version in a project that simplifies the adoption
 - There is no point in
 changing K2 part as there this feature will be enabled by default

 ^KT-56224 Fixed
2023-02-03 13:38:31 +00:00
Zalim Bashorov f3e022e4ca [Wasm] Print an instruction if CompileError was thrown while instantiating a module
#KT-56160 Fixed
2023-02-03 14:06:32 +01:00