This is a Haxe extern
generator for Objective-C classes, structs, and functions. It is intended to bridge the gap between OS X and iOS native API and Haxe hxcpp
projects by providing easy access to the API in a type-safe manner. Currently it is implemented as a parser of the AST output produced by the clang
compiler.
- Interfaces (-> Haxe classes)
- Instance methods
- Static methods
- Properties (getters and setters are methods, so using the methods still works)
- Protocols (-> Haxe interfaces)
- Instance methods (implicitly also declared on implementing classes, even when not present)
- Records / structs (-> Haxe classes with
@:structAccess
)- Member fields
- Enums
- Global functions
- Better integration with
cpp.objc.*
types (currently onlyNSString
andNSDictionary
are used) - Type parameters
Externs provided in this repository:
externs/uikit10.2
-lib objc-uikit10.2
- package:
com.apple.*
- includes some
NS*
types from Foundation,CA
andCG
- from the
iPhoneOS10.2
SDK - full AST dump of
<UIKit/UIKit.h>
inclang-ast/uikit10.2.txt
This repository is intended to host the generator and several different extern libraries. To use an extern library:
cd "LOCATION"
git clone https://github.com/Aurel300/hx-objc-externs.git
haxelib dev objc-uikit10.2 "LOCATION/hx-objc-externs/externs/uikit10.2"
(Where LOCATION is a path of your choosing.)
Then, in your project, add the externs with -lib objc-uikit10.2
.