Skip to content

Commit

Permalink
Document unsupported features. (JetBrains#3035)
Browse files Browse the repository at this point in the history
  • Loading branch information
olonho authored May 30, 2019
1 parent ba02e62 commit ac9f260
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions OBJC_INTEROP.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,9 @@ The table below shows how Kotlin concepts are mapped to Swift/Objective-C and vi
| `Map` | `Dictionary` | `NSDictionary` | |
| `MutableMap` | `NSMutableDictionary` | `NSMutableDictionary` | [note](#collections) |
| Function type | Function type | Block pointer type | [note](#function-types) |
| Suspend functions| Unsupported| Unsupported| [note](#unsupported) |
| Inline classes | Unsupported| Unsupported| [note](#unsupported) |


### Name translation

Expand Down Expand Up @@ -360,3 +363,12 @@ this library would disable these compiler checks.

See [INTEROP.md](INTEROP.md) for an example case where the library uses some plain C features
(e.g. unsafe pointers, structs etc.).

## Unsupported

Some features of Kotlin programming language are not yet mapped into respective features of Objective-C or Swift.
Currently, following features are not properly exposed in generated framework headers:
* suspend functions
* inline classes (arguments are mapped as either underlying primitive type or `id`)
* custom classes implementing standard Kotlin collection interfaces (`List`, `Map`, `Set`) and other special classes
* Kotlin subclasses of Objective-C classes

0 comments on commit ac9f260

Please sign in to comment.