Commit Graph

70 Commits

Author SHA1 Message Date
Greg c03e37bd54 Make a Go Interface instead of a struct for top level objects.
Use a new struct Id as a concrete version of that type.
2019-04-29 11:46:48 -04:00
Greg c0c17e88d1 Fix to go type declarations. 2019-04-29 10:37:43 -04:00
Greg 500b457d32 Fix type wrapping and procesing so duplicate types do not get
declared.
2019-04-27 22:24:05 -04:00
Greg 977a09e77e Better handling of multiple classes and input files. Handle
Objective C type parameter declarations. Check Typedefs when
determining if a Type is a pointer or a function.
2019-04-26 22:44:30 -04:00
Greg 6135381cc7 Allow #pragma directives to be provided in the config file. 2019-04-26 15:41:29 -04:00
Greg 009a974a1a Rename to nswrap, put configuration in a toml file, allow imports
and sysimports.
2019-04-26 15:34:36 -04:00
Greg ead1623d4b Eliminate unnecessary code from wrap/main.go. Include full attributes
in return types of C functions to reduce compiler warnings.
2019-04-26 15:08:44 -04:00
Greg 4f260dda0e Fix handling of id and void* types. Add helper functions to convert
char* to and from Go strings. Parse block (^) types. Skip methods
with functions as parameters. Fix passing pointers go C code.
2019-04-26 14:08:43 -04:00
Greg 98e19ca726 Fix handling of wrapped types. Use new type system for go
function declarations. Working wrapper for simple test case.
2019-04-26 10:56:00 -04:00
Greg e143dbb6a7 Fixed type wrapping, further conversion to new type system. The
Go side looks pretty good at this point.
2019-04-26 10:07:34 -04:00
Greg fb21881a8b Add type conversion functions to types package. Start moving the
wrapper to the new type system. Intermediate commit before I rip
out the old stuff, not working yet.
2019-04-26 09:04:53 -04:00
Greg 885658b67b Implement new type system. Working wrapper for simple Objective-C
interfaces.
2019-04-23 15:48:11 -04:00
Greg e7270e95cf Add type parsing infrastructure. 2019-04-18 09:38:46 -04:00
Greg 0b0b73c6bd Handle class methods. 2019-04-11 17:00:36 -04:00
Greg 3ecb3b1eeb Fix types in c and go parameter lists. 2019-04-11 13:09:02 -04:00
Greg 9e3c7c2ce8 Fix objective-c method calls. 2019-04-11 12:00:10 -04:00
Greg 74f4073d35 Improved type handling. 2019-04-11 11:46:24 -04:00
Greg 2fbd9134a0 Generate go and objc wrapper functions. Translate classes into wrapped
unsafe.Pointer() instances. Embed super-class to simulate inheritance
and hold pointers only at the base class.
2019-04-10 14:00:48 -04:00
Greg bcb4a0680d Identify methods from interfaces and categories, determine their
parameter and return types.
2019-04-09 23:19:49 -04:00
Greg 6a9c5c2811 Initial commit. 2019-04-09 11:52:21 -04:00