From Xcode 10.2 onwards, these annotations are required in all interface declarations. The behaviour can be disabled, but since we were already annotated most types it made sense to just annotate the rest. Change-Id: Iacd09a2fea4dfb3e22fec97cf4ca22966fc783bf GitHub-Last-Rev: a431572a83ea8b29f55813bcdafc9a00f8d15972 GitHub-Pull-Request: golang/mobile#29 Reviewed-on: https://go-review.googlesource.com/c/mobile/+/171957 Reviewed-by: Elias Naur <mail@eliasnaur.com>
234 lines
4.8 KiB
Plaintext
234 lines
4.8 KiB
Plaintext
// Objective-C API for talking to structs Go package.
|
|
// gobind -lang=objc structs
|
|
//
|
|
// File is generated by gobind. Do not edit.
|
|
|
|
#include <Foundation/Foundation.h>
|
|
#include "seq.h"
|
|
#include "_cgo_export.h"
|
|
#include "Structs.objc.h"
|
|
|
|
|
|
@implementation StructsS {
|
|
}
|
|
|
|
- (nonnull instancetype)initWithRef:(_Nonnull id)ref {
|
|
self = [super init];
|
|
if (self) { __ref = ref; }
|
|
return self;
|
|
}
|
|
|
|
- (nonnull instancetype)init {
|
|
self = [super init];
|
|
if (self) {
|
|
__ref = go_seq_from_refnum(new_structs_S());
|
|
}
|
|
return self;
|
|
}
|
|
|
|
- (double)x {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
double r0 = proxystructs_S_X_Get(refnum);
|
|
double _r0 = (double)r0;
|
|
return _r0;
|
|
}
|
|
|
|
- (void)setX:(double)v {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
double _v = (double)v;
|
|
proxystructs_S_X_Set(refnum, _v);
|
|
}
|
|
|
|
- (double)y {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
double r0 = proxystructs_S_Y_Get(refnum);
|
|
double _r0 = (double)r0;
|
|
return _r0;
|
|
}
|
|
|
|
- (void)setY:(double)v {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
double _v = (double)v;
|
|
proxystructs_S_Y_Set(refnum, _v);
|
|
}
|
|
|
|
- (StructsS* _Nullable)identity:(NSError* _Nullable* _Nullable)error {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
struct proxystructs_S_Identity_return res = proxystructs_S_Identity(refnum);
|
|
StructsS* _ret0_ = nil;
|
|
GoSeqRef* _ret0__ref = go_seq_from_refnum(res.r0);
|
|
if (_ret0__ref != NULL) {
|
|
_ret0_ = _ret0__ref.obj;
|
|
if (_ret0_ == nil) {
|
|
_ret0_ = [[StructsS alloc] initWithRef:_ret0__ref];
|
|
}
|
|
}
|
|
Universeerror* _error = nil;
|
|
GoSeqRef* _error_ref = go_seq_from_refnum(res.r1);
|
|
if (_error_ref != NULL) {
|
|
_error = _error_ref.obj;
|
|
if (_error == nil) {
|
|
_error = [[Universeerror alloc] initWithRef:_error_ref];
|
|
}
|
|
}
|
|
if (_error != nil && error != nil) {
|
|
*error = _error;
|
|
}
|
|
if (_error != nil) {
|
|
return nil;
|
|
}
|
|
return _ret0_;
|
|
}
|
|
|
|
- (double)sum {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
double r0 = proxystructs_S_Sum(refnum);
|
|
double _ret0_ = (double)r0;
|
|
return _ret0_;
|
|
}
|
|
|
|
@end
|
|
|
|
|
|
|
|
@implementation StructsS2 {
|
|
}
|
|
|
|
- (nonnull instancetype)initWithRef:(_Nonnull id)ref {
|
|
self = [super init];
|
|
if (self) { __ref = ref; }
|
|
return self;
|
|
}
|
|
|
|
- (nonnull instancetype)init {
|
|
self = [super init];
|
|
if (self) {
|
|
__ref = go_seq_from_refnum(new_structs_S2());
|
|
}
|
|
return self;
|
|
}
|
|
|
|
- (void)m {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
proxystructs_S2_M(refnum);
|
|
}
|
|
|
|
- (NSString* _Nonnull)string {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
nstring r0 = proxystructs_S2_String(refnum);
|
|
NSString *_ret0_ = go_seq_to_objc_string(r0);
|
|
return _ret0_;
|
|
}
|
|
|
|
@end
|
|
|
|
|
|
|
|
@implementation StructsStructs {
|
|
}
|
|
|
|
- (nonnull instancetype)initWithRef:(_Nonnull id)ref {
|
|
self = [super init];
|
|
if (self) { __ref = ref; }
|
|
return self;
|
|
}
|
|
|
|
- (nonnull instancetype)init {
|
|
self = [super init];
|
|
if (self) {
|
|
__ref = go_seq_from_refnum(new_structs_Structs());
|
|
}
|
|
return self;
|
|
}
|
|
|
|
- (void)m {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
proxystructs_Structs_M(refnum);
|
|
}
|
|
|
|
@end
|
|
|
|
|
|
@implementation StructsI {
|
|
}
|
|
|
|
- (nonnull instancetype)initWithRef:(id)ref {
|
|
self = [super init];
|
|
if (self) { __ref = ref; }
|
|
return self;
|
|
}
|
|
|
|
- (void)m {
|
|
int32_t refnum = go_seq_go_to_refnum(self._ref);
|
|
proxystructs_I_M(refnum);
|
|
}
|
|
|
|
@end
|
|
|
|
|
|
|
|
StructsS* _Nullable StructsIdentity(StructsS* _Nullable s) {
|
|
int32_t _s;
|
|
if ([s conformsToProtocol:@protocol(goSeqRefInterface)]) {
|
|
id<goSeqRefInterface> s_proxy = (id<goSeqRefInterface>)(s);
|
|
_s = go_seq_go_to_refnum(s_proxy._ref);
|
|
} else {
|
|
_s = go_seq_to_refnum(s);
|
|
}
|
|
int32_t r0 = proxystructs__Identity(_s);
|
|
StructsS* _ret0_ = nil;
|
|
GoSeqRef* _ret0__ref = go_seq_from_refnum(r0);
|
|
if (_ret0__ref != NULL) {
|
|
_ret0_ = _ret0__ref.obj;
|
|
if (_ret0_ == nil) {
|
|
_ret0_ = [[StructsS alloc] initWithRef:_ret0__ref];
|
|
}
|
|
}
|
|
return _ret0_;
|
|
}
|
|
|
|
StructsS* _Nullable StructsIdentityWithError(StructsS* _Nullable s, NSError* _Nullable* _Nullable error) {
|
|
int32_t _s;
|
|
if ([s conformsToProtocol:@protocol(goSeqRefInterface)]) {
|
|
id<goSeqRefInterface> s_proxy = (id<goSeqRefInterface>)(s);
|
|
_s = go_seq_go_to_refnum(s_proxy._ref);
|
|
} else {
|
|
_s = go_seq_to_refnum(s);
|
|
}
|
|
struct proxystructs__IdentityWithError_return res = proxystructs__IdentityWithError(_s);
|
|
StructsS* _ret0_ = nil;
|
|
GoSeqRef* _ret0__ref = go_seq_from_refnum(res.r0);
|
|
if (_ret0__ref != NULL) {
|
|
_ret0_ = _ret0__ref.obj;
|
|
if (_ret0_ == nil) {
|
|
_ret0_ = [[StructsS alloc] initWithRef:_ret0__ref];
|
|
}
|
|
}
|
|
Universeerror* _error = nil;
|
|
GoSeqRef* _error_ref = go_seq_from_refnum(res.r1);
|
|
if (_error_ref != NULL) {
|
|
_error = _error_ref.obj;
|
|
if (_error == nil) {
|
|
_error = [[Universeerror alloc] initWithRef:_error_ref];
|
|
}
|
|
}
|
|
if (_error != nil && error != nil) {
|
|
*error = _error;
|
|
}
|
|
if (_error != nil) {
|
|
return nil;
|
|
}
|
|
return _ret0_;
|
|
}
|
|
|
|
void cproxystructs_I_M(int32_t refnum) {
|
|
@autoreleasepool {
|
|
StructsI* o = go_seq_objc_from_refnum(refnum);
|
|
[o m];
|
|
}
|
|
}
|
|
|
|
__attribute__((constructor)) static void init() {
|
|
init_seq();
|
|
}
|