xamarin / binding-tools-for-swift

MIT License
160 stars 21 forks source link

Xamarin Binding Tools For Swift

Welcome!

This module is the main repository for Binding Tools for Swift.

This is a set of tools that can consume a compiled Apple Swift library and generates wrappers that allow it to be surfaced as a .NET library.

Quickstart

Check out our quickstart guide to build and run the tool locally.

The packaging of BTFS is still evolving, and we expect to provide a binding project style interface to make this process easier in the future.

Caution ❗

In order to contribute to Binding-Tools-For-Swift, you will need Xcode 12 or Xcode 13!

Binding Tools for Swift is currently in the process of moving to Swift 5.5. At present, the code and tests appear to run correctly with either Swift 5.3 or Swift 5.5, however the new concurrency model (async/await/actor) is not yet supported. Continuous integration is being done with Xcode 12.

Current Status

What Binds?

What Doesn’t Bind Yet?

What Else Can I Expect?

Technical Documentation

The docs directory contains a detailed walkthrough of how things work under the hood.

In particular the functional outline is a great place to start exploring.

Feedback

Gitter

License

Copyright (c) .NET Foundation Contributors. All rights reserved. Licensed under the MIT License.