Results 92 issues of Liam Appelbe

This is a prototype of swiftgen, and an example program that uses the Swift `AVAudioPlayer` API to play some audio from Dart. [`example/generate_code.dart`](https://github.com/dart-lang/native/pull/1367/files#diff-f4c14bb7f06a6e1209e852c437da42f6f335379188a8658759949b823da8adfc) uses swiftgen to generate Dart bindings like...

package:swiftgen
package:swift2objc

If a class or struct defines an initializer, we need to generate a corresponding intializer on the wrapper object. If it doesn't define an initializer, we need to define a...

package:swift2objc

Like ffigen, swift2objc should have config options that let the user choose which APIs they want to generate wrappers for. Real Apple APIs have so many classes and methods that...

package:swift2objc

Tracking bug for swiftgen MVP Depends on [swift2objc MVP](https://github.com/dart-lang/native/issues/1143)

package:swiftgen

```Swift func greet(name: String) -> String { let greeting = "Hello, \(name)!" return greeting } ``` The wrapper function will need to convert all the arguments and results to their...

package:swift2objc

This is the same pattern I'm planning to use in ffigen: #1259

package:swift2objc

Currently filters are applied during parsing. When parsing part of the AST, we check if the node passes the config's filters. Transitive deps are handled using the `ignoreFilters` flag, because...

package:ffigen
lang-objective_c

`NSNotificationCenter` has a [`addObserver:selector:name:object:` method](https://developer.apple.com/documentation/foundation/nsnotificationcenter/1415360-addobserver), where the `object` param has type `id` (the super type of all objects, like Dart's `Object`), which makes sense. Meanwhile, `NSDistributedNotificationCenter` [overrides that method](https://developer.apple.com/documentation/foundation/nsdistributednotificationcenter/1414151-addobserver) but...

package:ffigen
lang-objective_c

As ffigen has developed we've gradually added more and more complexity to the `addDependencies` and `toBindingString` methods of the bindings classes. We should add a transformation step to the pipeline,...

package:ffigen