93 Commits

Author SHA1 Message Date
Sebastian Sellmair 9f0aa7d30c [ObjCExport] Use K1 convention and do not mark KtErrorType as nullable
^KT-65167
2024-01-26 10:11:48 +00:00
Sebastian Sellmair 2bf7bbb6c1 [ObjCExport] Support mapping of ObjCObject types to id
^KT-65167
2024-01-26 10:11:48 +00:00
Sebastian Sellmair 3cd20bd7b0 [ObjCExport] Support generic type parameters for ObjC translation
^KT-65167
2024-01-26 10:11:48 +00:00
Sebastian Sellmair 3111678f8b [ObjCExport] Support nullable type arguments in translating known Collection types
^KT-65167
2024-01-26 10:11:48 +00:00
Sebastian Sellmair 858af02a24 [ObjCExport] Initial support for inline classes in type mapping
^KT-65167
2024-01-26 10:11:48 +00:00
Sebastian Sellmair 262bfb18cc [ObjCExport] Initial support for ObjCClassType type arguments
^KT-65167
2024-01-26 08:19:05 +01:00
Sebastian Sellmair a6a27466fc [ObjCExport] Fix emission of 'ValueTypeBridge' for 'non primitive' types
^KT-65167
2024-01-26 08:19:05 +01:00
Sebastian Sellmair 8fbf0f21c8 [ObjCExport] Implement ObjCExportHeaderGeneratorTesttest - topLevelFunctionWithNumberReturn
^KT-65167
2024-01-26 08:19:05 +01:00
Sebastian Sellmair 1912ffded6 [ObjCExport] Implement ObjCExportTypeTranslationTest
^KT-65167
2024-01-26 08:19:05 +01:00
Sebastian Sellmair 2708c74d9c [ObjCExport] Fix KT-64952 HasErrorTypesTest 2024-01-23 10:03:15 +00:00
eugene.levenetc 480b8ec516 [ObjCExport] Add object translation and error handling
- Also add forward declaration tests
- Add hidden types support
- Issues: KT-64857, KT-64952, KT-65080
2024-01-22 14:59:56 +00:00
eugene.levenetc fc56f2af1c [ObjCExport] Fix top level property
KT-64923


Merge-request: KT-MR-13873
Merged-by: Eugene Levenetc <Eugene.Levenetc@jetbrains.com>
2024-01-15 01:49:37 +00:00
Sebastian Sellmair a713d66b7b [ObjCExport] Analysis Api: Ensure KDocs being exported by providing ObjCExportStubOrigin
^KT-64888 Fixed


Co-authored-by: Sebastian Sellmair <Sebastian.sellmair@jetbrains.com>


Merge-request: KT-MR-13854
Merged-by: Eugene Levenetc <Eugene.Levenetc@jetbrains.com>
2024-01-14 01:13:58 +00:00
Sebastian Sellmair 9c3de4332f [ObjCExport] Run new ObjCExport tests as native tests on CI
^KT-64839 Fixed
2024-01-12 15:37:41 +00:00
Sebastian Sellmair 80d9933543 [ObjCExport] Analysis Api: Implement initial support for exporting 'MustBeDocumented' annotations
^KT-64869 Fixed
2024-01-12 09:41:46 +00:00
eugene.levenetc a778c6d9aa [ObjCExport] Add initial top level function export
KT-64874
2024-01-11 18:25:38 +00:00
eugene.levenetc 92affa1b24 [ObjCExport] Add initial objective-c function translation
KT-64226
2024-01-10 09:17:00 +00:00
Sebastian Sellmair 7dbd5cd57f [ObjCExport] Implement 'test - dispatchAndExtensionReceiverWithMustBeDocumentedAnnotation'
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 90632ad746 [ObjCExport] Implement isObjCObjectType util
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair e0383282b5 [ObjCExport] Implement isObjCBaseCallable util
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair b5bcfaa2e3 [ObjCExport] translateToObjCProtocol: Support building members
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 47273a3d58 [ObjCExport] Move MethodBridge to shared module (2/2)
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 8f7e409bd7 [ObjCExport] Move MethodBridge to shared module (1/2)
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair b78f185299 [ObjCExport] Remove unnecessary instances in favor of static methods
All state will later be stored inside the KtObjCExportSession

KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 2f759243ba [ObjCExport] Implement isVisibleInObjC util
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 66533141b8 [ObjCExport] Implement getSuperClassSymbolNotAny util
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 9909940b24 [ObjCExport] Implement rudimentary interface to ObjCProtocol translation
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair aa3fa9e8c5 [ObjCExport] Implement 'findKdocString' utility for Analysis Api
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 72f135396c [ObjCExport] Extract generation of ObjC base declarations into shared code
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair aab9a606ce [ObjCExport] Split ObjCExportHeaderGenerator and ObjCExportTranslator
KT-64226
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 74c39b149f [ObjCExport] ObjCExportLazy: Get 'comment' from 'realStub' 2024-01-08 15:25:19 +00:00
Sebastian Sellmair 1cb60a53d9 [ObjCExport] Cleanup misleading test name for 'functionWithMustBeDocumentedAnnotation' 2024-01-08 15:25:19 +00:00
Sebastian Sellmair 7944a3dc4b [ObjCExport] Document 'ObjCExportStubOrigin' factory special case 2024-01-08 15:25:19 +00:00
Sebastian Sellmair 7ef62d1779 [ObjCExport] KtResolvedObjCNameAnnotation: Return null if ObjCName annotation is absent 2024-01-08 15:25:19 +00:00
Sebastian Sellmair 98fda13523 [ObjCExport] Extract header generation to shared module
^KT-64227 Fixed
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 1440e66519 [ObjCExport] Fix 'MustBeDocumented' annotation missing on non value parameters 2024-01-08 15:25:19 +00:00
Sebastian Sellmair 885a7dcd8f [ObjCExport] Implement test - kdocWithBlockTags
FL-23390
2024-01-08 15:25:19 +00:00
Sebastian Sellmair e409c60780 [ObjCExport] Split ObjCExport into K1 and Analysis Api implementation
FL-23390
^KT-64168 Fixed
2024-01-08 15:25:19 +00:00
Sebastian Sellmair 3e57265fcb [ObjCExport] ObjCExportStub: Do not retain reference to descriptor
FL-23390
^KT-64076 Fixed
2024-01-08 15:25:19 +00:00
Sebastian Sellmair e97463afb3 [ObjCExport][Minor] Reformat Code after move into newly created modules
FL-23390
2024-01-08 15:25:19 +00:00
Marco Pennekamp 32fe29b8cc [Test] Add debug names to unnamed test disposables
- This helps to track down disposables which are never disposed, and
  reduces confusion when printing disposables in general (the names will
  now be meaningful, instead of endless lists of "newDisposable" and
  "TestDisposable").

^KT-64099
2023-12-19 11:12:23 +00:00
Sebastian Sellmair 0713866c1e [K/N] Modularise :kotlin-native:native.backend to extract objc header generation (2/2)
^KT-63905 Fixed
2023-12-04 18:52:08 +00:00
Sebastian Sellmair ae9f3d66c2 [K/N] Modularise :kotlin-native:native.backend to extract objc header generation (1/2)
^KT-63905
2023-12-04 18:52:08 +00:00