4aa1211d73
Complete working GC mode.
2019-06-19 14:07:33 -04:00
c8209dd260
Interim commit.
2019-06-18 17:29:52 -04:00
e5c8e114bf
Add garbage collection memory mangement mode (gogc). Lots of fixes
...
related to pointer handling and memory management.
2019-06-18 09:15:46 -04:00
79bb282188
Complete conversion to pointer wrapped types. Update tests, fix
...
parameter handling for functions.
2019-06-13 16:47:36 -04:00
ac9eecafd8
Convert all Go wrapped objects to pointers so the Go GC can track
...
all of the Objective-C pointers. Still working on bug with typedefs
to wrapped types.
2019-06-13 09:25:53 -04:00
b0139b9aa8
Bug fixes and clean up how methods are added to an interface from
...
superclasses and protocols. Ensure that "Unavailable" attributes are
handled properly.
2019-06-11 16:41:21 -04:00
9a4fabda24
Run gofmt -w on everything. Add 'gogc' option to use Go garbage
...
collector for memory management.
2019-06-11 12:38:22 -04:00
d0654613ea
Documentation updates.
2019-06-06 00:30:21 -04:00
90166a4379
Bug fixes. Read availability attributes when adding interfaces and
...
categories. Memory leak fixes. Add "autorelease" confiruation directive.
Fix parameter types for subclass method overriding.
2019-06-06 00:22:07 -04:00
50b9387a91
Add frameworkdirs: directive to allow the user to point to directories
...
where Objective-C frameworks can be found. Rework the cgoFlags. Search
Objective-C protocols when looking for subclass methods to override.
2019-06-04 21:18:06 -04:00
f93a893060
Bug fix in Objective-C method signature parsing.
2019-06-04 13:01:51 -04:00
773886e0f1
Complete unit tests for nswrap/types.
2019-06-04 11:27:46 -04:00
a251e7382e
Improve test coverage.
2019-06-04 00:14:04 -04:00
d8552bcf9d
Use strict unmarshal for configuration file, to detect typos in
...
config directives. Do not panic on failed regexp in AST parsing,
instead return &ast.Unknown{} for further debugging. Add debutast:
directive to print context when AST nodes are not recognized.
2019-06-03 11:07:12 -04:00
4f0cdf4d1a
Some AST tweaks and add astfile: config option to read AST from a file
...
instead of running Clang. Attempt to port to MacOS Mojave.
2019-06-01 15:10:51 -04:00
a7df3a4e71
Enable -fobjc-arc for AST generation when arc=true in nswrap.yaml.
...
This still doesn't work
2019-05-31 16:28:51 -04:00
e29ae58a9c
Add experimental "arc" directive to nswrap.yaml to experiment
...
with enabling Objective-C automatic reference counting. Bindings
currently will not compile with this turned on.
2019-05-31 12:42:52 -04:00
5a5a4f9406
AST tweaks and new tests.
2019-05-31 10:21:04 -04:00
96edbba641
Documentation updates.
2019-05-29 22:57:10 -04:00
8ce3b6a6de
Remove dependencies, improve documentation.
2019-05-29 22:36:49 -04:00
370a2eb604
Package name tweaks.
2019-05-29 13:26:22 -04:00
9230222634
Merge branch 'master' of https://git.wow.st/gmp/nswrap
2019-05-29 13:15:31 -04:00
a94969338b
Move main command to the main package directory.
2019-05-29 13:14:26 -04:00
7bcd25bb05
Move main command to the main package directory.
2019-05-29 13:13:04 -04:00
a2d0f9bc4f
Change domain name in package path.
2019-05-29 12:57:53 -04:00
749fd503dd
Add README.md and LICENSE.
2019-05-29 00:03:51 -04:00
2f4d76c6af
Better handling of slice size vs. capacity in pointers to pointers.
2019-05-29 00:02:27 -04:00
840a055a11
Clean up variadic functions and methods.
2019-05-28 20:04:39 -04:00
1cc0f0e26a
Handle pointers to pointers as Go slices.
2019-05-28 15:52:16 -04:00
86b27e6c42
Simplify polymorphic implementation, bug fix to variadic functions.
2019-05-28 13:20:44 -04:00
154a2fac14
Disambiguate all class and instance method names.
2019-05-28 13:03:23 -04:00
d086c0fdfe
Intermediate commit to work on polymorphic method handling.
2019-05-27 13:47:59 -04:00
86ff14b533
A few small fixes.
2019-05-24 15:40:01 -04:00
34fbcec965
Subclasses can have new methods in addition to overriding existing
...
methods (first draft).
2019-05-24 12:36:01 -04:00
38c7856b89
Bug fix and start improvements to subclassing.
2019-05-24 00:12:46 -04:00
a616761475
Change Go types to plain structs instead of pointers to structs.
...
Add methods for protocols that Objective-C interfaces claim to
implement. Separate class methods from instance methods in
internal data structures. Add layout constraints with visual
formats to examples/app. Fix typedefs for wrapped objective-c
object types.
2019-05-23 16:31:47 -04:00
4f6930002d
First draft that handles subclasses and improvements to delegate
...
implementation.
2019-05-21 16:26:52 -04:00
8de87cddb7
Performance improvements (do not parse addresses or locations unless
...
location tracking is enabled). Allow profiling option. Add some
comments and clean-ups to types/*.go.
2019-05-11 23:03:56 -04:00
49fd749fe3
Use C.GoBytes() in examples/bluetooth.
2019-05-10 02:35:52 -04:00
2fe435f137
Bug fix: delete exports.go if it is not needed.
...
Clean up some warnings around deprecated methods and sending
the "initialize" message to NSObject.
2019-05-10 02:23:07 -04:00
dcb7105fca
Complete the Delegates wrapper. Disambiguate polymorphic methods.
...
Bluetooth example is now a functioning heart rate monitor. Additional
bug fixes in Go types (instances where *Id needs to be used instead
of NSObject).
2019-05-10 02:00:56 -04:00
0de9249e6a
Update .gitignore.
2019-05-09 22:35:21 -04:00
e7e2c2c7b6
Begin moving the bluetooth example to the new delegates system.
2019-05-09 22:33:06 -04:00
44b3b75e23
Complete implementation of delegates. Update app example with an
...
NSApplicationDelegate.
2019-05-09 22:05:04 -04:00
0d2321d516
Add autorelease helpers.
2019-05-09 13:33:28 -04:00
b00ecd4ac0
Switch from toml to yaml for configuration files. Begin scaffolding
...
for Protocols and Delegates.
2019-05-09 12:25:45 -04:00
cccbfbbc00
Autorelease all objective-C objects constructed using "alloc".
...
Clean up type-related comments in generated code. Do not use
pointers to Go interfaces as receivers, use pointer to Id instead.
2019-05-09 08:52:35 -04:00
ea34821fe6
Add a button to examples/app.
2019-05-07 15:49:43 -04:00
1c5c61308c
Add SelectorHelpers() so you can send named selectors to Objective-C.
2019-05-07 15:17:23 -04:00
8ed05fb451
Work around cgo (or Clang dwarf) bug with incorrect struct size
...
calculation by returning void pointers for NS object constructors.
Expand examples/app to start building menus.
2019-05-07 14:48:06 -04:00