From 8ec4f775943e3956ade243b0016abffb73df71a9 Mon Sep 17 00:00:00 2001 From: Liam Appelbe Date: Mon, 6 May 2024 02:01:40 -0700 Subject: [PATCH] Create directory structure for SwiftGen and Swift2ObjC (#1121) --- README.md | 1 + pkgs/swiftgen/CHANGELOG.md | 1 + pkgs/swiftgen/LICENSE | 27 ++++++++++++++++++++++++++ pkgs/swiftgen/README.md | 4 ++++ pkgs/swiftgen/pubspec.yaml | 28 +++++++++++++++++++++++++++ pkgs/swiftgen/swift2objc/CHANGELOG.md | 1 + pkgs/swiftgen/swift2objc/README.md | 4 ++++ 7 files changed, 66 insertions(+) create mode 100644 pkgs/swiftgen/CHANGELOG.md create mode 100644 pkgs/swiftgen/LICENSE create mode 100644 pkgs/swiftgen/README.md create mode 100644 pkgs/swiftgen/pubspec.yaml create mode 100644 pkgs/swiftgen/swift2objc/CHANGELOG.md create mode 100644 pkgs/swiftgen/swift2objc/README.md diff --git a/README.md b/README.md index d68ce3ad25..6bce8ac21e 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,7 @@ building and bundling. | [objective_c](pkgs/objective_c/) | A library to access Objective C from Flutter that acts as a support library for package:ffigen. | [![pub package](https://img.shields.io/pub/v/objective_c.svg)](https://pub.dev/packages/objective_c) | | [jni](pkgs/jni/) | A library to access JNI from Dart and Flutter that acts as a support library for `package:jnigen`. | [![pub package](https://img.shields.io/pub/v/jni.svg)](https://pub.dev/packages/jni) | | [jnigen](pkgs/jnigen/) | A Dart bindings generator for Java and Kotlin that uses JNI under the hood to interop with Java virtual machine. | [![pub package](https://img.shields.io/pub/v/jnigen.svg)](https://pub.dev/packages/jnigen) | +| [swiftgen](pkgs/swiftgen/) | A Dart bindings generator for Swift. | [![pub package](https://img.shields.io/pub/v/swiftgen.svg)](https://pub.dev/packages/swiftgen) | | [native_assets_builder](pkgs/native_assets_builder/) | This package is the backend that invokes build hooks. | [![pub package](https://img.shields.io/pub/v/native_assets_builder.svg)](https://pub.dev/packages/native_assets_builder) | | [native_assets_cli](pkgs/native_assets_cli/) | A library that contains the argument and file formats for implementing a native assets CLI. | [![pub package](https://img.shields.io/pub/v/native_assets_cli.svg)](https://pub.dev/packages/native_assets_cli) | | [native_toolchain_c](pkgs/native_toolchain_c/) | A library to invoke the native C compiler installed on the host machine. | [![pub package](https://img.shields.io/pub/v/native_toolchain_c.svg)](https://pub.dev/packages/native_toolchain_c) | diff --git a/pkgs/swiftgen/CHANGELOG.md b/pkgs/swiftgen/CHANGELOG.md new file mode 100644 index 0000000000..a7ee1de214 --- /dev/null +++ b/pkgs/swiftgen/CHANGELOG.md @@ -0,0 +1 @@ +## 0.0.1-wip diff --git a/pkgs/swiftgen/LICENSE b/pkgs/swiftgen/LICENSE new file mode 100644 index 0000000000..b03a788683 --- /dev/null +++ b/pkgs/swiftgen/LICENSE @@ -0,0 +1,27 @@ +Copyright 2024, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/pkgs/swiftgen/README.md b/pkgs/swiftgen/README.md new file mode 100644 index 0000000000..ce3c81ce44 --- /dev/null +++ b/pkgs/swiftgen/README.md @@ -0,0 +1,4 @@ +# Swiftgen + +An experimental tool for generating bindings that allow interop between Dart and +Swift code. diff --git a/pkgs/swiftgen/pubspec.yaml b/pkgs/swiftgen/pubspec.yaml new file mode 100644 index 0000000000..d7ba2d12e4 --- /dev/null +++ b/pkgs/swiftgen/pubspec.yaml @@ -0,0 +1,28 @@ +# Copyright (c) 2024, the Dart project authors. Please see the AUTHORS file +# for details. All rights reserved. Use of this source code is governed by a +# BSD-style license that can be found in the LICENSE file. + +name: swiftgen +description: "A tool for generating bindings that allow interop between Dart and Swift code." +version: 0.0.1-wip +repository: https://github.com/dart-lang/native/tree/main/pkgs/swiftgen + +topics: + - interop + - ffi + - swift + - codegen + +environment: + sdk: '>=3.3.0 <4.0.0' + +dependencies: + ffi: ^2.1.0 + +dev_dependencies: + ffigen: ^11.0.0 + test: ^1.21.1 + +dependency_overrides: + ffigen: + path: ../ffigen/ diff --git a/pkgs/swiftgen/swift2objc/CHANGELOG.md b/pkgs/swiftgen/swift2objc/CHANGELOG.md new file mode 100644 index 0000000000..a7ee1de214 --- /dev/null +++ b/pkgs/swiftgen/swift2objc/CHANGELOG.md @@ -0,0 +1 @@ +## 0.0.1-wip diff --git a/pkgs/swiftgen/swift2objc/README.md b/pkgs/swiftgen/swift2objc/README.md new file mode 100644 index 0000000000..fac3c97ff5 --- /dev/null +++ b/pkgs/swiftgen/swift2objc/README.md @@ -0,0 +1,4 @@ +# Swift2ObjC + +An experimental tool for generating bindings that allow interop between ObjC and +Swift code.