Files
kotlin-fork/Interop
Vladimir Ivanov c4ce945262 Use ForeignException wrapper to handle native exception [KT-35056] (#4307)
* Use ForeignException wrapper to handle native exception [KT-35056]

* Add test

* Use Any? instead of NativePtr for automagic memory management

* Use clauseNSException specific clause, similar to `catch (NSException* e)

* cleanup + test fix

* Terminate on anything else but NSException

* Use ForeignException message for NSException details

* Code generated for AppleFamily only + move stuff to kotlinx.cinterop package

* Cleanup

* Fix platform-dependent code generation

* Fix test allocException

* wip: ForeignExceptionMode option: cinterop part

* ForeignExceptionMode support in compiler

* rework test for foreignExceptionMode option

* More tests on foreignExceptionMode option

* PR feedback: resolveFakeOverride and more

* Test reworked and extended

Co-authored-by: Vladimir Ivanov <vladimir.d.ivanov@jetbrains.com>
2020-09-14 13:50:32 +03:00
..
2020-07-03 16:40:29 +02:00

Kotlin-native interop

Usage

Create file ../gradle.properties with contents:

llvmInstallPath=/path/to/llvm

Create a Gradle subproject somewhere under ../, using ../InteropExample as a template.

To generate the interop stubs and libraries and build all sources you can run the following command from ../:

./gradlew InteropExample:build

To run the example (if 'application' plugin is enabled):

./gradlew InteropExample:run